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

Sprout from master 2005-02-08 03:40:17 UTC darins '*** empty log message ***'
Cherrypick from master 2005-02-05 04:11:18 UTC Dorian Birsan <dbirsan> 'bug 83742 (improve feature search presentation)':
    update/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/UpdateUIPluginResources.properties
    update/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/wizards/ModeSelectionPage.java
Delete:
    platform/org.eclipse.platform/.classpath
    platform/org.eclipse.platform/.cvsignore
    platform/org.eclipse.platform/.project
    platform/org.eclipse.platform/SplashFinal_500x330.psd
    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/cheatsheets/CVS_1.xml
    platform/org.eclipse.platform/css/graphics/contentpage/background.jpg
    platform/org.eclipse.platform/css/graphics/contentpage/backgroundcurve.gif
    platform/org.eclipse.platform/css/graphics/contentpage/content_background.jpg
    platform/org.eclipse.platform/css/graphics/contentpage/overview_wtr.jpg
    platform/org.eclipse.platform/css/graphics/contentpage/samples_wtr.jpg
    platform/org.eclipse.platform/css/graphics/contentpage/section1.gif
    platform/org.eclipse.platform/css/graphics/contentpage/section2.gif
    platform/org.eclipse.platform/css/graphics/contentpage/section3.gif
    platform/org.eclipse.platform/css/graphics/contentpage/section4.gif
    platform/org.eclipse.platform/css/graphics/contentpage/tutorials_wtr.jpg
    platform/org.eclipse.platform/css/graphics/contentpage/whatsnew_wtr.jpg
    platform/org.eclipse.platform/css/graphics/contentpage/wordmark.gif
    platform/org.eclipse.platform/css/graphics/icons/ctool/overview48.gif
    platform/org.eclipse.platform/css/graphics/icons/ctool/overview48sel.gif
    platform/org.eclipse.platform/css/graphics/icons/ctool/overview72.gif
    platform/org.eclipse.platform/css/graphics/icons/ctool/samples48.gif
    platform/org.eclipse.platform/css/graphics/icons/ctool/samples48sel.gif
    platform/org.eclipse.platform/css/graphics/icons/ctool/samples72.gif
    platform/org.eclipse.platform/css/graphics/icons/ctool/tutorials48.gif
    platform/org.eclipse.platform/css/graphics/icons/ctool/tutorials48sel.gif
    platform/org.eclipse.platform/css/graphics/icons/ctool/tutorials72.gif
    platform/org.eclipse.platform/css/graphics/icons/ctool/wb48.gif
    platform/org.eclipse.platform/css/graphics/icons/ctool/whatsnew48.gif
    platform/org.eclipse.platform/css/graphics/icons/ctool/whatsnew48sel.gif
    platform/org.eclipse.platform/css/graphics/icons/ctool/whatsnew72.gif
    platform/org.eclipse.platform/css/graphics/icons/dtool/back.gif
    platform/org.eclipse.platform/css/graphics/icons/dtool/forward.gif
    platform/org.eclipse.platform/css/graphics/icons/dtool/overview.gif
    platform/org.eclipse.platform/css/graphics/icons/dtool/restore_welcome.gif
    platform/org.eclipse.platform/css/graphics/icons/dtool/samples.gif
    platform/org.eclipse.platform/css/graphics/icons/dtool/tutorials.gif
    platform/org.eclipse.platform/css/graphics/icons/dtool/whatsnew.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/back.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/forward.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/overview.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/overview48.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/overview48sel.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/overview72.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/restore_welcome.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/samples.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/samples48.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/samples48sel.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/samples72.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/tutorials.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/tutorials48.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/tutorials48sel.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/tutorials72.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/wb48.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/whatsnew.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/whatsnew48.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/whatsnew48sel.gif
    platform/org.eclipse.platform/css/graphics/icons/etool/whatsnew72.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/community_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/communityhov_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/features_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/featureshov_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/javaapp_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/javaapphov_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/javaapplet_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/javaapplethov_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/javadev_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/javadevhov_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/migrate_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/migratehov_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/new_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/newhov_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/plugin_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/pluginhov_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/rcpapp_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/rcpapphov_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/samplepurp_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/samplepurphov_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/samplered_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/sampleredhov_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/script_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/scripthov_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/swtapp_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/swtapphov_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/teamsup_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/teamsuphov_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/updates_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/updateshov_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/wbbasics_obj.gif
    platform/org.eclipse.platform/css/graphics/icons/obj48/wbbasicshov_obj.gif
    platform/org.eclipse.platform/css/graphics/rootpage/background.jpg
    platform/org.eclipse.platform/css/graphics/rootpage/brandmark.gif
    platform/org.eclipse.platform/css/graphics/rootpage/dots.gif
    platform/org.eclipse.platform/css/graphics/swt/form_banner.gif
    platform/org.eclipse.platform/css/overview/overview.css
    platform/org.eclipse.platform/css/overview/swt.properties
    platform/org.eclipse.platform/css/root.css
    platform/org.eclipse.platform/css/root_swt.properties
    platform/org.eclipse.platform/css/samples/samples.css
    platform/org.eclipse.platform/css/samples/swt.properties
    platform/org.eclipse.platform/css/shared.css
    platform/org.eclipse.platform/css/standby_root.css
    platform/org.eclipse.platform/css/standby_swt.properties
    platform/org.eclipse.platform/css/tutorials/swt.properties
    platform/org.eclipse.platform/css/tutorials/tutorials.css
    platform/org.eclipse.platform/css/whatsnew/swt.properties
    platform/org.eclipse.platform/css/whatsnew/whatsnew.css
    platform/org.eclipse.platform/eclipse.gif
    platform/org.eclipse.platform/eclipse32.gif
    platform/org.eclipse.platform/eclipse_lg.gif
    platform/org.eclipse.platform/intro.gif
    platform/org.eclipse.platform/introContent.xml
    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-intro/org/eclipse/platform/internal/CheatSheetStandbyContent.java
    platform/org.eclipse.platform/src/META-INF/MANIFEST.MF
    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
    platform/org.eclipse.sdk/.project
    platform/org.eclipse.sdk/about.html
    platform/org.eclipse.sdk/about.ini
    platform/org.eclipse.sdk/about.mappings
    platform/org.eclipse.sdk/about.properties
    platform/org.eclipse.sdk/build.properties
    platform/org.eclipse.sdk/eclipse32.gif
    platform/org.eclipse.sdk/plugin.properties
    platform/org.eclipse.sdk/plugin.xml
    update/org.eclipse.update.configurator/.classpath
    update/org.eclipse.update.configurator/.cvsignore
    update/org.eclipse.update.configurator/.options
    update/org.eclipse.update.configurator/.project
    update/org.eclipse.update.configurator/about.html
    update/org.eclipse.update.configurator/build.properties
    update/org.eclipse.update.configurator/plugin.properties
    update/org.eclipse.update.configurator/plugin.xml
    update/org.eclipse.update.configurator/src/org/eclipse/update/configurator/ConfiguratorUtils.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/configurator/IPlatformConfiguration.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/configurator/IPlatformConfigurationFactory.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/configurator/package.html
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/BootDescriptor.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/BundleManifest.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Configuration.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/ConfigurationActivator.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/ConfigurationParser.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/FeatureEntry.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/FeatureParser.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/FullFeatureParser.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/IConfigurationConstants.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Locker.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Locker_JavaIo.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Locker_JavaNio.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Messages.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/PlatformConfiguration.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/PlatformConfigurationFactory.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/PluginEntry.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/PluginParser.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/ProductProvider.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/SiteEntry.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/SitePolicy.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/UpdateURLDecoder.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Utils.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/VersionedIdentifier.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/XMLPrintHandler.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/branding/AboutInfo.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/branding/IBundleGroupConstants.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/branding/IProductConstants.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/branding/IniFileReader.java
    update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/messages.properties
    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/x86/libupdate.so
    update/org.eclipse.update.core.linux/src/build.xml
    update/org.eclipse.update.core.linux/src/update.c
    update/org.eclipse.update.core.linux/src/update.h
    update/org.eclipse.update.core.win32/.project
    update/org.eclipse.update.core.win32/about.html
    update/org.eclipse.update.core.win32/build.properties
    update/org.eclipse.update.core.win32/fragment.xml
    update/org.eclipse.update.core.win32/os/win32/x86/update.dll
    update/org.eclipse.update.core.win32/src/build.xml
    update/org.eclipse.update.core.win32/src/update.cpp
    update/org.eclipse.update.core.win32/src/update.h
    update/org.eclipse.update.examples/.classpath
    update/org.eclipse.update.examples/.cvsignore
    update/org.eclipse.update.examples/.project
    update/org.eclipse.update.examples/Scrapbook2.jpage
    update/org.eclipse.update.examples/about.html
    update/org.eclipse.update.examples/build.properties
    update/org.eclipse.update.examples/plugin.properties
    update/org.eclipse.update.examples/plugin.xml
    update/org.eclipse.update.examples/site/features/com.reddot.reddot_1.0.0.jar
    update/org.eclipse.update.examples/site/features/com.reddot.reddot_2.0.0.jar
    update/org.eclipse.update.examples/site/info/images/redDot.jpg
    update/org.eclipse.update.examples/site/info/siteInfo.html
    update/org.eclipse.update.examples/site/plugins/com.reddot.reddot_1.0.0.jar
    update/org.eclipse.update.examples/site/plugins/com.reddot.reddot_2.0.0.jar
    update/org.eclipse.update.examples/site/site.xml
    update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipConverter.java
    update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipFeatureContentProvider.java
    update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipFeatureFactory.java
    update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipFeatureParser.java
    update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipPluginParser.java
    update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipSiteContentProvider.java
    update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipSiteFactory.java
    update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/DefaultModelWriter.java
    update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/Test.java
    update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/java.page.jpage
    update/org.eclipse.update.examples/src/org/eclipse/update/examples/freeform/FreeFormSiteContentProvider.java
    update/org.eclipse.update.examples/src/org/eclipse/update/examples/freeform/FreeFormSiteFactory.java
    update/org.eclipse.update.scheduler/.classpath
    update/org.eclipse.update.scheduler/.cvsignore
    update/org.eclipse.update.scheduler/.project
    update/org.eclipse.update.scheduler/about.html
    update/org.eclipse.update.scheduler/build.properties
    update/org.eclipse.update.scheduler/plugin.properties
    update/org.eclipse.update.scheduler/plugin.xml
    update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/AutomaticUpdatesJob.java
    update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/SchedulerStartup.java
    update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/UpdateScheduler.java
    update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/UpdateSchedulerResources.properties
    update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/preferences/AutomaticUpdatesPreferencePage.java
    update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/preferences/PreferenceInitializer.java
    update/org.eclipse.update.tests.core/.classpath
    update/org.eclipse.update.tests.core/.cvsignore
    update/org.eclipse.update.tests.core/.project
    update/org.eclipse.update.tests.core/about.html
    update/org.eclipse.update.tests.core/build.properties
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/features/feature3/feature.xml
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/Pde_core.jar
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/help.jar
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/junit_3.7.jar
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/org.eclipse.update.plugin1_1.1.1/src.jar
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/features/feature3/feature.xml
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/features/helpFeature.jar
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/features/org.eclipse.pde.feature_1.0.0.jar
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/info/img/top_titlsm.gif
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/info/img/wel_ml.jpg
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/info/siteInfo.html
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/Pde_core.jar
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/help.jar
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/junit_3.7.jar
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/org.eclipse.update.plugin1_1.1.1/src.jar
    update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/site.xml
    update/org.eclipse.update.tests.core/data/FTPLikeSite/site.xml
    update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site1/features/feature3/feature.xml
    update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site1/site.xml
    update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site2/features/feature3/features2.jarfile
    update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site2/site.xml
    update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site3/features/feature3/features2.jarfile
    update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site3/site.xml
    update/org.eclipse.update.tests.core/data/Site with space/features space/helpFeature.jar
    update/org.eclipse.update.tests.core/data/Site with space/features space/space feature.jar
    update/org.eclipse.update.tests.core/data/Site with space/info/img/top_titlsm.gif
    update/org.eclipse.update.tests.core/data/Site with space/info/img/wel_ml.jpg
    update/org.eclipse.update.tests.core/data/Site with space/info/siteInfo.html
    update/org.eclipse.update.tests.core/data/Site with space/install/features space/feature3/feature.xml
    update/org.eclipse.update.tests.core/data/Site with space/plugins space/Pde_core.jar
    update/org.eclipse.update.tests.core/data/Site with space/plugins space/help.jar
    update/org.eclipse.update.tests.core/data/Site with space/plugins space/junit_3.7.jar
    update/org.eclipse.update.tests.core/data/Site with space/plugins space/org.eclipse.update.plugin1_1.1.1/plugin.xml
    update/org.eclipse.update.tests.core/data/Site with space/plugins space/org.eclipse.update.plugin1_1.1.1/src.jar
    update/org.eclipse.update.tests.core/data/Site with space/site.xml
    update/org.eclipse.update.tests.core/data/SiteTypeExamples/site1/features/feature3/features2.jarfile
    update/org.eclipse.update.tests.core/data/SiteTypeExamples/site1/site.xml
    update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/features/helpFeature.jar
    update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/features/org.eclipse.pde.feature_1.0.0.jar
    update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/plugins/Pde_core.jar
    update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/plugins/help.jar
    update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/plugins/junit_3.7.jar
    update/org.eclipse.update.tests.core/data/SiteURLTest/data/info/img/top_titlsm.gif
    update/org.eclipse.update.tests.core/data/SiteURLTest/data/info/img/wel_ml.jpg
    update/org.eclipse.update.tests.core/data/SiteURLTest/data/info/siteInfo.html
    update/org.eclipse.update.tests.core/data/SiteURLTest/data/site.xml
    update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site1/file1.zip
    update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site1/install/features/feature3/feature.xml
    update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site1/site.xml
    update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site2/features/features3.jar
    update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site2/non data/another file.zip
    update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site2/site.xml
    update/org.eclipse.update.tests.core/data/features/features2.jar
    update/org.eclipse.update.tests.core/data/features/org.eclipse.test.feature_1.0.0.jar
    update/org.eclipse.update.tests.core/data/features/org.eclipse.update.core.tests.feature1_1.0.4.jar
    update/org.eclipse.update.tests.core/data/features/org.eclipse_test_feature.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site1/.project
    update/org.eclipse.update.tests.core/data/mirrors/update-site1/.sitebuild/build.log
    update/org.eclipse.update.tests.core/data/mirrors/update-site1/.sitebuild/sitebuild.xml
    update/org.eclipse.update.tests.core/data/mirrors/update-site1/features/update.feature1_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site1/features/update.feature2_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site1/features/update.feature3_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site1/plugins/com.plugin1_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site1/plugins/com.plugin2_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site1/plugins/com.plugin3_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site1/plugins/com.plugin4_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site1/site.xml
    update/org.eclipse.update.tests.core/data/mirrors/update-site2/.project
    update/org.eclipse.update.tests.core/data/mirrors/update-site2/.sitebuild/build.log
    update/org.eclipse.update.tests.core/data/mirrors/update-site2/.sitebuild/sitebuild.xml
    update/org.eclipse.update.tests.core/data/mirrors/update-site2/features/update.feature1_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site2/features/update.feature2_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site2/plugins/com.plugin1_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site2/plugins/com.plugin2_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site2/site.xml
    update/org.eclipse.update.tests.core/data/mirrors/update-site3/.project
    update/org.eclipse.update.tests.core/data/mirrors/update-site3/.sitebuild/build.log
    update/org.eclipse.update.tests.core/data/mirrors/update-site3/.sitebuild/sitebuild.xml
    update/org.eclipse.update.tests.core/data/mirrors/update-site3/features/update.feature1b_2.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site3/features/update.feature2b_2.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site3/plugins/com.plugin1_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site3/plugins/com.plugin1a_1.0.1.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site3/plugins/com.plugin2_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site3/plugins/com.plugin2a_1.0.1.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site3/site.xml
    update/org.eclipse.update.tests.core/data/mirrors/update-site4/.project
    update/org.eclipse.update.tests.core/data/mirrors/update-site4/.sitebuild/build.log
    update/org.eclipse.update.tests.core/data/mirrors/update-site4/.sitebuild/sitebuild.xml
    update/org.eclipse.update.tests.core/data/mirrors/update-site4/features/update.feature1_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site4/features/update.feature1_1.0.1.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site4/features/update.feature1b_2.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site4/features/update.feature1c_3.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site4/plugins/com.plugin1_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site4/plugins/com.plugin1a_1.0.1.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site4/site.xml
    update/org.eclipse.update.tests.core/data/mirrors/update-site5/.project
    update/org.eclipse.update.tests.core/data/mirrors/update-site5/.sitebuild/build.log
    update/org.eclipse.update.tests.core/data/mirrors/update-site5/.sitebuild/sitebuild.xml
    update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature1_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature1_1.0.1.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature1b_2.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature1c_3.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature2_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature2b_2.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature2c_3.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site5/plugins/com.plugin1_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site5/plugins/com.plugin1a_1.0.1.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site5/plugins/com.plugin2_1.0.0.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site5/plugins/com.plugin2a_1.0.1.jar
    update/org.eclipse.update.tests.core/data/mirrors/update-site5/site.xml
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/features/org.eclipse.update.core.tests.childrenfeature_2.0.0.jar
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/features/rootfeature.jar
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.1.jar
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/site.xml
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/features/childrenfeature.jar
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/features/rootfeature.jar
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.1.jar
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/site.xml
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/features/childrenfeature.jar
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/features/rootfeature.jar
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.1.jar
    update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/site.xml
    update/org.eclipse.update.tests.core/data/parsertests/feature1.xml
    update/org.eclipse.update.tests.core/data/parsertests/feature1bis.xml
    update/org.eclipse.update.tests.core/data/parsertests/feature2.xml
    update/org.eclipse.update.tests.core/data/parsertests/feature3.xml
    update/org.eclipse.update.tests.core/data/parsertests/feature4.xml
    update/org.eclipse.update.tests.core/data/parsertests/reddot.xml
    update/org.eclipse.update.tests.core/data/parsertests/reddot1.xml
    update/org.eclipse.update.tests.core/data/parsertests/site.properties
    update/org.eclipse.update.tests.core/data/parsertests/site.xml
    update/org.eclipse.update.tests.core/data/parsertests/site10.xml
    update/org.eclipse.update.tests.core/data/parsertests/site2.xml
    update/org.eclipse.update.tests.core/data/parsertests/site3.xml
    update/org.eclipse.update.tests.core/data/parsertests/site4.xml
    update/org.eclipse.update.tests.core/data/parsertests/site7.xml
    update/org.eclipse.update.tests.core/data/parsertests/site8.xml
    update/org.eclipse.update.tests.core/data/parsertests/site9.xml
    update/org.eclipse.update.tests.core/data/parsertests/siteftp.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/.classpath
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/.project
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/FeatureWithInstallHandler_1.0.0.jar
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/bin/HandlerWithUI$1.class
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/bin/HandlerWithUI.class
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/build.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/handler.jar
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/src/HandlerWithUI.java
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/META-INF/MANIFEST.MF
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/cpl-v10.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/eclipse_update_120.jpg
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/feature.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/license.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/META-INF/MANIFEST.MF
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/cpl-v10.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/eclipse_update_120.jpg
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/feature.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/license.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/META-INF/MANIFEST.MF
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/cpl-v10.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/eclipse_update_120.jpg
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/feature.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/license.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/META-INF/MANIFEST.MF
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/cpl-v10.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/eclipse_update_120.jpg
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/feature.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/license.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/META-INF/MANIFEST.MF
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/cpl-v10.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/eclipse_update_120.jpg
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/feature.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/license.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/META-INF/MANIFEST.MF
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/cpl-v10.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/eclipse_update_120.jpg
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/feature.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/license.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/META-INF/MANIFEST.MF
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/cpl-v10.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/eclipse_update_120.jpg
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/feature.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/license.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/.project
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/cpl-v10.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/eclipse_update_120.jpg
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/feature.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/license.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/.project
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/cpl-v10.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/eclipse_update_120.jpg
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/feature.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/license.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/.project
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/cpl-v10.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/eclipse_update_120.jpg
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/feature.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/license.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/.project
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/cpl-v10.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/eclipse_update_120.jpg
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/feature.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/license.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/.project
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/cpl-v10.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/eclipse_update_120.jpg
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/feature.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/license.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/.project
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/cpl-v10.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/eclipse_update_120.jpg
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/feature.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/license.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/.project
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/cpl-v10.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/eclipse_update_120.jpg
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/feature.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/license.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/META-INF/MANIFEST.MF
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/cpl-v10.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/eclipse_update_120.jpg
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/feature.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/license.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/META-INF/MANIFEST.MF
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/cpl-v10.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/eclipse_update_120.jpg
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/feature.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/license.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/META-INF/MANIFEST.MF
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/cpl-v10.html
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/eclipse_update_120.jpg
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/feature.properties
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/feature.xml
    update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/license.html
    update/org.eclipse.update.tests.core/data/perf/platform.xml
    update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.feature1.plugin1_1.1.1.jar
    update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.feature2.plugin2_2.2.2.jar
    update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.tests.dummy_7.9.8.jar
    update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
    update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
    update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml
    update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.plugin1_1.1.1/src.jar
    update/org.eclipse.update.tests.core/data/reconciliationSites/site1/install/features/feature3/feature.xml
    update/org.eclipse.update.tests.core/data/reconciliationSites/site1/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml
    update/org.eclipse.update.tests.core/data/reconciliationSites/site1/plugins/org.eclipse.update.plugin1_1.1.1/src.jar
    update/org.eclipse.update.tests.core/data/reconciliationSites/site2/install/features/feature3/feature.xml
    update/org.eclipse.update.tests.core/data/reconciliationSites/site2/plugins/org.eclipse.update.core_2.0.0/plugin.xml
    update/org.eclipse.update.tests.core/data/reconciliationSites/site2/plugins/org.eclipse.update.core_2.0.0/src.jar
    update/org.eclipse.update.tests.core/data/resources.properties
    update/org.eclipse.update.tests.core/data/site.xml
    update/org.eclipse.update.tests.core/data/site2/site.xml
    update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/bundleAndPluginManifests_1.0.3/META-INF/MANIFEST.MF
    update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/bundleAndPluginManifests_1.0.3/plugin.xml
    update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/bundleManifest_1.0.1/META-INF/MANIFEST.MF
    update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/feature1_plugin2_5.0.0/plugin.xml
    update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/feature1_plugin2_5.0.0/src.jar
    update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/feature1_plugin2_5.0.1/plugin.xml
    update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/feature1_plugin2_5.0.1/src.jar
    update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/notBundleManifest_1.0.2/META-INF/MANIFEST.MF
    update/org.eclipse.update.tests.core/data/testAPI/features/feature3/feature.xml
    update/org.eclipse.update.tests.core/data/testAPI/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml
    update/org.eclipse.update.tests.core/data/testAPI/plugins/org.eclipse.update.plugin1_1.1.1/src.jar
    update/org.eclipse.update.tests.core/data/testAPI/site.xml
    update/org.eclipse.update.tests.core/data/validation/site2/.eclipseproduct
    update/org.eclipse.update.tests.core/data/validation/site3/.eclipseextension
    update/org.eclipse.update.tests.core/data/validation/site4/eclipse/.eclipseextension
    update/org.eclipse.update.tests.core/data/validation/site5/.eclipseUM
    update/org.eclipse.update.tests.core/data/validation/site5/eclipse/.eclipseextension
    update/org.eclipse.update.tests.core/data/validation/site6/.eclipseUM
    update/org.eclipse.update.tests.core/data/validation/site6/children/children/eclipse/.eclipseextension
    update/org.eclipse.update.tests.core/data/xmls/apitests/org.eclipse.test.feature_1.0.0/feature.xml
    update/org.eclipse.update.tests.core/data/xmls/apitests/org.eclipse_test_feature/feature.xml
    update/org.eclipse.update.tests.core/data/xmls/feature_1.0.0/feature.xml
    update/org.eclipse.update.tests.core/data/xmls/feature_1.0.0/feature1.gif
    update/org.eclipse.update.tests.core/data/xmls/site1/site.xml
    update/org.eclipse.update.tests.core/plugin.properties
    update/org.eclipse.update.tests.core/plugin.xml
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/AllTests.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/UpdateManagerTestCase.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/UpdateTestsPlugin.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/AllAPITests.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/DefaultFeature.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/MyURLEntry.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestDefaultExecutableFeatureAPI.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestDefaultPackageFeatureAPI.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestFeatureContentProvider_FileFilterAPI.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestLocalSiteAPI.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestNestedFeatureAPI.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestPluginContainerAPI.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestSiteAPI.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestSiteManagerAPI.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestUpdateManagerUtilsAPI.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/branding/AllBrandingTests.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/branding/BundleProviderTest.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/branding/ProductTest.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/configurations/AllConfigurationsTests.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/configurations/TestBackward.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/configurations/TestRevert.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/core/boot/AllPlatformConfigurationTests.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/core/boot/PlatformConfigurationTestCase.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/core/boot/TestPlatCfgAPI.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/core/boot/TestPlatCfgDefault.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/implementation/SiteFTP.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/implementation/SiteFTPFactory.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/AllMirrorTests.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/MirrorManagerTestCase.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/TestRemoteDoubleEmbeddedFeatureMirror.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/TestRemoteEmbeddedFeatureMirror.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/TestRemoteFeatureVersionMirror.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/AllModelTests.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/FeatureMain.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/SiteMain.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/feature.xml
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/site.xml
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/site_old_format.xml
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/site_with_type.xml
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/test.properties
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/nativeTests/TestLocalSystemInfo.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/nestedfeatures/AllNestedTests.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/nestedfeatures/TestInstall.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/parser/AllParserTests.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/parser/TestCategories.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/parser/TestFeatureParse.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/parser/TestSiteParse.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/perfms/AllPerformanceTests.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/perfms/TestStartup.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/reconciliation/AllReconciliationTests.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/reconciliation/TestSiteReconciliation.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/AllRegularInstallTests.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/MultipleTestLocalSite.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestDataEntryInstall.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestExecutableInstall.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestExecutablePackagedInstall.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestGetFeature.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestInstall.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestInstallURLSIteXML.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestLocalSite.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestSpaceInInstall.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularRemove/AllRegularRemoveTests.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularRemove/TestRemove.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/sitevalidation/AllSiteValidationTests.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/sitevalidation/TestSiteValidation.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/AllStandaloneTests.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/StandaloneManagerTestCase.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestBundlesInstall.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureDisable.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureEnable.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureInstall.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureUninstall.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureUpdate.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/types/AllTypesTests.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/types/TestFeatureType.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/types/TestSiteType.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/uivalues/AllCoreUITests.java
    update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/uivalues/TestUILabel.java
    update/org.eclipse.update.tests.core/test.xml
    update/org.eclipse.update.tests.core/test_with_mail.xml
    update/org.eclipse.update.tests.core/webserver/Site with space/features space/helpFeature.jar
    update/org.eclipse.update.tests.core/webserver/Site with space/features space/space feature.jar
    update/org.eclipse.update.tests.core/webserver/Site with space/info/img/top_titlsm.gif
    update/org.eclipse.update.tests.core/webserver/Site with space/info/img/wel_ml.jpg
    update/org.eclipse.update.tests.core/webserver/Site with space/info/siteInfo.html
    update/org.eclipse.update.tests.core/webserver/Site with space/install/features space/feature3/feature.xml
    update/org.eclipse.update.tests.core/webserver/Site with space/plugins space/Pde_core.jar
    update/org.eclipse.update.tests.core/webserver/Site with space/plugins space/help.jar
    update/org.eclipse.update.tests.core/webserver/Site with space/plugins space/junit_3.7.jar
    update/org.eclipse.update.tests.core/webserver/Site with space/site.xml
    update/org.eclipse.update.tests.core/webserver/UpdateManager/features/helpFeature.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager/features/org.eclipse.pde.feature_1.0.0.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager/info/img/top_titlsm.gif
    update/org.eclipse.update.tests.core/webserver/UpdateManager/info/img/wel_ml.jpg
    update/org.eclipse.update.tests.core/webserver/UpdateManager/info/siteInfo.html
    update/org.eclipse.update.tests.core/webserver/UpdateManager/plugins/Pde_core.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager/plugins/help.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager/plugins/junit_3.7.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager/site.xml
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/features/features2.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/features/org.eclipse.test.feature_1.0.0.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/features/org.eclipse.update.core.tests.feature1_1.0.4.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/features/org.eclipse_test_feature.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/features/org.eclipse.update.core.tests.childrenfeature_2.0.0.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/features/rootfeature.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.1.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/site.xml
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/org.eclipse.update.core.feature2_1.0.0/org.eclipse.update.core.feature2_2.2.2.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.feature1.plugin1_1.1.1.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.feature2.plugin2_2.2.2.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.tests.dummy_7.9.8.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/site.properties
    update/org.eclipse.update.tests.core/webserver/UpdateManager2/site.xml
    update/org.eclipse.update.tests.core/webserver/WEB-INF/web.xml
    update/org.eclipse.update.tests.core/webserver/bundleSite/features/com.example.bundle.feature_1.0.0.jar
    update/org.eclipse.update.tests.core/webserver/bundleSite/plugins/com.example.budle.fragment.ui_1.0.0.jar
    update/org.eclipse.update.tests.core/webserver/bundleSite/plugins/com.example.bundle.fragment_1.0.0.jar
    update/org.eclipse.update.tests.core/webserver/bundleSite/plugins/com.example.bundle.plugin.ui_2.0.0.jar
    update/org.eclipse.update.tests.core/webserver/bundleSite/plugins/com.example.bundle.plugin_1.0.0.jar
    update/org.eclipse.update.tests.core/webserver/bundleSite/site.xml
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/.classpath
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/.project
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/.template
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/META-INF/MANIFEST.MF
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/build.properties
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/fragment.xml
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.feature/.project
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.feature/build.properties
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.feature/feature.xml
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/.classpath
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/.project
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/.template
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/META-INF/MANIFEST.MF
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/build.properties
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/fragment.xml
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/.classpath
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/.project
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/.template
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/META-INF/MANIFEST.MF
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/bin/com/example/bundle/plugin/ui/UiPlugin.class
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/build.properties
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/plugin.xml
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/src/com/example/bundle/plugin/ui/UiPlugin.java
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/.classpath
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/.project
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/.template
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/META-INF/MANIFEST.MF
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/bin/com/example/bundle/plugin/PluginPlugin.class
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/build.properties
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/plugin.xml
    update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/src/com/example/bundle/plugin/PluginPlugin.java
    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/ILayoutExtension.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/image1.gif
    update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/index.xml
    update/org.eclipse.update.ui.win32/.classpath
    update/org.eclipse.update.ui.win32/.cvsignore
    update/org.eclipse.update.ui.win32/.project
    update/org.eclipse.update.ui.win32/about.html
    update/org.eclipse.update.ui.win32/build.properties
    update/org.eclipse.update.ui.win32/icons/full/clcl16/backward_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/clcl16/forward_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/clcl16/go_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/clcl16/hierarchicalLayout.gif
    update/org.eclipse.update.ui.win32/icons/full/clcl16/home_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/clcl16/refresh_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/clcl16/show_unconf.gif
    update/org.eclipse.update.ui.win32/icons/full/clcl16/stop_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/cview16/browser.gif
    update/org.eclipse.update.ui.win32/icons/full/dlcl16/backward_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/dlcl16/forward_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/dlcl16/go_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/dlcl16/hierarchicalLayout.gif
    update/org.eclipse.update.ui.win32/icons/full/dlcl16/home_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/dlcl16/refresh_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/dlcl16/show_unconf.gif
    update/org.eclipse.update.ui.win32/icons/full/dlcl16/stop_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/elcl16/backward_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/elcl16/collapseall.gif
    update/org.eclipse.update.ui.win32/icons/full/elcl16/forward_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/elcl16/go_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/elcl16/hierarchicalLayout.gif
    update/org.eclipse.update.ui.win32/icons/full/elcl16/home_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/elcl16/refresh_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/elcl16/show_unconf.gif
    update/org.eclipse.update.ui.win32/icons/full/elcl16/stop_nav.gif
    update/org.eclipse.update.ui.win32/icons/full/eview16/browser.gif
    update/org.eclipse.update.ui.win32/icons/full/forms/def_provider.jpg
    update/org.eclipse.update.ui.win32/icons/full/forms/form_banner.gif
    update/org.eclipse.update.ui.win32/icons/full/forms/form_banner.jpg
    update/org.eclipse.update.ui.win32/icons/full/forms/form_underline.jpg
    update/org.eclipse.update.ui.win32/icons/full/forms/form_underline2.jpg
    update/org.eclipse.update.ui.win32/icons/full/forms/topic.gif
    update/org.eclipse.update.ui.win32/icons/sample.gif
    update/org.eclipse.update.ui.win32/plugin.properties
    update/org.eclipse.update.ui.win32/plugin.xml
    update/org.eclipse.update.ui.win32/schema/welcomePages.exsd
    update/org.eclipse.update.ui.win32/schema/welcomeSections.exsd
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/ShowWelcomePageAction.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/WelcomePortal.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/WelcomePortalImages.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/WelcomePortalResources.properties
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/actions/TipsAndTricksContentProvider.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/actions/WelcomeContentProvider.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/HelpSection.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/IFormContentObserver.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/IFormContentProvider.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/IPortalSectionForm.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/PortalSection.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/SectionDescriptor.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalEditor.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalEditorInput.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalEditorInputFactory.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalForm.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalPage.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalPart.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomeTitleArea.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/BrowserControlSite.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/GlobalActionHandler.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/IEmbeddedWebBrowser.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/IWebBrowserListener.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowser.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowserEditor.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowserEditorContributor.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowserEditorInput.java
    update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowserEditorInputFactory.java
    update/org.eclipse.update/.classpath
    update/org.eclipse.update/.cvsignore
    update/org.eclipse.update/.project
    update/org.eclipse.update/.vcm_meta
diff --git a/platform/org.eclipse.platform/.classpath b/platform/org.eclipse.platform/.classpath
deleted file mode 100644
index 618ac00..0000000
--- a/platform/org.eclipse.platform/.classpath
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry output="bin-intro" kind="src" path="src-intro"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<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 2f6d5a5..0000000
--- a/platform/org.eclipse.platform/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-bin
-bin-intro
diff --git a/platform/org.eclipse.platform/.project b/platform/org.eclipse.platform/.project
deleted file mode 100644
index e28fafc..0000000
--- a/platform/org.eclipse.platform/.project
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.platform</name>
-	<comment></comment>
-	<projects>
-		<project>org.eclipse.ui</project>
-		<project>org.eclipse.ui.intro</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/platform/org.eclipse.platform/SplashFinal_500x330.psd b/platform/org.eclipse.platform/SplashFinal_500x330.psd
deleted file mode 100644
index b82e877..0000000
--- a/platform/org.eclipse.platform/SplashFinal_500x330.psd
+++ /dev/null
Binary files differ
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 cbdcb66..0000000
--- a/platform/org.eclipse.platform/about.ini
+++ /dev/null
@@ -1,25 +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 feature details in the "About" 
-# dialog (translated).  Maximum 15 lines and 75 characters per line.
-aboutText=%blurb
-
-# Property "featureImage" contains path to feature image (32x32)
-featureImage=eclipse32.gif
-
-# 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
-
-# Property "tipsAndTricksHref" contains the Help topic href to a tips and tricks page 
-# optional
-tipsAndTricksHref=/org.eclipse.platform.doc.user/tips/platform_tips.html
-
diff --git a/platform/org.eclipse.platform/about.mappings b/platform/org.eclipse.platform/about.mappings
deleted file mode 100644
index bddaab4..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 90a4aa2..0000000
--- a/platform/org.eclipse.platform/about.properties
+++ /dev/null
@@ -1,28 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-# 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.
-#
-# Do not translate any values surrounded by {}
-
-blurb=Eclipse Platform\n\
-\n\
-Version: {featureVersion}\n\
-Build id: {0}\n\
-\n\
-(c) Copyright Eclipse contributors and others 2000, 2004.  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 30e9bf8..0000000
--- a/platform/org.eclipse.platform/build.properties
+++ /dev/null
@@ -1,34 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-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,\
-               css/,\
-               cheatsheets/,\
-               welcome.xml,\
-               introContent.xml,\
-               platform.jar,\
-               intro.gif
-src.includes = about.html,\
-               launchersrc.zip,\
-               platformsrc.zip
-source.startup.jar = src/
-source.platform.jar = src-intro/
-manifest.startup.jar = META-INF/MANIFEST.MF
\ No newline at end of file
diff --git a/platform/org.eclipse.platform/cheatsheets/CVS_1.xml b/platform/org.eclipse.platform/cheatsheets/CVS_1.xml
deleted file mode 100644
index ca75638..0000000
--- a/platform/org.eclipse.platform/cheatsheets/CVS_1.xml
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?> 
-<cheatsheet title="CVS - Merging from one branch to another">
-
-	<intro 
-		href="/org.eclipse.platform.doc.user/reference/ref-cheatsheets.htm">
-		<description>
-This cheat sheet will automatically launch wizards, perform actions, and guide you through the individual steps to merge changes from a CVS branch into another branch, or into HEAD. To learn more about using cheat sheets or to see a list of available cheat sheets click help (?).To start working on this cheat sheet, click the "Click to begin" button below.
-		</description>
-	</intro>
-
-	<item
-		href="/org.eclipse.platform.doc.user/tasks/tasks-100b.htm"
-		title="Determine Branch and Version Information">
-		<description>
-In this step you must determine the name of the branch or version that contains your changes and the version from which the branch was created. This is a manual task, you will need to perform the work and click the "Click to complete" button to move to the next step. 
-		</description>
-	</item>
-
-	<item
-		href="/org.eclipse.platform.doc.user/tasks/tasks-100b.htm"
-		title="Load the Destination into your Workspace">
-		<description>
-Select the project and choose Replace With &gt; Another Branch or Version from the context menu. Then select the branch to replace with. In this step you must ensure that the destination is loaded into your workspace. This is a manual task, you will need to perform the work and click the "Click to complete" button to move to the next step.
-		</description>
-	</item>
-
-	<item
-		href="/org.eclipse.platform.doc.user/tasks/tasks-100b.htm" 
-		title="Merge Details">
-		<description>
-Select the project, choose Team &gt; Merge and complete the wizard as required. This step specifies the details of the merge.  This is a manual task, you will need to perform the work and click the "Click to complete" button to move to the next step.
-		</description>
-	</item>
-
-	<item
-		href="/org.eclipse.platform.doc.user/tasks/tasks-100b.htm"
-		title="Work with the Merge Editor">
-		<description>
-In the Merge editor manually merge the changes. This step loads the required changes into the workspace. This is a manual task, you will need to perform the work and click the "Click to complete" button to move to the next step.
-		</description>
-	</item>
-
-	<item
-		href="/org.eclipse.platform.doc.user/tasks/tasks-100b.htm"
-		title="Commit your changes">
-		<description>
-Select Team &gt; Synchronize with Repository and then commit all the changes to the repository. This step finalizes the transfer of the changes from the workspace to the CVS repository. This is a manual task, you will need to perform the work and click the "Click to complete" button to move to the next step.
-		</description>
-	</item>
-
-</cheatsheet>
\ No newline at end of file
diff --git a/platform/org.eclipse.platform/css/graphics/contentpage/background.jpg b/platform/org.eclipse.platform/css/graphics/contentpage/background.jpg
deleted file mode 100644
index ce1cada..0000000
--- a/platform/org.eclipse.platform/css/graphics/contentpage/background.jpg
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/contentpage/backgroundcurve.gif b/platform/org.eclipse.platform/css/graphics/contentpage/backgroundcurve.gif
deleted file mode 100644
index 8c5ec1d..0000000
--- a/platform/org.eclipse.platform/css/graphics/contentpage/backgroundcurve.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/contentpage/content_background.jpg b/platform/org.eclipse.platform/css/graphics/contentpage/content_background.jpg
deleted file mode 100644
index ce1cada..0000000
--- a/platform/org.eclipse.platform/css/graphics/contentpage/content_background.jpg
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/contentpage/overview_wtr.jpg b/platform/org.eclipse.platform/css/graphics/contentpage/overview_wtr.jpg
deleted file mode 100644
index 733e48c..0000000
--- a/platform/org.eclipse.platform/css/graphics/contentpage/overview_wtr.jpg
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/contentpage/samples_wtr.jpg b/platform/org.eclipse.platform/css/graphics/contentpage/samples_wtr.jpg
deleted file mode 100644
index 78e703a..0000000
--- a/platform/org.eclipse.platform/css/graphics/contentpage/samples_wtr.jpg
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/contentpage/section1.gif b/platform/org.eclipse.platform/css/graphics/contentpage/section1.gif
deleted file mode 100644
index 6147513..0000000
--- a/platform/org.eclipse.platform/css/graphics/contentpage/section1.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/contentpage/section2.gif b/platform/org.eclipse.platform/css/graphics/contentpage/section2.gif
deleted file mode 100644
index 0ee148b..0000000
--- a/platform/org.eclipse.platform/css/graphics/contentpage/section2.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/contentpage/section3.gif b/platform/org.eclipse.platform/css/graphics/contentpage/section3.gif
deleted file mode 100644
index b5d24e6..0000000
--- a/platform/org.eclipse.platform/css/graphics/contentpage/section3.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/contentpage/section4.gif b/platform/org.eclipse.platform/css/graphics/contentpage/section4.gif
deleted file mode 100644
index 258d4a8..0000000
--- a/platform/org.eclipse.platform/css/graphics/contentpage/section4.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/contentpage/tutorials_wtr.jpg b/platform/org.eclipse.platform/css/graphics/contentpage/tutorials_wtr.jpg
deleted file mode 100644
index e74c7c0..0000000
--- a/platform/org.eclipse.platform/css/graphics/contentpage/tutorials_wtr.jpg
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/contentpage/whatsnew_wtr.jpg b/platform/org.eclipse.platform/css/graphics/contentpage/whatsnew_wtr.jpg
deleted file mode 100644
index c2a42da..0000000
--- a/platform/org.eclipse.platform/css/graphics/contentpage/whatsnew_wtr.jpg
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/contentpage/wordmark.gif b/platform/org.eclipse.platform/css/graphics/contentpage/wordmark.gif
deleted file mode 100644
index 27ca85d..0000000
--- a/platform/org.eclipse.platform/css/graphics/contentpage/wordmark.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/ctool/overview48.gif b/platform/org.eclipse.platform/css/graphics/icons/ctool/overview48.gif
deleted file mode 100644
index 7da24bd..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/ctool/overview48.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/ctool/overview48sel.gif b/platform/org.eclipse.platform/css/graphics/icons/ctool/overview48sel.gif
deleted file mode 100644
index 3d1c45b..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/ctool/overview48sel.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/ctool/overview72.gif b/platform/org.eclipse.platform/css/graphics/icons/ctool/overview72.gif
deleted file mode 100644
index d34b4b3..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/ctool/overview72.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/ctool/samples48.gif b/platform/org.eclipse.platform/css/graphics/icons/ctool/samples48.gif
deleted file mode 100644
index 3213de6..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/ctool/samples48.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/ctool/samples48sel.gif b/platform/org.eclipse.platform/css/graphics/icons/ctool/samples48sel.gif
deleted file mode 100644
index f9c0469..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/ctool/samples48sel.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/ctool/samples72.gif b/platform/org.eclipse.platform/css/graphics/icons/ctool/samples72.gif
deleted file mode 100644
index 4c63a9a..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/ctool/samples72.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/ctool/tutorials48.gif b/platform/org.eclipse.platform/css/graphics/icons/ctool/tutorials48.gif
deleted file mode 100644
index 1a3f06a..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/ctool/tutorials48.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/ctool/tutorials48sel.gif b/platform/org.eclipse.platform/css/graphics/icons/ctool/tutorials48sel.gif
deleted file mode 100644
index 3d687bd..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/ctool/tutorials48sel.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/ctool/tutorials72.gif b/platform/org.eclipse.platform/css/graphics/icons/ctool/tutorials72.gif
deleted file mode 100644
index a2aa343..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/ctool/tutorials72.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/ctool/wb48.gif b/platform/org.eclipse.platform/css/graphics/icons/ctool/wb48.gif
deleted file mode 100644
index c2fd06a..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/ctool/wb48.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/ctool/whatsnew48.gif b/platform/org.eclipse.platform/css/graphics/icons/ctool/whatsnew48.gif
deleted file mode 100644
index 2bfb9be..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/ctool/whatsnew48.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/ctool/whatsnew48sel.gif b/platform/org.eclipse.platform/css/graphics/icons/ctool/whatsnew48sel.gif
deleted file mode 100644
index 0da843f..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/ctool/whatsnew48sel.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/ctool/whatsnew72.gif b/platform/org.eclipse.platform/css/graphics/icons/ctool/whatsnew72.gif
deleted file mode 100644
index 74bf6ff..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/ctool/whatsnew72.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/dtool/back.gif b/platform/org.eclipse.platform/css/graphics/icons/dtool/back.gif
deleted file mode 100644
index f0d0929..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/dtool/back.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/dtool/forward.gif b/platform/org.eclipse.platform/css/graphics/icons/dtool/forward.gif
deleted file mode 100644
index dbe58b2..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/dtool/forward.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/dtool/overview.gif b/platform/org.eclipse.platform/css/graphics/icons/dtool/overview.gif
deleted file mode 100644
index 2bc7b0d..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/dtool/overview.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/dtool/restore_welcome.gif b/platform/org.eclipse.platform/css/graphics/icons/dtool/restore_welcome.gif
deleted file mode 100644
index 4997b20..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/dtool/restore_welcome.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/dtool/samples.gif b/platform/org.eclipse.platform/css/graphics/icons/dtool/samples.gif
deleted file mode 100644
index 5cf3cae..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/dtool/samples.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/dtool/tutorials.gif b/platform/org.eclipse.platform/css/graphics/icons/dtool/tutorials.gif
deleted file mode 100644
index 63826a5..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/dtool/tutorials.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/dtool/whatsnew.gif b/platform/org.eclipse.platform/css/graphics/icons/dtool/whatsnew.gif
deleted file mode 100644
index 8056c99..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/dtool/whatsnew.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/back.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/back.gif
deleted file mode 100644
index 1c81cb6..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/back.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/forward.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/forward.gif
deleted file mode 100644
index 3e4a4f4..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/forward.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/overview.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/overview.gif
deleted file mode 100644
index 3fe629a..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/overview.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/overview48.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/overview48.gif
deleted file mode 100644
index 8e2f8c1..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/overview48.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/overview48sel.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/overview48sel.gif
deleted file mode 100644
index 1275a4a..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/overview48sel.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/overview72.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/overview72.gif
deleted file mode 100644
index e3f7648..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/overview72.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/restore_welcome.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/restore_welcome.gif
deleted file mode 100644
index 7736bce..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/restore_welcome.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/samples.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/samples.gif
deleted file mode 100644
index c695884..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/samples.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/samples48.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/samples48.gif
deleted file mode 100644
index 63d405b..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/samples48.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/samples48sel.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/samples48sel.gif
deleted file mode 100644
index 4c3135d..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/samples48sel.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/samples72.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/samples72.gif
deleted file mode 100644
index 9216426..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/samples72.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/tutorials.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/tutorials.gif
deleted file mode 100644
index a18d7dd..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/tutorials.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/tutorials48.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/tutorials48.gif
deleted file mode 100644
index 718ca6c..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/tutorials48.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/tutorials48sel.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/tutorials48sel.gif
deleted file mode 100644
index 10680e5..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/tutorials48sel.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/tutorials72.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/tutorials72.gif
deleted file mode 100644
index bab3498..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/tutorials72.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/wb48.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/wb48.gif
deleted file mode 100644
index 50ca287..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/wb48.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/whatsnew.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/whatsnew.gif
deleted file mode 100644
index f022324..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/whatsnew.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/whatsnew48.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/whatsnew48.gif
deleted file mode 100644
index 6e00d7a..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/whatsnew48.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/whatsnew48sel.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/whatsnew48sel.gif
deleted file mode 100644
index be9fa0c..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/whatsnew48sel.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/etool/whatsnew72.gif b/platform/org.eclipse.platform/css/graphics/icons/etool/whatsnew72.gif
deleted file mode 100644
index 410093b..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/etool/whatsnew72.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/community_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/community_obj.gif
deleted file mode 100644
index 5d132a8..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/community_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/communityhov_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/communityhov_obj.gif
deleted file mode 100644
index acb2a58..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/communityhov_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/features_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/features_obj.gif
deleted file mode 100644
index 364fd48..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/features_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/featureshov_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/featureshov_obj.gif
deleted file mode 100644
index fbfdf03..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/featureshov_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/javaapp_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/javaapp_obj.gif
deleted file mode 100644
index ce00d50..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/javaapp_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/javaapphov_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/javaapphov_obj.gif
deleted file mode 100644
index 35e9f58..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/javaapphov_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/javaapplet_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/javaapplet_obj.gif
deleted file mode 100644
index b19a952..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/javaapplet_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/javaapplethov_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/javaapplethov_obj.gif
deleted file mode 100644
index 5da3db9..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/javaapplethov_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/javadev_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/javadev_obj.gif
deleted file mode 100644
index f6526a2..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/javadev_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/javadevhov_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/javadevhov_obj.gif
deleted file mode 100644
index 36b47d3..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/javadevhov_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/migrate_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/migrate_obj.gif
deleted file mode 100644
index 0c2fe88..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/migrate_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/migratehov_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/migratehov_obj.gif
deleted file mode 100644
index ee34e2a..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/migratehov_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/new_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/new_obj.gif
deleted file mode 100644
index f46b81b..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/new_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/newhov_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/newhov_obj.gif
deleted file mode 100644
index 593e63b..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/newhov_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/plugin_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/plugin_obj.gif
deleted file mode 100644
index d92d2c5..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/plugin_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/pluginhov_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/pluginhov_obj.gif
deleted file mode 100644
index 1de8ccc..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/pluginhov_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/rcpapp_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/rcpapp_obj.gif
deleted file mode 100644
index 830ab56..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/rcpapp_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/rcpapphov_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/rcpapphov_obj.gif
deleted file mode 100644
index 5bd80a9..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/rcpapphov_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/samplepurp_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/samplepurp_obj.gif
deleted file mode 100644
index c4e56fc..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/samplepurp_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/samplepurphov_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/samplepurphov_obj.gif
deleted file mode 100644
index 60481e2..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/samplepurphov_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/samplered_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/samplered_obj.gif
deleted file mode 100644
index f6d104e..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/samplered_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/sampleredhov_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/sampleredhov_obj.gif
deleted file mode 100644
index 687d6b2..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/sampleredhov_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/script_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/script_obj.gif
deleted file mode 100644
index b48b7cd..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/script_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/scripthov_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/scripthov_obj.gif
deleted file mode 100644
index d67203e..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/scripthov_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/swtapp_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/swtapp_obj.gif
deleted file mode 100644
index 9ba9a33..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/swtapp_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/swtapphov_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/swtapphov_obj.gif
deleted file mode 100644
index c4fbb5d..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/swtapphov_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/teamsup_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/teamsup_obj.gif
deleted file mode 100644
index 4b9def9..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/teamsup_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/teamsuphov_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/teamsuphov_obj.gif
deleted file mode 100644
index 4bdf819..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/teamsuphov_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/updates_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/updates_obj.gif
deleted file mode 100644
index 1608b30..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/updates_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/updateshov_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/updateshov_obj.gif
deleted file mode 100644
index 22a0ace..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/updateshov_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/wbbasics_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/wbbasics_obj.gif
deleted file mode 100644
index 8b82563..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/wbbasics_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/icons/obj48/wbbasicshov_obj.gif b/platform/org.eclipse.platform/css/graphics/icons/obj48/wbbasicshov_obj.gif
deleted file mode 100644
index 230be9c..0000000
--- a/platform/org.eclipse.platform/css/graphics/icons/obj48/wbbasicshov_obj.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/rootpage/background.jpg b/platform/org.eclipse.platform/css/graphics/rootpage/background.jpg
deleted file mode 100644
index 969fcf3..0000000
--- a/platform/org.eclipse.platform/css/graphics/rootpage/background.jpg
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/rootpage/brandmark.gif b/platform/org.eclipse.platform/css/graphics/rootpage/brandmark.gif
deleted file mode 100644
index 93f25f7..0000000
--- a/platform/org.eclipse.platform/css/graphics/rootpage/brandmark.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/rootpage/dots.gif b/platform/org.eclipse.platform/css/graphics/rootpage/dots.gif
deleted file mode 100644
index 6621b7c..0000000
--- a/platform/org.eclipse.platform/css/graphics/rootpage/dots.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/graphics/swt/form_banner.gif b/platform/org.eclipse.platform/css/graphics/swt/form_banner.gif
deleted file mode 100644
index aebc0b2..0000000
--- a/platform/org.eclipse.platform/css/graphics/swt/form_banner.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/overview/overview.css b/platform/org.eclipse.platform/css/overview/overview.css
deleted file mode 100644
index 859a390..0000000
--- a/platform/org.eclipse.platform/css/overview/overview.css
+++ /dev/null
@@ -1,69 +0,0 @@
-body {

-	background-image : url(../graphics/contentpage/overview_wtr.jpg);

-}

-

-.page { min-height : 700px; }

-

-/* show the "selected" image for this page */

-#navigation-links a#overview img, #navigation-links a#overview:hover img { background-image : url(../graphics/icons/ctool/overview48sel.gif); }

-

-/* 

- * Set up the Overview links to be displayed in two columns

- * that are centered in the middle of the page.

- */

-

-#overview-links {

-	text-align : left;

-	width : 760px;

-	/* To center in Moz (have to use text-align for IE) */

-	margin : 0px auto;

-}

-

-#overview-links a { 

-	width : 370px;

-	text-align : left; 

-	margin-left : 5px;

-	margin-right : 5px;

-	margin-top : 5px;

-	margin-bottom : -20px;

-	vertical-align : top;

-}

-

-#overview-links > a { vertical-align : middle; }

-

-#overview-links a img {

-	height : 57px;

-	width : 57px;

-	vertical-align : middle;

-}	

-

-#overview-links a .link-label {

-	display : block;

-	width : 300px;

-	position : relative;

-	top : -50px;

-	left : 60px;

-}

-

-#overview-links a p .text {

-	display : block;

-	width : 300px;

-	position : relative;

-	top : -45px;

-	left : 53px;

-}

-

-/* Special case for Mozilla, because the links are displayed

-   in 1 vertical column instead of 2 centered columns */

-#overview-links > a { 	width : 700px; }

-#overview-links a > .link-label { width : 700px; }

-#overview-links a p > .text { width : 700px; }

-

-#overview-links a:hover { border-right : 5px; }

-

-a#basics img { background-image : url(../graphics/icons/obj48/wbbasics_obj.gif); }

-a#basics:hover img { background-image : url(../graphics/icons/obj48/wbbasicshov_obj.gif); }

-

-a#team img { background-image : url(../graphics/icons/obj48/teamsup_obj.gif); }

-a#team:hover img { background-image : url(../graphics/icons/obj48/teamsuphov_obj.gif); }

-

diff --git a/platform/org.eclipse.platform/css/overview/swt.properties b/platform/org.eclipse.platform/css/overview/swt.properties
deleted file mode 100644
index 540306b..0000000
--- a/platform/org.eclipse.platform/css/overview/swt.properties
+++ /dev/null
@@ -1,10 +0,0 @@
-
-overview.layout.ncolumns = 2
-overview.page-content.overview-links.layout.vspacing = 35
-
-overview.page-content.overview-links.basics.link-icon = css/graphics/icons/obj48/wbbasics_obj.gif
-overview.page-content.overview-links.team.link-icon = css/graphics/icons/obj48/teamsup_obj.gif
-overview.page-content.overview-links.layout.ncolumns = 2
-
-overview.subtitle-id = overview/page-content/page-title
-overview.description-id = overview/page-content/page-description
\ No newline at end of file
diff --git a/platform/org.eclipse.platform/css/root.css b/platform/org.eclipse.platform/css/root.css
deleted file mode 100644
index 629eae9..0000000
--- a/platform/org.eclipse.platform/css/root.css
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/css/root_swt.properties b/platform/org.eclipse.platform/css/root_swt.properties
deleted file mode 100644
index bbbdb55..0000000
--- a/platform/org.eclipse.platform/css/root_swt.properties
+++ /dev/null
@@ -1,29 +0,0 @@
-
-root.links-background.page-links.overview.link-icon = css/graphics/icons/etool/overview72.gif
-root.links-background.page-links.tutorials.link-icon = css/graphics/icons/etool/tutorials72.gif
-root.links-background.page-links.samples.link-icon= css/graphics/icons/etool/samples72.gif
-root.links-background.page-links.news.link-icon = css/graphics/icons/etool/whatsnew72.gif
-root.action-links.workbench.link-icon = css/graphics/icons/etool/wb48.gif
-
-root.links-background.page-links.overview.hover-icon = css/graphics/icons/ctool/overview72.gif
-root.links-background.page-links.tutorials.hover-icon = css/graphics/icons/ctool/tutorials72.gif
-root.links-background.page-links.samples.hover-icon = css/graphics/icons/ctool/samples72.gif
-root.links-background.page-links.news.hover-icon = css/graphics/icons/ctool/whatsnew72.gif
-root.action-links.workbench.hover-icon = css/graphics/icons/ctool/wb48.gif
-
-
-root.links-background.page-links.overview.small-link-icon = css/graphics/icons/etool/overview48.gif
-root.links-background.page-links.tutorials.small-link-icon = css/graphics/icons/etool/tutorials48.gif
-root.links-background.page-links.samples.small-link-icon = css/graphics/icons/etool/samples48.gif
-root.links-background.page-links.news.small-link-icon = css/graphics/icons/etool/whatsnew48.gif
-root.action-links.workbench.small-link-icon = css/graphics/icons/etool/wb48.gif
-
-root.links-background.page-links.overview.small-hover-icon = css/graphics/icons/ctool/overview48.gif
-root.links-background.page-links.tutorials.small-hover-icon = css/graphics/icons/ctool/tutorials48.gif
-root.links-background.page-links.samples.small-hover-icon = css/graphics/icons/ctool/samples48.gif
-root.links-background.page-links.news.small-hover-icon = css/graphics/icons/ctool/whatsnew48.gif
-root.action-links.workbench.small-hover-icon = css/graphics/icons/ctool/wb48.gif
-
-root.layout.ncolumns = 1
-root.links-background.page-links.layout.hspacing = 40
-root.layout.vspacing = 35
diff --git a/platform/org.eclipse.platform/css/samples/samples.css b/platform/org.eclipse.platform/css/samples/samples.css
deleted file mode 100644
index 3ccb2cd..0000000
--- a/platform/org.eclipse.platform/css/samples/samples.css
+++ /dev/null
@@ -1,94 +0,0 @@
-body {

-	background-image : url(../graphics/contentpage/samples_wtr.jpg);

-}

-

-.page { min-height : 700px; }

-

-/* show the "selected" image for this page */

-#navigation-links a#samples img, #navigation-links a#samples:hover img { background-image : url(../graphics/icons/ctool/samples48sel.gif); }

-

-/* Lay out the real content of the samples page: */

-

-.samples-group {

-	width : 750px;

-	/* To center in Moz (have to use text-align for IE) */	

-	margin : 0px auto;

-	margin-bottom : 10px;

-	text-align : left;

-	float : none;

-	clear : both;

-}

-

-.samples-group H4 { margin-top : 10px; }

-

-.sample-link { 

-	width : 360px;

-	text-align : left; 

-	margin-left : 5px;

-	margin-right : 5px;

-	margin-top : 10px;

-	margin-bottom : -30px;

-	vertical-align : top;

-}

-

-/* specialize the swt samples group to be spread over only 1 column */

-#swt .sample-link { 

-	width : 720px;

-}

-

-.samples-group > .sample-link {

-	float : left;

-	height : 150px;

-	vertical-align : middle;

-}

-

-

-.sample-link .link-label {

-	display : block;

-	width : 300px;

-	position : relative;

-	top : -50px;

-	left : 60px;

-}

-

-#swt .sample-link .link-label {

-	width : 600px;	

-} 

-

-.sample-link p .text {

-	display : block;

-	width : 300px;

-	position : relative;

-	top : -45px;

-	left : 53px;

-}

-

-#swt .sample-link .text {

-	width : 620px;	

-} 

-

-.sample-link img {

-	height : 56px;

-	width : 56px;

-	vertical-align : middle;

-}

-

-.sample-link:hover { border-right : 0px; }

-

-

-#swt .sample-link img {

-	background-image : url(../graphics/icons/obj48/samplered_obj.gif);

-}

-

-#swt .sample-link:hover img {

-	background-image : url(../graphics/icons/obj48/sampleredhov_obj.gif);

-}

-

-#workbench .sample-link img {

-	background-image : url(../graphics/icons/obj48/samplepurp_obj.gif);

-}

-

-#workbench .sample-link:hover img {

-	background-image : url(../graphics/icons/obj48/samplepurphov_obj.gif);

-}

-

diff --git a/platform/org.eclipse.platform/css/samples/swt.properties b/platform/org.eclipse.platform/css/samples/swt.properties
deleted file mode 100644
index 1976209..0000000
--- a/platform/org.eclipse.platform/css/samples/swt.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-samples.link-icon = css/graphics/icons/obj48/samplepurp_obj.gif
-samples.page-content.swt.swt-examples.link-icon = css/graphics/icons/obj48/samplered_obj.gif
-
-samples.page-content.layout.vspacing = 40
-samples.page-content.swt.layout.ncolumns = 2
-samples.page-content.swt.layout.vspacing = 30
-samples.page-content.swt.layout.hspacing = 30
-samples.page-content.workbench.layout.ncolumns = 2
-samples.page-content.workbench.layout.vspacing = 30
-samples.page-content.workbench.layout.hspacing = 30
-
-description-style-id = group-description
-samples.subtitle-id = samples/page-content/page-title
-samples.description-id = samples/page-content/page-description
\ No newline at end of file
diff --git a/platform/org.eclipse.platform/css/shared.css b/platform/org.eclipse.platform/css/shared.css
deleted file mode 100644
index a82597c..0000000
--- a/platform/org.eclipse.platform/css/shared.css
+++ /dev/null
@@ -1,264 +0,0 @@
-/* 

- * Set up general fonts, sizes and colors 

- */

-body { font-family : Arial, sans-serif; }

-

-H1, H2, H3, H4, p, a { color : #4D4D4D; }

-

-.intro-header H1 {

-	font-size : 16pt;

-	font-weight : normal;

-	color : #E5E5E5;

-}

-

-h2 {

-	font-size : 13pt;

-	font-weight : normal;

-	color : #7B8694;

-}

-/* For regular div labels */

-H4 .div-label {

-	font-size : 10pt;

-	font-weight : bold;

-}

-

-/* For the main page content's title */

-#content-header H4 .div-label {

-	font-size : 14pt;

-	font-weight : normal;

-	color : #8C96A2;

-	float : none;

-	clear : both;

-}

-

-.page-description { 

-	font-size : 10pt;

-	float : none;

-	clear : both;

-}

-

-a {

-	font-weight : bold;

-	text-decoration : none;

-	color : #4D4D4D;

-}

-

-a .link-label {

-	font-size : 10pt;

-	font-weight : normal;

-}

-

-#navigation-links a .link-label {

-	font-size : 9pt;

-	font-weight : normal;

-	color : #E5E5E5;

-}

-

-a .text {

-	font-size : 8pt;

-	font-weight : normal;

-}

-

-p .group-description {

-	font-size : 10pt;

-	font-weight : normal;

-}

-

-

-/* 

- * Set up other general properties like padding/margins

- */

-html, body { width : 100%; height : 100%; }

-

-html, body, div, h1, h4, p, a { margin : 0px; padding : 0px; }

-

-.intro-header H1 { padding-top : 10px; margin-left : 10px; }

-

-/* For regular div labels */

-#page-content div H4 {

-	padding : 10px;

-	padding-bottom : 0px;

-}

-

-/* For the main page content's div label */

-#page-content #content-header H4 {

-	padding-bottom : 10px;

-	padding-top : 0px;

-}

-

-/* special case for Mozilla's main content-header label.

-   Mozilla 1.4 needs more room at the top */

-#page-content > #content-header H4 { padding-top : 10px; }

-

-/* Needed in IE to get shift+tab to show the active image properly */

-a:active {

-	border : solid 0px;

-}

-

-a img {

-	border-width : 0;

-	background-repeat : no-repeat;

-}

-

-/*

- * to get scrollbars working in both IE and Mozilla

- */

-html,body { overflow: auto; }

-html>body { overflow: visible; }

-

-/*

- * Set up the body, decorative background, and navigation for the content 

- * pages. 

- * Note: the root page handles its own background and navigation; these

- * settings primarily apply to the content pages

- */

-body {

-	background-color : #FFFFFF;

-	background-repeat : no-repeat;

-	background-position : bottom right;

-}

-

-#background-image {

-	width : 100%;

-	min-width : 770px;

-	height : 164px;

-	background-image : url(graphics/contentpage/background.jpg);

-	background-repeat : no-repeat;

-	background-position : top left;	

-	position : absolute;

-	top : 0px;

-	z-index : -100;

-}

-

-#curve-image { 

-	width : 100%;

-	height : 164px;

-	position : absolute;

-	top : 0px;

-	background-image : url(graphics/contentpage/backgroundcurve.gif);

-	background-repeat : no-repeat;

-	background-position : top center;

-	margin : 0;

-	padding : 0;

-}

-

-.intro-header {	background-color : transparent; z-index : 100;}

-

-body, .page{

-	min-width : 770px;

-	/* since IE doesn't support min-width, try expression */

-	width:expression(document.body.clientWidth < 770? "770px": "auto" );

-	min-height : 425px;

-	height : 100%;

-	height : expression(document.body.clientHeight < 425? "425px": "100%" );

-}

-

-.page { 

-	background-image : url(graphics/contentpage/wordmark.gif);

-	background-repeat : no-repeat;

-	background-position : bottom left;

-	min-height : 475px;

-}

-

-#page-content {

-	background-repeat : no-repeat;

-	background-position : bottom right;

-	height : 70%;

-}

-

-/* 

- * Lay out the navigation links 

- * (Root page does something similar for its navigation)

- */

-#navigation-links {

-	position : relative;

-	left : 10px;

-	top : 5px;

-	height : 60;

-	width : 98%;

-}

-

-#navigation-links a {

-	padding-left : 5px;

-	padding-right : 5px;

-	float : left;

-	text-align : center;

-}

-

-#navigation-links a img {

-	height : 52px;

-	width : 52px;

-	vertical-align : middle;

-}

-

-#navigation-links a .link-label { display : block; margin-top : 5px;}

-

-#navigation-links a .text { display : none; }

-

-#navigation-links a:hover, 

-#navigation-links a:focus 

-#navigation-links a:active { border-right : 0px;}

-

-/* properties for each of the navigation-links  */

-#navigation-links a#overview img { background-image : url(graphics/icons/etool/overview48.gif); }

-#navigation-links a#overview:hover img,

-#navigation-links a#overview:focus img,

-#navigation-links a#overview:active img { background-image : url(graphics/icons/ctool/overview48.gif); }

-/*#navigation-links a#overview:active img { background-image : url(graphics/icons/ctool/overview48sel.gif); }*/

-

-#navigation-links a#tutorials img { background-image : url(graphics/icons/etool/tutorials48.gif); }

-#navigation-links a#tutorials:hover img,

-#navigation-links a#tutorials:active img,

-#navigation-links a#tutorials:focus img { background-image : url(graphics/icons/ctool/tutorials48.gif); }

-/*#navigation-links a#tutorials:active img { background-image : url(graphics/icons/ctool/tutorials48sel.gif); }*/

-

-#navigation-links a#samples img { background-image : url(graphics/icons/etool/samples48.gif); }

-#navigation-links a#samples:hover img,

-#navigation-links a#samples:active img,

-#navigation-links a#samples:focus img { background-image : url(graphics/icons/ctool/samples48.gif); }

-/*#navigation-links a#samples:active img { background-image : url(graphics/icons/ctool/samples48sel.gif); }*/

-

-#navigation-links a#news img { background-image : url(graphics/icons/etool/whatsnew48.gif); }

-#navigation-links a#news:hover img,

-#navigation-links a#news:focus img,

-#navigation-links a#news:active img { background-image : url(graphics/icons/ctool/whatsnew48.gif); }

-/*#navigation-links a#news:active img { background-image : url(graphics/icons/ctool/whatsnew48sel.gif); }*/

-

-#navigation-links a#workbench { position : absolute;  right : 0px; top : -35px; text-align : right;}

-#navigation-links a#workbench .text { display : none; }

-#navigation-links a#workbench img { background-image : url(graphics/icons/etool/wb48.gif); width : 53px; height : 53px;}

-#navigation-links a#workbench:hover img,

-#navigation-links a#workbench:focus img,

-#navigation-links a#workbench:active img { background-image : url(graphics/icons/ctool/wb48.gif); }

-

-/* 

- * Lay out the page title and description 

- */

-h1, p { margin-left : 10px; } /* required in mozilla so the page description is properly indented */

-

-/* position the page content so that the page title overlays the bottom

- * of the background image, but make sure the content is always on top 

- * (using z-index) */

-#page-content {

-	float : none;

-	clear : both;

-	text-align : center;

-	margin-top : 35px;

-}

-

-.page > #page-content { margin-top : 50px; }

-

-#page-content p { 

-	padding-bottom : 15px; 

-	text-align : left; 

-	float : none;

-	clear : both;

-}

-

-#page-content #content-header H4, .page-description {

-	text-align : left;

-	margin-right : 10px;

-	float : none;

-	clear : both;

-}

-

diff --git a/platform/org.eclipse.platform/css/standby_root.css b/platform/org.eclipse.platform/css/standby_root.css
deleted file mode 100644
index 661d2c4..0000000
--- a/platform/org.eclipse.platform/css/standby_root.css
+++ /dev/null
@@ -1,121 +0,0 @@
-/* 

- * Set up general font colours, sizes, etc.  Some of these will override

- * settings from the shared CSS 

- */

-.intro-header H1 {

-	font-size : 15pt;

-}

-

-#page-links a .link-label, #action-links a .link-label {

-	font-size : 10pt;

-	font-weight : 600;

-	color : #E5E5E5;

-}

-

-#page-links a p .text, #action-links a p .text {

-	font-size : 10pt;

-	font-weight : 500;

-	color : #E5E5E5;

-}

-

-/*

- * Set up the content for the standby page.

- */

-body {

-	min-width : 230px;

-	/* since IE doesn't support min-width, use expression */

-	width:expression(document.body.clientWidth < 230? "230px": "auto" );

-	background-image : url(graphics/rootpage/background.jpg);

-	background-repeat : no-repeat;

-	background-position : top left;

-	background-color : #7169D1;

-}

-

-.page { 

-	background-image : url(graphics/rootpage/brandmark.gif);

-	background-repeat : no-repeat;

-	background-position : bottom left;

-	min-width : 230px;

-	/* since IE doesn't support min-width, use expression */

-	width:expression(document.body.clientWidth < 230? "230px": "auto" );

- 	min-height : 610px;

-	height : 100%;

-	height : expression(document.body.clientHeight < 450? "450px": "100%" );

-}

-

-/* 

- * Set up the navigation bar.  It should be centered in the middle

- * of the page

- */

-

-#links-background { 

-	width : 100%; 

- 	margin-top : 10%; 

-	margin-bottom : auto;

-	text-align : center;

-}

-

-#page-links a {

-	display : block;

-	width : 220px;

-	text-align : left; 

-	margin-left : auto;

-	margin-right : auto;

-	margin-top : 0px;

-	vertical-align : top;

-}

-#page-links a span, #page-links a p {

-	display : block;

-	width : 160px;

-	margin : 0px;

-	padding : 0px;

-}

-

-#page-links a .link-label {

-	position : relative;

-	left : 60px;

-	top : -50px;

-}

-

-#page-links a p .text {

-	position : relative;

-	left : 60px;

-	top : -50px;

-

-}

-

-#page-links a img {

-	height : 52px;

-	width : 52px;

-	vertical-align : middle;

-}

-

-#page-links a:hover,

-#page-links a:focus,

-#page-links a:active  { border : 0px; }

-

-#page-links a:hover p,

-#page-links a:focus p,

-#page-links a:active p  { margin : 0px; padding : 0px; }

-

-/* properties for each of the page-links  */

-a#overview img { background-image : url(graphics/icons/etool/overview48.gif); }

-a#overview:hover img,

-a#overview:focus img,

-a#overview:active img { background-image : url(graphics/icons/ctool/overview48.gif); }

-

-a#tutorials img { background-image : url(graphics/icons/etool/tutorials48.gif); }

-a#tutorials:hover img,

-a#tutorials:focus img,

-a#tutorials:active img { background-image : url(graphics/icons/ctool/tutorials48.gif); }

-

-a#samples img { background-image : url(graphics/icons/etool/samples48.gif); }

-a#samples:hover img,

-a#samples:focus img,

-a#samples:active img { background-image : url(graphics/icons/ctool/samples48.gif); }

-

-a#news img { background-image : url(graphics/icons/etool/whatsnew48.gif); }

-a#news:hover img,

-a#news:focus img,

-a#news:active img { background-image : url(graphics/icons/ctool/whatsnew48.gif); }

-

diff --git a/platform/org.eclipse.platform/css/standby_swt.properties b/platform/org.eclipse.platform/css/standby_swt.properties
deleted file mode 100644
index 5a5f0ac..0000000
--- a/platform/org.eclipse.platform/css/standby_swt.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-standby.links-background.page-links.overview.link-icon = css/graphics/icons/etool/overview72.gif
-standby.links-background.page-links.tutorials.link-icon = css/graphics/icons/etool/tutorials72.gif
-standby.links-background.page-links.samples.link-icon= css/graphics/icons/etool/samples72.gif
-standby.links-background.page-links.news.link-icon = css/graphics/icons/etool/whatsnew72.gif
-
-
-standby.links-background.page-links.overview.hover-icon = css/graphics/icons/ctool/overview72.gif
-standby.links-background.page-links.tutorials.hover-icon = css/graphics/icons/ctool/tutorials72.gif
-standby.links-background.page-links.samples.hover-icon = css/graphics/icons/ctool/samples72.gif
-standby.links-background.page-links.news.hover-icon = css/graphics/icons/ctool/whatsnew72.gif
-
-
-standby.links-background.page-links.layout.vspacing = 30
-standby.layout.vspacing = 35
-standby.show-link-description = false
-standby.show-home-page-navigation = false
\ No newline at end of file
diff --git a/platform/org.eclipse.platform/css/tutorials/swt.properties b/platform/org.eclipse.platform/css/tutorials/swt.properties
deleted file mode 100644
index c0ad472..0000000
--- a/platform/org.eclipse.platform/css/tutorials/swt.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tutorials.page-content.layout.vspacing = 40
-
-tutorials.subtitle-id = tutorials/page-content/page-title
-tutorials.description-id = tutorials/page-content/page-description
\ No newline at end of file
diff --git a/platform/org.eclipse.platform/css/tutorials/tutorials.css b/platform/org.eclipse.platform/css/tutorials/tutorials.css
deleted file mode 100644
index 053efe8..0000000
--- a/platform/org.eclipse.platform/css/tutorials/tutorials.css
+++ /dev/null
@@ -1,79 +0,0 @@
-body {

-	background-image : url(../graphics/contentpage/tutorials_wtr.jpg);

-}

-

-.page { min-height : 700px; }

-

-/* show the "selected" image for this page */

-#navigation-links a#tutorials img, #navigation-links a#tutorials:hover img { background-image : url(../graphics/icons/ctool/tutorials48sel.gif); }

-

-/* 

- * Set up the content of the tutorials page into two

- * columns that are centered in the page

- */

-

-

-/* a group of tutorial links */

-.tutorials-group {

-	/* To center in Moz (have to use text-align for IE) */

-	margin-left : auto;

-	margin-right : auto;

-	width : 750px;

-	margin-bottom : 30px;

-	float : none;

-	clear : both;

-	text-align : left;

-}

-

-.tutorials-link { 

-	width : 360px;

-	text-align : left; 

-	margin-left : 5px;

-	margin-right : 5px;

-	margin-top : 10px;

-	margin-bottom : -20px;

-	vertical-align : top;

-}

-

-.tutorials-group > .tutorials-link {

-	float : left;

-	height : 150px;

-	vertical-align : middle;

-}

-

-

-.tutorials-link img  {

-	height : 57px;

-	width : 57px;

-	vertical-align : middle;

-}

-

-.tutorials-group h4 {

-	float : none;

-	clear : both;

-}

-

-p #group-description {

-	padding-bottom : 10px;

-	float : none;

-	clear : both;

-}

-

-.tutorials-link .link-label {

-	display : block;

-	width : 300px;

-	position : relative;

-	top : -50px;

-	left : 60px;

-}

-

-

-.tutorials-link p .text {

-	display : block;

-	width : 300px;

-	position : relative;

-	top : -45px;

-	left : 53px;

-}

-

-.tutorials-link:hover { border-right : 0px; }

diff --git a/platform/org.eclipse.platform/css/whatsnew/swt.properties b/platform/org.eclipse.platform/css/whatsnew/swt.properties
deleted file mode 100644
index be302da..0000000
--- a/platform/org.eclipse.platform/css/whatsnew/swt.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-
-news.page-content.news-links.layout.ncolumns = 2
-news.page-content.news-links.layout.vspacing = 30
-
-news.page-content.news-links.new-and-noteworthy.link-icon = css/graphics/icons/obj48/new_obj.gif
-news.page-content.news-links.migration.link-icon = css/graphics/icons/obj48/migrate_obj.gif
-news.page-content.news-links.updates.link-icon = css/graphics/icons/obj48/updates_obj.gif
-news.page-content.news-links.eclipse.link-icon = css/graphics/icons/obj48/community_obj.gif
-
-news.page-content.noteworthy-links.layout.ncolumns = 2
-news.page-content.noteworthy-links.layout.vspacing = 15 
-news.page-content.news-links.layout.vspacing = 15 
-news.page-content.layout.vspacing = 40 
-
-news.link-icon = css/graphics/icons/obj48/new_obj.gif
-
-news.subtitle-id = news/page-content/page-title
diff --git a/platform/org.eclipse.platform/css/whatsnew/whatsnew.css b/platform/org.eclipse.platform/css/whatsnew/whatsnew.css
deleted file mode 100644
index db426eb..0000000
--- a/platform/org.eclipse.platform/css/whatsnew/whatsnew.css
+++ /dev/null
@@ -1,129 +0,0 @@
-body {

-	background-image : url(../graphics/contentpage/whatsnew_wtr.jpg);

-}

-

-.page { min-height : 500px; }

-

-/* show the "selected" image for this page */

-#navigation-links a#news img, #navigation-links a#news:hover img { background-image : url(../graphics/icons/ctool/whatsnew48sel.gif); }

-

-/* 

- * Set up the content of the Whats New page to be displayed in 

- * two columns that are centered in the middle of the page.

- */

-

-#noteworthy-links {

-	text-align : left;

-	width : 760px;

-	/* To center in Moz (have to use text-align for IE) */	

-	margin: 0px auto;

-}

-

-#noteworthy-links a { 

-	width : 370px;

-	text-align : left; 

-	margin-left : 5px;

-	margin-right : 5px;

-	margin-top : 5px;

-	margin-bottom : -20px;

-	vertical-align : top;

-}

-

-#noteworthy-links > a { vertical-align : middle; }

-

-#noteworthy-links a img {

-	height : 57px;

-	width : 57px;

-	vertical-align : middle;

-}

-

-#noteworthy-links a .link-label {

-	display : block;

-	width : 300px;

-	position : relative;

-	top : -50px;

-	left : 60px;

-}

-

-#noteworthy-links a p .text {

-	display : block;

-	width : 300px;

-	position : relative;

-	top : -45px;

-	left : 53px;

-}

-

-/* Special case for Mozilla, because the links are displayed

-   in 1 vertical column instead of 2 centered columns */

-#noteworthy-links > a { width : 700px; }

-#noteworthy-links a > .link-label { width : 700px; }

-#noteworthy-links a p > .text { width : 700px; }

-

-#noteworthy-links a:hover { border-right : 5px; }

-

-#noteworthy-links a img { background-image : url(../graphics/icons/obj48/new_obj.gif); }

-#noteworthy-links a:hover img { background-image : url(../graphics/icons/obj48/newhov_obj.gif); }

-

-

-#news-links {

-	text-align : left;

-	width : 760px;

-	/* To center in Moz (have to use text-align for IE) */	

-	margin: 0px auto;

-}

-

-#news-links a { 

-	width : 370px;

-	text-align : left; 

-	margin-left : 5px;

-	margin-right : 5px;

-	margin-top : 5px;

-	margin-bottom : -20px;

-	vertical-align : top;

-}

-

-#news-links > a { vertical-align : middle; }

-

-#news-links a img {

-	height : 57px;

-	width : 57px;

-	vertical-align : middle;

-}

-

-#news-links a .link-label {

-	display : block;

-	width : 300px;

-	position : relative;

-	top : -50px;

-	left : 60px;

-}

-

-#news-links a p .text {

-	display : block;

-	width : 300px;

-	position : relative;

-	top : -45px;

-	left : 53px;

-}

-

-/* Special case for Mozilla, because the links are displayed

-   in 1 vertical column instead of 2 centered columns */

-#news-links > a { 	width : 700px; }

-#news-links a > .link-label { width : 700px; }

-#news-links a p > .text { width : 700px; }

-

-#news-links a:hover { border-right : 5px; }

-

-a#new-and-noteworthy img { background-image : url(../graphics/icons/obj48/new_obj.gif); }

-a#new-and-noteworthy:hover img { background-image : url(../graphics/icons/obj48/newhov_obj.gif); }

-

-a#migration img { background-image : url(../graphics/icons/obj48/migrate_obj.gif); }

-a#migration:hover img { background-image : url(../graphics/icons/obj48/migratehov_obj.gif); }

-

-a#updates img { background-image : url(../graphics/icons/obj48/updates_obj.gif); }

-a#updates:hover img { background-image : url(../graphics/icons/obj48/updateshov_obj.gif); }

-

-a#eclipse img { background-image : url(../graphics/icons/obj48/community_obj.gif); }

-a#eclipse:hover img { background-image : url(../graphics/icons/obj48/communityhov_obj.gif); }

-

-

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/intro.gif b/platform/org.eclipse.platform/intro.gif
deleted file mode 100644
index eb7b90c..0000000
--- a/platform/org.eclipse.platform/intro.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/introContent.xml b/platform/org.eclipse.platform/introContent.xml
deleted file mode 100644
index 35bd732..0000000
--- a/platform/org.eclipse.platform/introContent.xml
+++ /dev/null
@@ -1,195 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<introContent>
-  <!-- 
-
--->
-  <page alt-style="css/root_swt.properties" style="css/root.css" id="root" style-id="page">
-    <title style-id="intro-header">Welcome to Eclipse 3.0</title>
-    <group id="links-background">
-      <group id="page-links">
-        <link label="Overview" url="http://org.eclipse.ui.intro/showPage?id=overview" id="overview" style-id="left">
-          <img id="overview_img" style-id="content-img" src="css/graphics/icons/etool/overview72.gif" alt="Overview"></img>
-          <text>Find out what Eclipse is all about</text>
-        </link>
-        <link label="Tutorials" url="http://org.eclipse.ui.intro/showPage?id=tutorials" id="tutorials" style-id="left">
-	      <img id="tutorials_img" style-id="content-img" src="css/graphics/icons/etool/tutorials72.gif" alt="Tutorials"></img>
-          <text>Let us guide you through Eclipse end-to-end tutorials</text>
-        </link>
-        <link label="Samples" url="http://org.eclipse.ui.intro/showPage?id=samples" id="samples" style-id="right">
-          <img id="samples_img" style-id="content-img" src="css/graphics/icons/etool/samples72.gif" alt="Samples"></img>
-          <text>Explore Eclipse development through code samples</text>
-        </link>
-        <link label="What&apos;s New" url="http://org.eclipse.ui.intro/showPage?id=news" id="news" style-id="right">
-          <img id="whatsnew_img" style-id="content-img" src="css/graphics/icons/etool/whatsnew72.gif" alt="What&apos;s New"></img>
-          <text>Find out what is new in this release</text>
-        </link>
-      </group>
-    </group>
-    <group id="action-links">
-      <link url="http://org.eclipse.ui.intro/close" label="Workbench" id="workbench">
-        <img id="workbench_img" style-id="content-img" src="css/graphics/icons/etool/wb48.gif" alt="Go to the workbench"></img>
-        <text>Go to the workbench</text>
-      </link>
-    </group>
-  </page>
-  <!-- 
-
--->
-  <page alt-style="css/standby_swt.properties" style="css/standby_root.css" id="standby" style-id="page">
-    <title style-id="intro-header">Welcome to Eclipse 3.0</title>
-    <group id="links-background">
-      <group id="page-links">
-        <link label="Overview" url="http://org.eclipse.ui.intro/showPage?id=overview&amp;standby=false" id="overview" style-id="left">
-          <text>Find out what Eclipse is all about</text>
-        </link>
-        <link label="Tutorials" url="http://org.eclipse.ui.intro/showPage?id=tutorials&amp;standby=false" id="tutorials" style-id="left">
-          <text>Let us guide you through Eclipse end-to-end tutorials</text>
-        </link>
-        <link label="Samples" url="http://org.eclipse.ui.intro/showPage?id=samples&amp;standby=false" id="samples" style-id="right">
-          <text>Explore Eclipse development through code samples</text>
-        </link>
-        <link label="What&apos;s New" url="http://org.eclipse.ui.intro/showPage?id=news&amp;standby=false" id="news" style-id="right">
-          <text>Find out what is new in this release</text>
-        </link>
-      </group>
-    </group>
-  </page>
-  <!--
-
--->
-  <page style="css/overview/overview.css" alt-style="css/overview/swt.properties" id="overview" style-id="page">
-    <title style-id="intro-header">Welcome to Eclipse 3.0</title>
-    <group id="background-image" filteredFrom="swt"/>
-    <group id="curve-image" filteredFrom="swt"/>
-    <group id="navigation-links" filteredFrom="swt">
-      <group id="page-links">
-        <link label="Overview" url="http://org.eclipse.ui.intro/showPage?id=overview" id="overview" style-id="left">
-          <text>Find out what Eclipse is all about</text>
-        </link>
-        <link label="Tutorials" url="http://org.eclipse.ui.intro/showPage?id=tutorials" id="tutorials" style-id="left">
-          <text>Let us guide you through Eclipse end-to-end tutorials</text>
-        </link>
-        <link label="Samples" url="http://org.eclipse.ui.intro/showPage?id=samples" id="samples" style-id="right">
-          <text>Explore Eclipse development through code samples</text>
-        </link>
-        <link label="What&apos;s New" url="http://org.eclipse.ui.intro/showPage?id=news" id="news" style-id="right">
-          <text>Find out what is new in this release</text>
-        </link>
-      </group>
-      <group id="action-links">
-      	<link url="http://org.eclipse.ui.intro/close" label="Workbench" id="workbench">
-        	<text>Go to the workbench</text>
-      	</link>
-      </group>
-    </group>
-    <!-- -->
-    <group id="page-content">
-      <group id="content-header" label="OVERVIEW" filteredFrom="swt"></group>
-      <text style-id="page-title" id="page-title" filteredFrom="html">OVERVIEW</text>
-      <text style-id="page-description" id="page-description">Eclipse is a kind of universal tool platform - an open extensible IDE for anything and nothing in particular. It provides a feature-rich development environment that allows the developer to efficiently create tools that integrate seamlessly into the Eclipse Platform.</text>
-      <group id="overview-links">
-	<anchor id="beginAnchor"/>
-        <link label="Workbench basics" url="http://org.eclipse.ui.intro/showHelpTopic?id=/org.eclipse.platform.doc.user/concepts/concepts-2.htm" id="basics">
-          <text>Learn about basic Eclipse workbench concepts</text>
-        </link>
-        <link label="Team support" url="http://org.eclipse.ui.intro/showHelpTopic?id=/org.eclipse.platform.doc.user/concepts/concepts-26.htm" id="team">
-          <text>Find out how to collaborate with other developers</text>
-        </link>
-        <anchor id="jdtAnchor"/>
-        <anchor id="pdeAnchor"/>
-	<anchor id="endAnchor"/>
-      </group>
-    </group>
-  </page>
-  <!-- 
-
--->
-  <page style="css/tutorials/tutorials.css" alt-style="css/tutorials/swt.properties" id="tutorials" style-id="page">
-    <title style-id="intro-header">Welcome to Eclipse 3.0</title>
-    <group id="background-image" filteredFrom="swt"/>
-    <group id="curve-image" filteredFrom="swt"/>
-    <include path="overview/navigation-links"/>
-    <group id="page-content">
-      <group id="content-header" label="TUTORIALS" filteredFrom="swt"></group>
-      <text style-id="page-title" id="page-title" filteredFrom="html">TUTORIALS</text>
-      <text style-id="page-description" id="page-description">Learn how to be productive using Eclipse by completing end-to-end tutorials that will guide you along the way.</text>
-      <anchor id="beginAnchor"/>
-      <anchor id="jdtAnchor"/>
-      <anchor id="pdeAnchor"/>
-      <anchor id="endAnchor"/>
-    </group>
-  </page>
-  <!-- 
-
--->
-  <page style="css/samples/samples.css" alt-style="css/samples/swt.properties" id="samples" style-id="page">
-    <title style-id="intro-header">Welcome to Eclipse 3.0</title>
-    <group id="background-image" filteredFrom="swt"/>
-    <group id="curve-image" filteredFrom="swt"/>
-    <include path="overview/navigation-links"/>
-    <group id="page-content">
-      <group id="content-header" label="SAMPLES" filteredFrom="swt"></group>
-      <text style-id="page-title" id="page-title" filteredFrom="html">SAMPLES</text>
-      <text style-id="page-description" id="page-description">Explore Eclipse by installing prefabricated samples (may require Internet connection).</text>
-      <anchor id="beginAnchor"/>
-      <group label="SWT" id="swt" style-id="samples-group">
-        <text style-id="group-description">Run SWT samples using either the standalone SWT launcher or as an integrated workbench view.</text>
-        <link label="Workbench views and standalone applications" url="http://org.eclipse.ui.intro/runAction?pluginId=org.eclipse.pde.ui&amp;class=org.eclipse.pde.ui.internal.samples.ShowSampleAction&amp;id=org.eclipse.sdk.samples.swt.examples" id="swt-examples" style-id="sample-link">
-          <text>The SWT Example launcher will allow you to launch a collection of SWT examples.  Some of the examples can be run independent of the eclipse platform and others will be available as views inside the workbench.</text>
-        </link>
-        
-        <anchor id="swtGroupAnchor"/>
-      </group>
-      <group label="Workbench" id="workbench" style-id="samples-group">
-        <text style-id="group-description">The following samples demonstrate how to tightly integrate into the Eclipse workbench.</text>
-        <link label="Multi-page editor" url="http://org.eclipse.ui.intro/runAction?pluginId=org.eclipse.pde.ui&amp;class=org.eclipse.pde.ui.internal.samples.ShowSampleAction&amp;id=org.eclipse.sdk.samples.multipageeditor" id="multi-page-editor" style-id="sample-link">
-          <text>Shows how to create an editor with multiple pages</text>
-        </link>
-        <link label="Property sheet and outline" url="http://org.eclipse.ui.intro/runAction?pluginId=org.eclipse.pde.ui&amp;class=org.eclipse.pde.ui.internal.samples.ShowSampleAction&amp;id=org.eclipse.sdk.samples.propertysheet" id="property-sheet" style-id="sample-link">
-          <text>Demonstrates how to use property sheet and outline views</text>
-        </link>
-        <link label="Readme tool" url="http://org.eclipse.ui.intro/runAction?pluginId=org.eclipse.pde.ui&amp;class=org.eclipse.pde.ui.internal.samples.ShowSampleAction&amp;id=org.eclipse.sdk.samples.readmetool" id="readmetool" style-id="sample-link">
-          <text>Shows how to create your own extension points</text>
-        </link>
-        <anchor id="jdtAnchor"/>
-        <anchor id="workbenchGroupAnchor"/>
-      </group>
-      <anchor id="endAnchor"/>
-    </group>
-  </page>
-  <!-- 
-
--->
-  <page style="css/whatsnew/whatsnew.css" alt-style="css/whatsnew/swt.properties" id="news" style-id="page">
-    <title style-id="intro-header">Welcome to Eclipse 3.0</title>
-    <group id="background-image" filteredFrom="swt"/>
-    <group id="curve-image" filteredFrom="swt"/>
-    <include path="overview/navigation-links"/>
-    <group id="page-content">
-      <group id="content-header" label="WHAT'S NEW" filteredFrom="swt"></group>
-      <text style-id="page-title" id="page-title" filteredFrom="html">WHAT'S NEW</text>
-      <anchor id="beginAnchor"/>
-      <group id="noteworthy-links" label="New and Noteworthy">
-        <link label="Eclipse Platform" url="http://org.eclipse.ui.intro/showHelpTopic?id=/org.eclipse.platform.doc.user/whatsNew/platform_whatsnew.html" id="platform-noteworthy" style-id="noteworthy-link">
-          <text>Find out about the major new features in this release</text>
-        </link>
-        <anchor id="jdtAnchor"/>
-        <anchor id="pdeAnchor"/>
-        <anchor id="generalAnchor"/>
-      </group>
-      <group id="news-links" label="General">
-        <link label="Migration from the previous release" url="http://org.eclipse.ui.intro/showHelpTopic?id=/org.eclipse.platform.doc.isv/porting/eclipse_3_0_porting_guide.html" id="migration">
-          <text>Learn what you need to do to make your old code work in Eclipse 3.0</text>
-        </link>
-        <link label="New Updates" url="http://org.eclipse.ui.intro/runAction?pluginId=org.eclipse.ui.ide&amp;class=org.eclipse.ui.internal.ide.update.InstallWizardAction" id="updates">
-          <text>Get the latest updates from Eclipse.org</text>
-        </link>
-        <link label="Eclipse community" url="http://www.eclipse.org" id="eclipse">
-          <text>Join the community, read articles and news on Eclipse.org</text>
-        </link>
-	<anchor id="linksAnchor"/>
-      </group>
-      <anchor id="endAnchor"/>
-    </group>
-  </page>
-</introContent>
diff --git a/platform/org.eclipse.platform/plugin.properties b/platform/org.eclipse.platform/plugin.properties
deleted file mode 100644
index 0290c90..0000000
--- a/platform/org.eclipse.platform/plugin.properties
+++ /dev/null
@@ -1,31 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-pluginName=Eclipse Platform
-providerName=Eclipse.org
-
-productName=Eclipse Platform
-productBlurb=Eclipse Platform\n\
-\n\
-Version: 3.1.0\n\
-Build id: {0}\n\
-\n\
-(c) Copyright Eclipse contributors and others 2000, 2004.  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/
-
-cheatsheet.cvs.name= CVS Tasks
-cheatsheet.cvs.desc= Go through the main CVS tasks using the cheat sheet
-shortcut.overview.tooltip = Overview
-shortcut.tutorials.tooltip = Tutorials
-shortcut.samples.tooltip = Samples
-shortcut.whatsnew.tooltip = What's New
diff --git a/platform/org.eclipse.platform/plugin.xml b/platform/org.eclipse.platform/plugin.xml
deleted file mode 100644
index 1a398d4..0000000
--- a/platform/org.eclipse.platform/plugin.xml
+++ /dev/null
@@ -1,104 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.platform"
-   name="%pluginName"
-   version="3.1.0"
-   provider-name="%providerName">
-
-   <runtime>
-      <library name="startup.jar"/>
-      <library name="platform.jar">
-         <export name="*"/>
-      </library>
-   </runtime>   
-   <requires>
-      <import plugin="org.eclipse.ui.intro" optional="true"/>
-      <import plugin="org.eclipse.ui.cheatsheets" optional="true"/>
-      <import plugin="org.eclipse.ui.forms" optional="true"/>
-      <import plugin="org.eclipse.ui" optional="true"/>
-   </requires>
-   
-   <extension id="ide" point="org.eclipse.core.runtime.products"> 
-      <product name="%productName" application="org.eclipse.ui.ide.workbench" description="%productBlurb"> 
-          <property name="windowImages" value="eclipse.gif,eclipse32.gif"/> 
-          <property name="aboutImage" value="eclipse_lg.gif"/> 
-          <property name="aboutText" value="%productBlurb"/> 
-          <property name="appName" value="Eclipse"/> 
-          <property name="preferenceCustomization" value="plugin_customization.ini"/> 
-      </product> 
-   </extension> 
-
-   <extension  
-         point="org.eclipse.ui.intro">
-      <intro
-            class="org.eclipse.ui.intro.config.CustomizableIntroPart"
-            id="org.eclipse.platform.intro"
-            icon="intro.gif">
-      </intro>
-      <introProductBinding
-            introId="org.eclipse.platform.intro"
-            productId="org.eclipse.platform.ide">
-      </introProductBinding>
-   </extension>
-   <extension   
-         id="intro"
-         point="org.eclipse.ui.intro.config">
-      <config
-            introId="org.eclipse.platform.intro"
-            id="org.eclipse.platform.introConfig"
-            content="$nl$/introContent.xml">
-         <presentation
-               home-page-id="root" standby-page-id="standby">
-            <implementation
-                  ws="win32"
-                  style="css/shared.css"
-                  kind="html"
-                  os="win32">
-            </implementation>
-            <implementation
-                  kind="swt">
-            </implementation>
-            <launchBar location="right">
-               <shortcut
-                     tooltip="%shortcut.overview.tooltip"
-                     icon="css/graphics/icons/etool/overview.gif"
-                     url="http://org.eclipse.ui.intro/showPage?id=overview"/>
-               <shortcut
-                     tooltip="%shortcut.tutorials.tooltip"
-                     icon="css/graphics/icons/etool/tutorials.gif"
-                     url="http://org.eclipse.ui.intro/showPage?id=tutorials"/>
-               <shortcut
-                     tooltip="%shortcut.samples.tooltip"
-                     icon="css/graphics/icons/etool/samples.gif"
-                     url="http://org.eclipse.ui.intro/showPage?id=samples"/>
-               <shortcut
-                     tooltip="%shortcut.whatsnew.tooltip"
-                     icon="css/graphics/icons/etool/whatsnew.gif"
-                     url="http://org.eclipse.ui.intro/showPage?id=news"/>                                             
-            </launchBar>
-         </presentation>
-      </config>
-   </extension>
-   <extension
-         point="org.eclipse.ui.cheatsheets.cheatSheetContent">
-      <cheatsheet
-            name="%cheatsheet.cvs.name"
-            contentFile="$nl$/cheatsheets/CVS_1.xml"
-            id="org.eclipse.platform.cvs_1">
-         <description>
-            %cheatsheet.cvs.desc
-         </description>
-      </cheatsheet>
-   </extension>
-   <!-- =====================================================  -->
-   <!-- Standby Content Part contributions                     -->
-   <!-- =====================================================  -->
-   <extension point="org.eclipse.ui.intro.configExtension">
-      <standbyContentPart
-            id="org.eclipse.platform.cheatsheet"
-            class="org.eclipse.platform.internal.CheatSheetStandbyContent"
-            pluginId="org.eclipse.platform"/>
-   </extension>
-
-</plugin>
diff --git a/platform/org.eclipse.platform/plugin_customization.ini b/platform/org.eclipse.platform/plugin_customization.ini
deleted file mode 100644
index f22863c..0000000
--- a/platform/org.eclipse.platform/plugin_customization.ini
+++ /dev/null
@@ -1,17 +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
-
-# new-style tabs by default
-org.eclipse.ui/SHOW_TRADITIONAL_STYLE_TABS=false
-
-# put the perspective switcher on the top right
-org.eclipse.ui/DOCK_PERSPECTIVE_BAR=topRight
diff --git a/platform/org.eclipse.platform/plugin_customization.properties b/platform/org.eclipse.platform/plugin_customization.properties
deleted file mode 100644
index dfdc241..0000000
--- a/platform/org.eclipse.platform/plugin_customization.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
-###############################################################################
-# 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 8f98a73..0000000
--- a/platform/org.eclipse.platform/splash.bmp
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.platform/src-intro/org/eclipse/platform/internal/CheatSheetStandbyContent.java b/platform/org.eclipse.platform/src-intro/org/eclipse/platform/internal/CheatSheetStandbyContent.java
deleted file mode 100644
index bdfb019..0000000
--- a/platform/org.eclipse.platform/src-intro/org/eclipse/platform/internal/CheatSheetStandbyContent.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- ******************************************************************************/
-package org.eclipse.platform.internal;
-
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.ui.*;
-import org.eclipse.ui.cheatsheets.*;
-import org.eclipse.ui.forms.widgets.*;
-import org.eclipse.ui.intro.*;
-import org.eclipse.ui.intro.config.*;
-
-public final class CheatSheetStandbyContent implements IStandbyContentPart {
-
-    private static String MEMENTO_CHEATSHEET_ID_ATT = "cheatsheetId"; //$NON-NLS-1$
-
-    private IIntroPart introPart;
-    private ICheatSheetViewer viewer;
-    private Composite container;
-    private String input;
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.ui.intro.internal.parts.IStandbyContentPart#init(org.eclipse.ui.intro.IIntroPart)
-     */
-    public void init(IIntroPart introPart, IMemento memento) {
-        this.introPart = introPart;
-        // try to restore last state.
-        input = getCachedInput(memento);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.ui.intro.internal.parts.IStandbyContentPart#createControl(org.eclipse.swt.widgets.Composite,
-     *      org.eclipse.ui.forms.widgets.FormToolkit)
-     */
-    public void createPartControl(Composite parent, FormToolkit toolkit) {
-        container = toolkit.createComposite(parent);
-        FillLayout layout = new FillLayout();
-        layout.marginWidth = layout.marginHeight = 0;
-        container.setLayout(layout);
-
-        viewer = CheatSheetViewerFactory.createCheatSheetView();
-        viewer.createPartControl(container);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.ui.intro.internal.parts.IStandbyContentPart#getControl()
-     */
-    public Control getControl() {
-        return container;
-    }
-
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.ui.intro.internal.parts.IStandbyContentPart#setInput(java.lang.Object)
-     */
-    public void setInput(Object input) {
-        // if the new input is null, use cacched input from momento.
-        if (input != null)
-            this.input = (String) input;
-        viewer.setInput(this.input);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.ui.intro.internal.parts.IStandbyContentPart#setFocus()
-     */
-    public void setFocus() {
-        viewer.setFocus();
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.ui.intro.internal.parts.IStandbyContentPart#dispose()
-     */
-    public void dispose() {
-
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.ui.intro.config.IStandbyContentPart#saveState(org.eclipse.ui.IMemento)
-     */
-    public void saveState(IMemento memento) {
-        String currentCheatSheetId = viewer.getCheatSheetID();
-        if (currentCheatSheetId != null)
-            memento.putString(MEMENTO_CHEATSHEET_ID_ATT, currentCheatSheetId);
-    }
-
-    /**
-     * Tries to create the last content part viewed, based on content part id..
-     * 
-     * @param memento
-     * @return
-     */
-    private String getCachedInput(IMemento memento) {
-        if (memento == null)
-            return null;
-        return memento.getString(MEMENTO_CHEATSHEET_ID_ATT);
-
-    }
-
-}
\ No newline at end of file
diff --git a/platform/org.eclipse.platform/src/META-INF/MANIFEST.MF b/platform/org.eclipse.platform/src/META-INF/MANIFEST.MF
deleted file mode 100644
index 31877ee..0000000
--- a/platform/org.eclipse.platform/src/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,2 +0,0 @@
-Manifest-Version: 1.0
-Main-Class: org.eclipse.core.launcher.Main
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 7683b2f..0000000
--- a/platform/org.eclipse.platform/src/org/eclipse/core/launcher/Main.java
+++ /dev/null
@@ -1,1720 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 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.*;
-
-/**
- * The launcher for Eclipse.
- */
-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 URL installLocation = null;
-
-	/**
-	 * The location of the configuration information for this instance
-	 */
-	protected URL configurationLocation = null;
-
-	/**
-	 * The location of the configuration information in the install root
-	 */
-	protected String parentConfigurationLocation = null;
-
-	/**
-	 * The id of the bundle that will contain the framework to run.  Defaults to org.eclipse.osgi.
-	 */
-	protected String framework = OSGI;
-
-	/**
-	 * The extra development time class path entries.
-	 */
-	protected String devClassPath = null;
-
-	/**
-	 * Indicates whether this instance is running in development mode.
-	 */
-	protected boolean inDevelopmentMode = false;
-
-	private String exitData = null;
-	private String name = null; // The name to brand the launcher
-	private String launcher = null; // The full path to the launcher
-
-	private String vm = null;
-	private String[] vmargs = null;
-	private String[] commands = null;
-	private String[] extensionPaths = null;
-
-	// splash handling
-	private String showSplash = null;
-	private String endSplash = null;
-	private boolean initialize = false;
-	private Process showProcess = null;
-	private boolean splashDown = false;
-	private final Runnable endSplashHandler = new Runnable() {
-		public void run() {
-			takeDownSplash();
-		}
-	};
-
-	// command line args
-	private static final String FRAMEWORK = "-framework"; //$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 VM = "-vm"; //$NON-NLS-1$
-	private static final String VMARGS = "-vmargs"; //$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 CONFIGURATION = "-configuration"; //$NON-NLS-1$
-	private static final String EXITDATA = "-exitdata"; //$NON-NLS-1$
-	private static final String NOSPLASH = "-nosplash"; //$NON-NLS-1$
-	private static final String SHOWSPLASH = "-showsplash"; //$NON-NLS-1$
-	private static final String NAME = "-name"; //$NON-NLS-1$
-	private static final String LAUNCHER = "-launcher"; //$NON-NLS-1$
-
-	private static final String ENDSPLASH = "-endsplash"; //$NON-NLS-1$
-	private static final String SPLASH_IMAGE = "splash.bmp"; //$NON-NLS-1$
-
-	private static final String OSGI = "org.eclipse.osgi"; //$NON-NLS-1$
-	private static final String STARTER = "org.eclipse.core.runtime.adaptor.EclipseStarter"; //$NON-NLS-1$
-	private static final String PLATFORM_URL = "platform:/base/"; //$NON-NLS-1$
-	private static final String ECLIPSE_PROPERTIES = "eclipse.properties"; //$NON-NLS-1$
-	private static final String FILE_SCHEME = "file:"; //$NON-NLS-1$	
-
-	private static final String DEFAULT_JRE_REQUIRED = "1.4.1"; //$NON-NLS-1$
-	
-	// constants: configuration file location
-	private static final String CONFIG_DIR = "configuration/"; //$NON-NLS-1$
-	private static final String CONFIG_FILE = "config.ini"; //$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 ECLIPSE = "eclipse"; //$NON-NLS-1$
-	private static final String PRODUCT_SITE_MARKER = ".eclipseproduct"; //$NON-NLS-1$
-	private static final String PRODUCT_SITE_ID = "id"; //$NON-NLS-1$
-	private static final String PRODUCT_SITE_VERSION = "version"; //$NON-NLS-1$
-
-	// constants: System property keys and/or configuration file elements
-	private static final String PROP_USER_HOME = "user.home"; //$NON-NLS-1$
-	private static final String PROP_USER_DIR = "user.dir"; //$NON-NLS-1$
-	private static final String PROP_INSTALL_AREA = "osgi.install.area"; //$NON-NLS-1$
-	private static final String PROP_CONFIG_AREA = "osgi.configuration.area"; //$NON-NLS-1$
-	private static final String PROP_CONFIG_AREA_DEFAULT = "osgi.configuration.area.default"; //$NON-NLS-1$
-	private static final String PROP_BASE_CONFIG_AREA = "osgi.baseConfiguration.area"; //$NON-NLS-1$
-	private static final String PROP_SHARED_CONFIG_AREA = "osgi.sharedConfiguration.area"; //$NON-NLS-1$
-	private static final String PROP_CONFIG_CASCADED = "osgi.configuration.cascaded"; //$NON-NLS-1$
-	private static final String PROP_FRAMEWORK = "osgi.framework"; //$NON-NLS-1$
-	private static final String PROP_SPLASHPATH = "osgi.splashPath"; //$NON-NLS-1$
-	private static final String PROP_SPLASHLOCATION = "osgi.splashLocation"; //$NON-NLS-1$
-	private static final String PROP_CLASSPATH = "osgi.frameworkClassPath"; //$NON-NLS-1$
-	private static final String PROP_EXTENSIONS = "osgi.framework.extensions"; //$NON-NLS-1$
-	private static final String PROP_LOGFILE = "osgi.logfile"; //$NON-NLS-1$
-	private static final String PROP_REQUIRED_JAVA_VERSION = "osgi.requiredJavaVersion"; //$NON-NLS-1$
-	private static final String PROP_EOF = "eof"; //$NON-NLS-1$
-
-	private static final String PROP_EXITCODE = "eclipse.exitcode"; //$NON-NLS-1$
-	private static final String PROP_EXITDATA = "eclipse.exitdata"; //$NON-NLS-1$
-
-	private static final String PROP_VM = "eclipse.vm"; //$NON-NLS-1$
-	private static final String PROP_VMARGS = "eclipse.vmargs"; //$NON-NLS-1$
-	private static final String PROP_COMMANDS = "eclipse.commands"; //$NON-NLS-1$
-
-	// Data mode constants for user, configuration and data locations.
-	private static final String NONE = "@none"; //$NON-NLS-1$
-	private static final String NO_DEFAULT = "@noDefault"; //$NON-NLS-1$
-	private static final String USER_HOME = "@user.home"; //$NON-NLS-1$
-	private static final String USER_DIR = "@user.dir"; //$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 File logFile = null;
-	protected BufferedWriter log = null;
-	protected boolean newSession = true;
-	
-	/**
-	 * A structured form for a version identifier.
-	 * 
-	 * @see http://java.sun.com/j2se/versioning_naming.html for information on valid version strings
-	 */
-	static class Identifier {
-		private static final String DELIM = ". _-"; //$NON-NLS-1$
-		private int major, minor, service;
-		Identifier(int major, int minor, int service) {
-			super();
-			this.major = major;
-			this.minor = minor;
-			this.service = service;
-		}
-		/**
-		 * @throws NumberFormatException if cannot parse the major and minor version components
-		 */
-		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());
-
-			try {
-				// service
-				if (tokenizer.hasMoreTokens())
-					service = Integer.parseInt(tokenizer.nextToken());
-			} catch (NumberFormatException nfe) {
-				// ignore the service qualifier in that case and default to 0
-				// this will allow us to tolerate other non-conventional version numbers 
-			}
-		}
-		/**
-		 * 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
-		 */
-		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 void basicRun(String[] args) throws Exception {
-		System.getProperties().setProperty("eclipse.startTime", Long.toString(System.currentTimeMillis())); //$NON-NLS-1$
-		commands = args;
-		String[] passThruArgs = processCommandLine(args);
-		setupVMProperties();
-		processConfiguration();
-		
-		//ensure minimum Java version
-		if (!checkVersion(System.getProperty("java.version"), System.getProperty(PROP_REQUIRED_JAVA_VERSION, DEFAULT_JRE_REQUIRED))) //$NON-NLS-1$
-			return;
-		
-		// need to ensure that getInstallLocation is called at least once to initialize the value.
-		// Do this AFTER processing the configuration to allow the configuration to set
-		// the install location.  
-		getInstallLocation();
-
-		// 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
-		URLClassLoader loader = new StartupClassLoader(bootPath, null);
-		Class clazz = loader.loadClass(STARTER);
-		Method method = clazz.getDeclaredMethod("run", new Class[] {String[].class, Runnable.class}); //$NON-NLS-1$
-		try {
-			method.invoke(clazz, new Object[] {passThruArgs, endSplashHandler});
-		} catch (InvocationTargetException e) {
-			if (e.getTargetException() instanceof Error)
-				throw (Error) e.getTargetException();
-			else if (e.getTargetException() instanceof Exception)
-				throw (Exception) e.getTargetException();
-			else
-				//could be a subclass of Throwable!
-				throw e;
-		}
-	}
-
-	/**
-	 * Checks whether the given available version is greater or equal to the 
-	 * given required version.
-	 * <p>Will set PROP_EXITCODE/PROP_EXITDATA accordingly if check fails.</p>
-	 *   
-	 * @return a boolean indicating whether the checking passed 
-	 */
-	private boolean checkVersion(String availableVersion, String requiredVersion) {
-		if (requiredVersion == null || availableVersion == null)
-			return true;
-		try {
-			Identifier required = new Identifier(requiredVersion);
-			Identifier available = new Identifier(availableVersion);
-			boolean compatible = available.isGreaterEqualTo(required);
-			if (!compatible) {
-				// any non-zero value should do it - 14 used to be used for version incompatibility in Eclipse 2.1 
-				System.getProperties().put(PROP_EXITCODE, "14"); //$NON-NLS-1$
-				System.getProperties().put(PROP_EXITDATA, "Required Java version: "+ requiredVersion + ". Available: " + availableVersion + '.'); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-			return compatible;
-		} 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;
-		}
-	}
-	
-	/**
-	 * 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
-	 */
-	private 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[list.size()]);
-	}
-
-	/**
-	 * 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
-	 */
-	private URL[] getDevPath(URL base) throws IOException {
-		ArrayList result = new ArrayList(5);
-		if (inDevelopmentMode)
-			addDevEntries(base, result); //$NON-NLS-1$
-		//The jars from the base always need to be added, even when running in dev mode (bug 46772)
-		addBaseJars(base, result);
-		return (URL[]) result.toArray(new URL[result.size()]);
-	}
-
-	private void readFrameworkExtensions(URL base, ArrayList result) throws IOException {
-		String[] extensions = getArrayFromList(System.getProperties().getProperty(PROP_EXTENSIONS));
-		String parent = new File(base.getFile()).getParent().toString();
-		ArrayList extensionResults = new ArrayList(extensions.length);
-		for (int i = 0; i < extensions.length; i++) {
-			//Search the extension relatively to the osgi plugin 
-			String path = searchFor(extensions[i], parent);
-			if (path == null) {
-				log("Could not find extension: " + extensions[i]); //$NON-NLS-1$
-				continue;
-			}
-			if (debug)
-				System.out.println("Loading extension: " + extensions[i]); //$NON-NLS-1$
-
-			URL extensionURL = null;
-			if (installLocation.getProtocol().equals("file")) { //$NON-NLS-1$
-				extensionResults.add(path);
-				extensionURL = new File(path).toURL();
-			} else
-				extensionURL = new URL(installLocation.getProtocol(), installLocation.getHost(), installLocation.getPort(), path);
-
-			//Load the eclipse.properties of the extension, merge its content, and in case of dev mode add the bin entries
-			Properties extensionProperties = loadProperties(new URL(extensionURL, ECLIPSE_PROPERTIES));
-			String extensionPath = extensionProperties.getProperty(PROP_CLASSPATH);
-			if (extensionPath != null) {
-				if (inDevelopmentMode) 
-					addDevEntries(extensionURL, result);
-				String[] entries = getArrayFromList(extensionPath);
-				String qualifiedPath = ""; //$NON-NLS-1$
-				for (int j = 0; j < entries.length; j++) 
-					qualifiedPath += ", file:" + path + entries[j]; //$NON-NLS-1$
-				extensionProperties.put(PROP_CLASSPATH, qualifiedPath);
-			}
-			mergeProperties(System.getProperties(), extensionProperties);
-		}
-		extensionPaths = (String[]) extensionResults.toArray(new String[extensionResults.size()]);
-	}
-
-	private void addBaseJars(URL base, ArrayList result) throws IOException {
-		String baseJarList = System.getProperty(PROP_CLASSPATH);
-		if (baseJarList == null) {
-			URL url = new URL(base, ECLIPSE_PROPERTIES);
-			if (debug)
-				System.out.println("Loading framework classpath from:\n    " + url.toExternalForm()); //$NON-NLS-1$
-			mergeProperties(System.getProperties(), loadProperties(url));
-			readFrameworkExtensions(base, result);
-			baseJarList = System.getProperties().getProperty(PROP_CLASSPATH);
-			if (baseJarList == null)
-				throw new IOException("Unable to initialize " + PROP_CLASSPATH); //$NON-NLS-1$
-		}
-		String[] baseJars = getArrayFromList(baseJarList);
-		for (int i = 0; i < baseJars.length; i++) {
-			String string = baseJars[i];
-			try {
-				// if the string is a file: URL then *carefully* construct the URL.  Otherwise
-				// just try to build a URL. In either case, if we fail, use string as something to tack
-				// on the end of the base.
-				URL url = null;
-				if (string.startsWith("file:")) //$NON-NLS-1$
-					url = new File(string.substring(5)).toURL();
-				else
-					url = new URL(string);
-				addEntry(url, result);
-			} catch (MalformedURLException e) {
-				addEntry(new URL(base, string), result);
-			}
-		}
-	}
-
-	private void addEntry(URL url, List result) {
-		if (new File(url.getFile()).exists())
-			result.add(url);
-	}
-
-	private void addDevEntries(URL base, List result) throws MalformedURLException {
-		String[] locations = getArrayFromList(devClassPath);
-		for (int i = 0; i < locations.length; i++) {
-			String location = locations[i];
-			File path = new File(location);
-			URL url;
-			if (path.isAbsolute())
-				url = path.toURL();
-			else {
-				// dev path is relative, combine with base location
-				char lastChar = location.charAt(location.length() - 1);
-				if ((location.endsWith(".jar") || (lastChar == '/' || lastChar == '\\'))) //$NON-NLS-1$
-					url = new URL(base, location);
-				else
-					url = new URL(base, location + "/"); //$NON-NLS-1$
-			}
-			addEntry(url, result);
-		}
-	}
-
-	/**
-	 * 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
-	 */
-	private URL[] getBootPath(String base) throws IOException {
-		URL url = null;
-		if (base != null) {
-			url = buildURL(base, true);
-		} else {
-			// search in the root location
-			url = getInstallLocation();
-			String path = new File(url.getFile(), "plugins").toString(); //$NON-NLS-1$
-			path = searchFor(framework, path);
-			if (path == null)
-				throw new RuntimeException("Could not find framework"); //$NON-NLS-1$
-			if (url.getProtocol().equals("file")) //$NON-NLS-1$
-				url = new File(path).toURL();
-			else
-				url = new URL(url.getProtocol(), url.getHost(), url.getPort(), path);
-		}
-		if (System.getProperty(PROP_FRAMEWORK) == null)
-			System.getProperties().put(PROP_FRAMEWORK, url.toExternalForm());
-		if (debug)
-			System.out.println("Framework located:\n    " + url.toExternalForm()); //$NON-NLS-1$
-		// add on any dev path elements
-		URL[] result = getDevPath(url);
-		if (debug) {
-			System.out.println("Framework classpath:"); //$NON-NLS-1$
-			for (int i = 0; i < result.length; i++)
-				System.out.println("    " + result[i].toExternalForm()); //$NON-NLS-1$
-		}
-		return result;
-	}
-
-	/**
-	 * Searches for the given target 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 target directory was found
-	 * @param start the location to begin searching
-	 */
-	private String searchFor(final String target, String start) {
-		FileFilter filter = new FileFilter() {
-			public boolean accept(File candidate) {
-				return candidate.isDirectory() && (candidate.getName().equals(target) || candidate.getName().startsWith(target + "_")); //$NON-NLS-1$
-			}
-		};
-		File[] candidates = new File(start).listFiles(filter); //$NON-NLS-1$
-		if (candidates == null)
-			return null;
-		String result = null;
-		Object maxVersion = null;
-		for (int i = 0; i < candidates.length; i++) {
-			String name = candidates[i].getName();
-			String version = ""; //$NON-NLS-1$ // Note: directory with version suffix is always > than directory without version suffix
-			int index = name.indexOf('_');
-			if (index != -1)
-				version = name.substring(index + 1);
-			Object currentVersion = getVersionElements(version);
-			if (maxVersion == null) {
-				result = candidates[i].getAbsolutePath();
-				maxVersion = currentVersion;
-			} else {
-				if (compareVersion((Object[]) maxVersion, (Object[]) currentVersion) < 0) {
-					result = candidates[i].getAbsolutePath();
-					maxVersion = currentVersion;
-				}
-			}
-		}
-		if (result == null)
-			return null;
-		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;
-	}
-
-	private static URL buildURL(String spec, boolean trailingSlash) {
-		if (spec == null)
-			return null;
-		boolean isFile = spec.startsWith("file:"); //$NON-NLS-1$
-		try {
-			if (isFile)
-				return adjustTrailingSlash(new File(spec.substring(5)).toURL(), trailingSlash);
-			else
-				return new URL(spec);
-		} catch (MalformedURLException e) {
-			// if we failed and it is a file spec, there is nothing more we can do
-			// otherwise, try to make the spec into a file URL.
-			if (isFile)
-				return null;
-			try {
-				return adjustTrailingSlash(new File(spec).toURL(), trailingSlash);
-			} catch (MalformedURLException e1) {
-				return null;
-			}
-		}
-	}
-
-	private static URL adjustTrailingSlash(URL url, boolean trailingSlash) throws MalformedURLException {
-		String file = url.getFile();
-		if (trailingSlash == (file.endsWith("/"))) //$NON-NLS-1$
-			return url;
-		file = trailingSlash ? file + "/" : file.substring(0, file.length() - 1); //$NON-NLS-1$
-		return new URL(url.getProtocol(), url.getHost(), file);
-	}
-
-	private URL buildLocation(String property, URL defaultLocation, String userDefaultAppendage) {
-		URL result = null;
-		String location = System.getProperty(property);
-		System.getProperties().remove(property);
-		// if the instance location is not set, predict where the workspace will be and 
-		// put the instance area inside the workspace meta area.
-		try {
-			if (location == null)
-				result = defaultLocation;
-			else if (location.equalsIgnoreCase(NONE))
-				return null;
-			else if (location.equalsIgnoreCase(NO_DEFAULT))
-				result = buildURL(location, true);
-			else {
-				if (location.startsWith(USER_HOME)) {
-					String base = substituteVar(location, USER_HOME, PROP_USER_HOME);
-					location = new File(base, userDefaultAppendage).getAbsolutePath();
-				} else if (location.startsWith(USER_DIR)) {
-					String base = substituteVar(location, USER_DIR, PROP_USER_DIR);
-					location = new File(base, userDefaultAppendage).getAbsolutePath();
-				}
-				result = buildURL(location, true);
-			}
-		} finally {
-			if (result != null)
-				System.getProperties().put(property, result.toExternalForm());
-		}
-		return result;
-	}
-
-	private String substituteVar(String source, String var, String prop) {
-		String value = System.getProperty(prop, "");
-		return value + source.substring(var.length());
-	}
-
-	/** 
-	 * Retuns the default file system path for the configuration location.
-	 * By default the configuration information is in the installation directory
-	 * if this is writeable.  Otherwise it is located somewhere in the user.home
-	 * area relative to the current product. 
-	 * @return the default file system path for the configuration information
-	 */
-	private String computeDefaultConfigurationLocation() {
-		// 1) We store the config state relative to the 'eclipse' directory if possible
-		// 2) If this directory is read-only 
-		//    we store the state in <user.home>/.eclipse/<application-id>_<version> where <user.home> 
-		//    is unique for each local user, and <application-id> is the one 
-		//    defined in .eclipseproduct marker file. If .eclipseproduct does not
-		//    exist, use "eclipse" as the application-id.
-
-		URL install = getInstallLocation();
-		// TODO a little dangerous here.  Basically we have to assume that it is a file URL.
-		if (install.getProtocol().equals("file")) { //$NON-NLS-1$
-			File installDir = new File(install.getFile());
-			if (canWrite(installDir))
-				return installDir.getAbsolutePath() + File.separator + CONFIG_DIR;
-		}
-		// We can't write in the eclipse install dir so try for some place in the user's home dir
-		return computeDefaultUserAreaLocation(CONFIG_DIR);
-	}
-
-	private static boolean canWrite(File installDir) {
-		if (installDir.canWrite() == false)
-			return false;
-
-		if (!installDir.isDirectory())
-			return false;
-
-		File fileTest = null;
-		try {
-			fileTest = File.createTempFile("writtableArea", null, installDir); //$NON-NLS-1$
-		} catch (IOException e) {
-			//If an exception occured while trying to create the file, it means that it is not writtable
-			return false;
-		} finally {
-			if (fileTest != null)
-				fileTest.delete();
-		}
-		return true;
-	}
-	
-	/**
-	 * Returns a files system path for an area in the user.home region related to the
-	 * current product.  The given appendage is added to this base location
-	 * @param pathAppendage the path segments to add to computed base
-	 * @return a file system location in the user.home area related the the current
-	 *   product and the given appendage
-	 */
-	private String computeDefaultUserAreaLocation(String pathAppendage) {
-		//    we store the state in <user.home>/.eclipse/<application-id>_<version> where <user.home> 
-		//    is unique for each local user, and <application-id> is the one 
-		//    defined in .eclipseproduct marker file. If .eclipseproduct does not
-		//    exist, use "eclipse" as the application-id.
-		URL installURL = getInstallLocation();
-		if (installURL == null)
-			return null;
-		File installDir = new File(installURL.getFile());
-		String appName = "." + ECLIPSE; //$NON-NLS-1$
-		File eclipseProduct = new File(installDir, PRODUCT_SITE_MARKER);
-		if (eclipseProduct.exists()) {
-			Properties props = new Properties();
-			try {
-				props.load(new FileInputStream(eclipseProduct));
-				String appId = props.getProperty(PRODUCT_SITE_ID);
-				if (appId == null || appId.trim().length() == 0)
-					appId = ECLIPSE;
-				String appVersion = props.getProperty(PRODUCT_SITE_VERSION);
-				if (appVersion == null || appVersion.trim().length() == 0)
-					appVersion = ""; //$NON-NLS-1$
-				appName += File.separator + appId + "_" + appVersion; //$NON-NLS-1$
-			} catch (IOException e) {
-				// Do nothing if we get an exception.  We will default to a standard location 
-				// in the user's home dir.
-			}
-		}
-		String userHome = System.getProperty(PROP_USER_HOME);
-		return new File(userHome, appName + "/" + pathAppendage).getAbsolutePath(); //$NON-NLS-1$
-	}
-
-	/**
-	 * Runs this launcher with the arguments specified in the given string.
-	 * 
-	 * @param argString the arguments string
-	 */
-	public static void main(String argString) {
-		Vector list = new Vector(5);
-		for (StringTokenizer tokens = new StringTokenizer(argString, " "); tokens.hasMoreElements();) //$NON-NLS-1$
-			list.addElement(tokens.nextElement());
-		main((String[]) list.toArray(new String[list.size()]));
-	}
-
-	/**
-	 * 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>.
-	 * </p>
-	 * 
-	 * @param args the command line arguments
-	 * @see #run(String[])
-	 */
-	public static void main(String[] args) {
-		int result = new Main().run(args);
-		System.exit(result);
-	}
-
-	/**
-	 * Runs the platform with the given arguments.  The arguments must identify
-	 * an application to run (e.g., <code>-application com.example.application</code>).
-	 * Returns 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.
-	 *
-	 * @param args the command line arguments
-	 */
-	public int run(String[] args) {
-		int result = 0;
-		try {
-			basicRun(args);
-			String exitCode = System.getProperty(PROP_EXITCODE);
-			try {
-				result = exitCode == null ? 0 : Integer.parseInt(exitCode);
-			} catch (NumberFormatException e) {
-				result = 17;
-			}
-		} catch (Throwable e) {
-			// only log the exceptions if they have not been caught by the 
-			// EclipseStarter (i.e., if the exitCode is not 13) 
-			if (!"13".equals(System.getProperty(PROP_EXITCODE))) { //$NON-NLS-1$
-				log("Exception launching the Eclipse Platform:"); //$NON-NLS-1$
-				log(e);
-				String message = "An error has occurred"; //$NON-NLS-1$
-				if (logFile == null)
-					message += " and could not be logged: \n" + e.getMessage(); //$NON-NLS-1$
-				else
-					message += ".  See the log file\n" + logFile.getAbsolutePath(); //$NON-NLS-1$
-				System.getProperties().put(PROP_EXITDATA, message);
-			}
-			// 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.
-			result = 13;
-		} finally {
-			// always try putting down the splash screen just in case the application failed to do so
-			takeDownSplash();			
-		}
-		// Return an int exit code and ensure the system property is set.
-		System.getProperties().put(PROP_EXITCODE, Integer.toString(result));
-		setExitData();
-		return result;
-	}
-
-	private void setExitData() {
-		String data = System.getProperty(PROP_EXITDATA);
-		if (exitData == null || data == null)
-			return;
-		// sync call to the launcher
-		runCommand(true, new String[] {EXITDATA, exitData, data}); //$NON-NLS-1$
-	}
-
-	/**
-	 * Processes the command line arguments.  The general principle is to NOT
-	 * consume the arguments and leave them to be processed by Eclipse proper.
-	 * There are a few args which are directed towards main() and a few others
-	 * which we need to know about. Very few should actually be consumed here.
-	 * 
-	 * @return the arguments to pass through to the launched application
-	 * @param args the command line arguments
-	 */
-	protected String[] processCommandLine(String[] args) {
-		if (args.length == 0)
-			return args;
-		int[] configArgs = new int[args.length];
-		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;
-			}
-
-			// look for and consume the nosplash directive.  This supercedes any
-			// -showsplash command that might be present.
-			if (args[i].equalsIgnoreCase(NOSPLASH)) {
-				splashDown = true;
-				found = true;
-			}
-
-			// check if this is initialization pass
-			if (args[i].equalsIgnoreCase(INITIALIZE)) {
-				initialize = 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;
-			}
-
-			// look for the VM args arg.  We have to do that before looking to see
-			// if the next element is a -arg as the thing following -vmargs may in
-			// fact be another -arg.
-			if (args[i].equalsIgnoreCase(VMARGS)) {
-				// consume the -vmargs arg itself
-				args[i] = null;
-				i++;
-				vmargs = new String[args.length - i];
-				for (int j = 0; i < args.length; i++) {
-					vmargs[j++] = args[i];
-					args[i] = null;
-				}
-				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 development mode and class path entries.  
-			if (args[i - 1].equalsIgnoreCase(DEV)) {
-				inDevelopmentMode = true;
-				devClassPath = processDevArg(arg);
-				continue;
-			}
-
-			// look for the framework to run
-			if (args[i - 1].equalsIgnoreCase(FRAMEWORK)) {
-				framework = arg;
-				found = true;
-			}
-
-			// look for explicitly set install root
-			// Consume the arg here to ensure that the launcher and Eclipse get the 
-			// same value as each other.  
-			if (args[i - 1].equalsIgnoreCase(INSTALL)) {
-				System.getProperties().put(PROP_INSTALL_AREA, arg);
-				found = true;
-			}
-
-			// look for the configuration to use.  
-			// Consume the arg here to ensure that the launcher and Eclipse get the 
-			// same value as each other.  
-			if (args[i - 1].equalsIgnoreCase(CONFIGURATION)) {
-				System.getProperties().put(PROP_CONFIG_AREA, arg);
-				found = true;
-			}
-
-			// look for the command to use to set exit data in the launcher
-			if (args[i - 1].equalsIgnoreCase(EXITDATA)) {
-				exitData = arg;
-				found = true;
-			}
-
-			// look for the command to use to show the splash screen
-			if (args[i - 1].equalsIgnoreCase(SHOWSPLASH)) {
-				showSplash = arg;
-				found = true;
-			}
-
-			// look for the name to use by the launcher
-			if (args[i - 1].equalsIgnoreCase(NAME)) {
-				name = arg;
-				found = true;
-			}
-
-			// look for the launcher location
-			if (args[i - 1].equalsIgnoreCase(LAUNCHER)) {
-				launcher = arg;
-				found = true;
-			}
-			
-			// look for the command to use to end the splash screen
-			if (args[i - 1].equalsIgnoreCase(ENDSPLASH)) {
-				endSplash = arg;
-				found = true;
-			}
-
-			// look for the VM location arg
-			if (args[i - 1].equalsIgnoreCase(VM)) {
-				vm = 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
-		String[] passThruArgs = new String[args.length - configArgIndex - (vmargs == null ? 0 : vmargs.length + 1)];
-		configArgIndex = 0;
-		int j = 0;
-		for (int i = 0; i < args.length; i++) {
-			if (i == configArgs[configArgIndex])
-				configArgIndex++;
-			else if (args[i] != null)
-				passThruArgs[j++] = args[i];
-		}
-		return passThruArgs;
-	}
-
-	private String processDevArg(String arg) {
-		if (arg == null)
-			return null;
-		try {
-			URL location = new URL(arg);
-			Properties props = load(location, null);
-			String result = props.getProperty(OSGI);
-			return result == null ? props.getProperty("*") : result; //$NON-NLS-1$
-		} catch (MalformedURLException e) {
-			// the arg was not a URL so use it as is.
-			return arg;
-		} catch (IOException e) {
-			// TODO consider logging here
-			return null;
-		}
-	}
-
-	private URL getConfigurationLocation() {
-		if (configurationLocation != null)
-			return configurationLocation;
-		configurationLocation = buildLocation(PROP_CONFIG_AREA, null, ""); //$NON-NLS-1$
-		if (configurationLocation == null) {
-			configurationLocation = buildLocation(PROP_CONFIG_AREA_DEFAULT, null, ""); //$NON-NLS-1$
-			if (configurationLocation == null)
-				configurationLocation = buildURL(computeDefaultConfigurationLocation(), true);
-		}
-		if (configurationLocation != null)
-			System.getProperties().put(PROP_CONFIG_AREA, configurationLocation.toExternalForm());
-		if (debug)
-			System.out.println("Configuration location:\n    " + configurationLocation); //$NON-NLS-1$
-		return configurationLocation;
-	}
-
-	private void processConfiguration() {
-		// if the configuration area is not already defined, discover the config area by
-		// trying to find a base config area.  This is either defined in a system property or
-		// is computed relative to the install location.
-		// Note that the config info read here is only used to determine a value 
-		// for the user configuration area
-		URL baseConfigurationLocation = null;
-		Properties baseConfiguration = null;
-		if (System.getProperty(PROP_CONFIG_AREA) == null) {
-			String baseLocation = System.getProperty(PROP_BASE_CONFIG_AREA);
-			if (baseLocation != null)
-				// here the base config cannot have any symbolic (e..g, @xxx) entries.  It must just
-				// point to the config file.
-				baseConfigurationLocation = buildURL(baseLocation, true);
-			if (baseConfigurationLocation == null)
-				try {
-					// here we access the install location but this is very early.  This case will only happen if
-					// the config area is not set and the base config area is not set (or is bogus).
-					// In this case we compute based on the install location.
-					baseConfigurationLocation = new URL(getInstallLocation(), CONFIG_DIR);
-				} catch (MalformedURLException e) {
-					// leave baseConfigurationLocation null
-				}
-			baseConfiguration = loadConfiguration(baseConfigurationLocation);
-			if (baseConfiguration != null) {
-				// if the base sets the install area then use that value if the property.  We know the 
-				// property is not already set.
-				String location = baseConfiguration.getProperty(PROP_CONFIG_AREA);
-				if (location != null)
-					System.getProperties().put(PROP_CONFIG_AREA, location);
-				// if the base sets the install area then use that value if the property is not already set.
-				// This helps in selfhosting cases where you cannot easily compute the install location
-				// from the code base.
-				location = baseConfiguration.getProperty(PROP_INSTALL_AREA);
-				if (location != null && System.getProperty(PROP_INSTALL_AREA) == null)
-					System.getProperties().put(PROP_INSTALL_AREA, location);
-			}
-		}
-
-		// Now we know where the base configuration is supposed to be.  Go ahead and load
-		// it and merge into the System properties.  Then, if cascaded, read the parent configuration
-		// Note that the parent may or may not be the same parent as we read above since the 
-		// base can define its parent.  The first parent we read was either defined by the user
-		// on the command line or was the one in the install dir.  
-		// if the config or parent we are about to read is the same as the base config we read above,
-		// just reuse the base
-		Properties configuration = baseConfiguration;
-		if (configuration == null || !getConfigurationLocation().equals(baseConfigurationLocation.toExternalForm()))
-			configuration = loadConfiguration(getConfigurationLocation());
-		mergeProperties(System.getProperties(), configuration);
-		if ("false".equalsIgnoreCase(System.getProperty(PROP_CONFIG_CASCADED))) //$NON-NLS-1$
-			// if we are not cascaded then remove the parent property even if it was set.
-			System.getProperties().remove(PROP_SHARED_CONFIG_AREA);
-		else {
-			URL sharedConfigURL = buildLocation(PROP_SHARED_CONFIG_AREA, null, "");
-			if (sharedConfigURL == null)
-				try {
-					// there is no shared config value so compute one
-					sharedConfigURL = new URL(getInstallLocation(), CONFIG_DIR);
-				} catch (MalformedURLException e) {
-					// leave sharedConfigurationLocation null
-				}
-			// if the parent location is different from the config location, read it too.
-			if (sharedConfigURL != null) {
-				if (sharedConfigURL.equals(getConfigurationLocation()))
-					// remove the property to show that we do not have a parent.
-					System.getProperties().remove(PROP_SHARED_CONFIG_AREA);
-				else {
-					// if the parent we are about to read is the same as the base config we read above,
-					// just reuse the base
-					configuration = baseConfiguration;
-					if (!sharedConfigURL.equals(baseConfigurationLocation))
-						configuration = loadConfiguration(sharedConfigURL);
-					mergeProperties(System.getProperties(), configuration);
-					System.getProperties().put(PROP_SHARED_CONFIG_AREA, sharedConfigURL.toExternalForm());
-					if (debug)
-						System.out.println("Shared configuration location:\n    " + sharedConfigURL.toExternalForm()); //$NON-NLS-1$
-				}
-			}
-		}
-		// setup the path to the framework
-		String urlString = System.getProperty(PROP_FRAMEWORK, null);
-		if (urlString != null) {
-			URL url = buildURL(urlString, true);
-			System.getProperties().put(PROP_FRAMEWORK, url.toExternalForm());
-			bootLocation = resolve(urlString);
-		}
-	}
-
-	/**
-	 * Returns url of the location this class was loaded from
-	 */
-	private URL getInstallLocation() {
-		if (installLocation != null)
-			return installLocation;
-
-		// value is not set so compute the default and set the value
-		String installArea = System.getProperty(PROP_INSTALL_AREA);
-		if (installArea != null) {
-			installLocation = buildURL(installArea, true);
-			if (installLocation == null)
-				throw new IllegalStateException("Install location is invalid: " + installArea); //$NON-NLS-1$
-			System.getProperties().put(PROP_INSTALL_AREA, installLocation.toExternalForm());
-			if (debug)
-				System.out.println("Install location:\n    " + installLocation); //$NON-NLS-1$
-			return installLocation;
-		}
-
-		URL result = Main.class.getProtectionDomain().getCodeSource().getLocation();
-		String path = decode(result.getFile());
-		// normalize to not have leading / so we can check the form
-		File file = new File(path);
-		path = file.toString().replace('\\', '/');
-		// TODO need a better test for windows
-		// If on Windows then canonicalize the drive letter to be lowercase.
-		// remember that there may be UNC paths 
-		if (File.separatorChar == '\\')
-			if (Character.isUpperCase(path.charAt(0))) {
-				char[] chars = path.toCharArray();
-				chars[0] = Character.toLowerCase(chars[0]);
-				path = new String(chars);
-			}
-		if (path.endsWith(".jar")) //$NON-NLS-1$
-			path = path.substring(0, path.lastIndexOf("/") + 1); //$NON-NLS-1$
-		try {
-			try {
-				// create a file URL (via File) to normalize the form (e.g., put 
-				// the leading / on if necessary)
-				path = new File(path).toURL().getFile();
-			} catch (MalformedURLException e1) {
-				// will never happen.  The path is straight from a URL.  
-			}
-			installLocation = new URL(result.getProtocol(), result.getHost(), result.getPort(), path);
-			System.getProperties().put(PROP_INSTALL_AREA, installLocation.toExternalForm());
-		} catch (MalformedURLException e) {
-			// TODO Very unlikely case.  log here.  
-		}
-		if (debug)
-			System.out.println("Install location:\n    " + installLocation); //$NON-NLS-1$
-		return installLocation;
-	}
-
-	/*
-	 * Load the given configuration file
-	 */
-	private Properties loadConfiguration(URL url) {
-		Properties result = null;
-		try {
-			url = new URL(url, CONFIG_FILE);
-		} catch (MalformedURLException e) {
-			return null;
-		}
-		try {
-			if (debug)
-				System.out.print("Configuration file:\n    " + url.toString()); //$NON-NLS-1$
-			result = loadProperties(url);
-			if (debug)
-				System.out.println(" loaded"); //$NON-NLS-1$
-		} catch (IOException e) {
-			if (debug)
-				System.out.println(" not found or not read"); //$NON-NLS-1$
-		}
-		return result;
-	}
-
-	private Properties loadProperties(URL url) throws IOException {
-		// try to load saved configuration file (watch for failed prior save())
-		if (url == null)
-			return null;
-		Properties result = null;
-		IOException originalException = null;
-		try {
-			result = load(url, null); // try to load config file
-		} catch (IOException e1) {
-			originalException = e1;
-			try {
-				result = load(url, CONFIG_FILE_TEMP_SUFFIX); // check for failures on save
-			} catch (IOException e2) {
-				try {
-					result = load(url, CONFIG_FILE_BAK_SUFFIX); // check for failures on save
-				} catch (IOException e3) {
-					throw originalException; // we tried, but no config here ...
-				}
-			}
-		}
-		return result;
-	}
-
-	/*
-	 * 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);
-		} finally {
-			if (is != null)
-				try {
-					is.close();
-				} catch (IOException e) {
-					//ignore failure to close
-				}
-		}
-		return props;
-	}
-
-	/*
-	 * 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[] defaultPath) {
-		// run without splash if we are initializing or nosplash 
-		// was specified (splashdown = true)
-		if (initialize || splashDown) {
-			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 location
-		String location = getSplashLocation(defaultPath);
-		if (debug)
-			System.out.println("Splash location:\n    " + location); //$NON-NLS-1$
-		if (location == null)
-			return;
-		// async call to the launcher
-		showProcess = runCommand(false, new String[] {SHOWSPLASH, showSplash, location}); //$NON-NLS-1$
-	}
-	
-	private Process runCommand(boolean block, String[] extraArgs) {
-		final int NBR_DEFAULT_ARGS = 3;
-		String[] args = new String[NBR_DEFAULT_ARGS + extraArgs.length];
-		args[0] = launcher;
-		args[1] = NAME;
-		args[2] = name;
-
-		for (int i = 0; i < extraArgs.length; i++) {
-			args[i + NBR_DEFAULT_ARGS] = extraArgs[i];
-		}
-
-		if (debug) {
-			System.out.print("runCommand:\n    ");//$NON-NLS-1$ 
-			for (int i = 0; i < args.length; i++) {
-				System.out.print('<' + args[i] + '>');//$NON-NLS-1$ //$NON-NLS-2$ 
-			}
-			System.out.println();
-		}
-
-		Process result = null;
-		try {
-			result = Runtime.getRuntime().exec(args);
-			if (block)
-				result.waitFor();
-		} catch (Exception e) {
-			log("Exception running command: " + extraArgs != null && extraArgs.length > 0 ? extraArgs[0] : null); //$NON-NLS-1$ 
-			log(e);
-		}
-		return result;
-	}
-
-	/*
-	 * take down the splash screen. Try both take-down methods just in case
-	 * (only one should ever be set)
-	 */
-	protected 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.  First search the defined splash path.
-	 * If that does not work, look for a default splash.  Currently the splash must be in the file system
-	 * so the return value here is the file system path.
-	 */
-	private String getSplashLocation(URL[] bootPath) {
-		String result = System.getProperty(PROP_SPLASHLOCATION);
-		if (result != null)
-			return result;
-		String splashPath = System.getProperty(PROP_SPLASHPATH);
-		if (splashPath != null) {
-			String[] entries = getArrayFromList(splashPath);
-			ArrayList path = new ArrayList(entries.length);
-			for (int i = 0; i < entries.length; i++) {
-				String entry = resolve(entries[i]);
-				if (entry == null || entry.startsWith(FILE_SCHEME)) {
-					File entryFile = new File(entry.substring(5).replace('/', File.separatorChar));
-					entry = searchFor(entryFile.getName(), entryFile.getParent());
-					if (entry != null)
-						path.add(entry);
-				} else
-					log("Invalid splash path entry: " + entries[i]); //$NON-NLS-1$
-			}
-			// see if we can get a splash given the splash path
-			result = searchForSplash((String[]) path.toArray(new String[path.size()]));
-			if (result != null) {
-				System.getProperties().put(PROP_SPLASHLOCATION, result);
-				return result;
-			}
-		}
-
-		// can't find it on the splashPath so look for a default splash
-		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);
-				result = searchForSplash(new String[] {temp});
-				if (result != null)
-					System.getProperties().put(PROP_SPLASHLOCATION, result);
-			}
-		}
-		return result;
-	}
-
-	/*
-	 * Do a locale-sensitive lookup of splash image
-	 */
-	private String searchForSplash(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 result = new File(path);
-				if (result.exists())
-					return result.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;
-	}
-
-	/*
-	 * resolve platform:/base/ URLs
-	 */
-	private String resolve(String urlString) {
-		// handle the case where people mistakenly spec a refererence: url.
-		if (urlString.startsWith("reference:")) { //$NON-NLS-1$
-			urlString = urlString.substring(10);
-			System.getProperties().put(PROP_FRAMEWORK, urlString);
-		}
-		if (urlString.startsWith(PLATFORM_URL)) {
-			String path = urlString.substring(PLATFORM_URL.length());
-			return getInstallLocation() + path;
-		} else
-			return urlString;
-	}
-
-	/*
-	 * Entry point for logging.
-	 */
-	private synchronized void log(Object obj) {
-		if (obj == null)
-			return;
-		try {
-			openLogFile();
-			try {
-				if (newSession) {
-					log.write(SESSION);
-					log.write(' ');
-					String timestamp = new Date().toString();
-					log.write(timestamp);
-					log.write(' ');
-					for (int i = SESSION.length() + timestamp.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 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 void computeLogFileLocation() {
-		String logFileProp = System.getProperty(PROP_LOGFILE);
-		if (logFileProp != null) {
-			if (logFile == null || !logFileProp.equals(logFile.getAbsolutePath())) {
-				logFile = new File(logFileProp);
-				logFile.getParentFile().mkdirs();
-			}
-			return;
-		}
-
-		// compute the base location and then append the name of the log file
-		URL base = buildURL(System.getProperty(PROP_CONFIG_AREA), false);
-		if (base == null)
-			return;
-		logFile = new File(base.getPath(), Long.toString(System.currentTimeMillis()) + ".log"); //$NON-NLS-1$
-		logFile.getParentFile().mkdirs();
-		System.setProperty(PROP_LOGFILE, logFile.getAbsolutePath());
-	}
-
-	/**
-	 * 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"); //$NON-NLS-1$
-		}
-	}
-
-	private 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 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 void closeLogFile() throws IOException {
-		try {
-			if (log != null) {
-				log.flush();
-				log.close();
-			}
-		} finally {
-			log = null;
-		}
-	}
-
-	private void mergeProperties(Properties destination, Properties source) {
-		if (destination == null || source == null)
-			return;
-		for (Enumeration e = source.keys(); e.hasMoreElements();) {
-			String key = (String) e.nextElement();
-			if (key.equals(PROP_CLASSPATH)) {
-				String destinationClasspath = destination.getProperty(PROP_CLASSPATH);
-				String sourceClasspath = source.getProperty(PROP_CLASSPATH);
-				if (destinationClasspath == null)
-					destinationClasspath = sourceClasspath;
-				else
-					destinationClasspath = destinationClasspath + sourceClasspath;
-				destination.put(PROP_CLASSPATH, destinationClasspath);
-				continue;
-			}
-			if (!key.equals(PROP_EOF)) {
-				String value = source.getProperty(key);
-				if (destination.getProperty(key) == null)
-					destination.put(key, value);
-			}
-		}
-	}
-
-	private void setupVMProperties() {
-		if (vm != null)
-			System.getProperties().put(PROP_VM, vm);
-		setMultiValueProperty(PROP_VMARGS, vmargs);
-		setMultiValueProperty(PROP_COMMANDS, commands);
-	}
-
-	private void setMultiValueProperty(String property, String[] value) {
-		if (value != null) {
-			StringBuffer result = new StringBuffer(300);
-			for (int i = 0; i < value.length; i++) {
-				if (value[i] != null) {
-					result.append(value[i]);
-					result.append('\n');
-				}
-			}
-			System.getProperties().put(property, result.toString());
-		}
-	}
-
-	private class StartupClassLoader extends URLClassLoader {
-		public StartupClassLoader(URL[] urls, ClassLoader parent) {
-			super(urls, parent);
-		}
-
-		protected String findLibrary(String name) {
-			if (extensionPaths ==  null)
-				return super.findLibrary(name);
-			String libName = System.mapLibraryName(name);
-			for (int i = 0; i < extensionPaths.length; i++) {
-				File libFile = new File(extensionPaths[i], libName);
-				if (libFile.isFile())
-					return libFile.getAbsolutePath();
-			}
-			return super.findLibrary(name);
-		}		
-	}
-}
\ No newline at end of file
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 26eb707..0000000
--- a/platform/org.eclipse.platform/welcome.xml
+++ /dev/null
@@ -1,51 +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.ide"  class="org.eclipse.ui.actions.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.repo.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. Select a module and choose 
-<b>Checkout as Project</b> from the context menu. This will checkout the module from the CVS 
-repository and create a project by that name in your workspace.</item>
-
-<item><b>Running an Ant Buildfile</b>
-To run an Ant buildfile, click on Run > External Tools > External Tools.... Select Ant Build as the launch
-configuration type and click New. Identify the buildfile in the Location field and then click Run.</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>. Browse the <topic href="/org.eclipse.platform.doc.user/reference/ref-anticons.htm">External Tools and Ant Icons</topic>
-section to recognize the various External Tools and Ant elements. </item>
-
-
-</welcomePage>
\ No newline at end of file
diff --git a/platform/org.eclipse.sdk/.project b/platform/org.eclipse.sdk/.project
deleted file mode 100644
index 2e498c2..0000000
--- a/platform/org.eclipse.sdk/.project
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.sdk</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-	</buildSpec>
-	<natures>
-	</natures>
-</projectDescription>
diff --git a/platform/org.eclipse.sdk/about.html b/platform/org.eclipse.sdk/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/platform/org.eclipse.sdk/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.sdk/about.ini b/platform/org.eclipse.sdk/about.ini
deleted file mode 100644
index eaaa6fb..0000000
--- a/platform/org.eclipse.sdk/about.ini
+++ /dev/null
@@ -1,31 +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)
-aboutText=%blurb
-
-# Property "windowImage" contains path to window icon (16x16)
-# needed for primary features only
-
-# Property "featureImage" contains path to feature image (32x32)
-featureImage=eclipse32.gif
-
-# Property "aboutImage" contains path to product image (500x330 or 115x164)
-# needed for primary features only
-
-# Property "appName" contains name of the application (translated)
-# needed for primary features only
-
-# Property "welcomePage" contains path to welcome page (special XML-based format)
-# optional
-
-# Property "welcomePerspective" contains the id of the perspective in which the
-# welcome page is to be opened.
-# optional
-
-
-
-
diff --git a/platform/org.eclipse.sdk/about.mappings b/platform/org.eclipse.sdk/about.mappings
deleted file mode 100644
index bddaab4..0000000
--- a/platform/org.eclipse.sdk/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.sdk/about.properties b/platform/org.eclipse.sdk/about.properties
deleted file mode 100644
index c0038e5..0000000
--- a/platform/org.eclipse.sdk/about.properties
+++ /dev/null
@@ -1,24 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-# 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.
-
-blurb=Eclipse Project SDK\n\
-\n\
-Version: {featureVersion}\n\
-Build id: {0}\n\
-\n\
-(c) Copyright Eclipse contributors and others 2000, 2004.  All rights reserved.\n\
-Visit http://www.eclipse.org/eclipse
-
diff --git a/platform/org.eclipse.sdk/build.properties b/platform/org.eclipse.sdk/build.properties
deleted file mode 100644
index b0c1058..0000000
--- a/platform/org.eclipse.sdk/build.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-bin.includes=\
-about.html,\
-about.ini,\
-about.mappings,\
-about.properties,\
-eclipse32.gif,\
-plugin.xml,\
-plugin.properties
diff --git a/platform/org.eclipse.sdk/eclipse32.gif b/platform/org.eclipse.sdk/eclipse32.gif
deleted file mode 100644
index f71a8f6..0000000
--- a/platform/org.eclipse.sdk/eclipse32.gif
+++ /dev/null
Binary files differ
diff --git a/platform/org.eclipse.sdk/plugin.properties b/platform/org.eclipse.sdk/plugin.properties
deleted file mode 100644
index d301725..0000000
--- a/platform/org.eclipse.sdk/plugin.properties
+++ /dev/null
@@ -1,31 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-pluginName=Eclipse Project SDK
-providerName=Eclipse.org
-
-activity.java=Java Development
-activity.java.desc=Develop Java applications.
-activity.plugin=Plug-in Development
-activity.plugin.desc=Develop plug-ins, fragments, and features for Eclipse.
-
-activity.team.cvs=CVS Support
-activity.team.cvs.desc=Use the Concurrent Versions System (CVS) to manage resources.
-activity.team=Core Team Support
-activity.team.desc=Share projects using configuration management systems.
-
-activity.cat.development=Development
-activity.cat.development.desc=Use the Eclipse SDK to develop applications.
-activity.cat.team=Team
-activity.cat.team.desc=Use configuration management systems to manage resources.
-
-
-
-
diff --git a/platform/org.eclipse.sdk/plugin.xml b/platform/org.eclipse.sdk/plugin.xml
deleted file mode 100644
index f448a6a..0000000
--- a/platform/org.eclipse.sdk/plugin.xml
+++ /dev/null
@@ -1,164 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.sdk"
-   name="%pluginName"
-   version="3.1.0"
-   provider-name="%providerName">
-
-   <requires>
-      <import plugin="org.eclipse.ui"/>
-   </requires>
-
-
-   <extension
-         point="org.eclipse.ui.activities">
-  
-      <activity
-            name="%activity.java"
-            description="%activity.java.desc"
-            id="org.eclipse.javaDevelopment">
-      </activity>
-      
-      <activity
-            name="%activity.plugin"
-            description="%activity.plugin.desc"
-            id="org.eclipse.plugInDevelopment">
-      </activity>
-      
-      <activityRequirementBinding
-            activityId="org.eclipse.plugInDevelopment"
-            requiredActivityId="org.eclipse.javaDevelopment">
-      </activityRequirementBinding>
-  
-      <activity
-            name="%activity.team.cvs"
-            description="%activity.team.cvs.desc"
-            id="org.eclipse.team.cvs">
-      </activity> 
-      
-      <activity
-            name="%activity.team"
-            description="%activity.team.desc"
-            id="org.eclipse.team">
-      </activity> 
-      
-      <activityRequirementBinding
-            activityId="org.eclipse.team.cvs"
-            requiredActivityId="org.eclipse.team">
-      </activityRequirementBinding>
-      
-      <activityPatternBinding
-            activityId="org.eclipse.javaDevelopment"
-            pattern="org\.eclipse\.jdt\.debug/debugModel">
-      </activityPatternBinding>
-      
-      <activityPatternBinding
-            activityId="org.eclipse.javaDevelopment"
-            pattern="org\.eclipse\.jdt\..*/.*">
-      </activityPatternBinding>
-      
-      <activityPatternBinding
-            activityId="org.eclipse.javaDevelopment"
-            pattern="org\.eclipse\.jdt\.core/javanature">
-
-      </activityPatternBinding>
-      
-      <activityPatternBinding
-            activityId="org.eclipse.plugInDevelopment"
-            pattern="org\.eclipse\.pde\..*/.*">
-      </activityPatternBinding>
-      
-      <activityPatternBinding
-            activityId="org.eclipse.plugInDevelopment"
-            pattern="org\.eclipse\.pde/PluginNature">
-      </activityPatternBinding>
-      <activityPatternBinding
-            activityId="org.eclipse.team"
-            pattern="org\.eclipse\.team\.ui/org.*">
-      </activityPatternBinding> 
-      <activityPatternBinding
-            activityId="org.eclipse.team"
-            pattern="org\.eclipse\.compare/compareWithPatch">
-      </activityPatternBinding>           
-      <activityPatternBinding
-            activityId="org.eclipse.team.cvs"
-            pattern="org\.eclipse\.team\.cvs\.ui/.*">
-      </activityPatternBinding>
-      <activityPatternBinding
-            activityId="org.eclipse.team.cvs"
-            pattern="org\.eclipse\.team\.cvs\.core/.*cvsnature">
-      </activityPatternBinding>
-      
-      <category
-            name="%activity.cat.development"
-            description="%activity.cat.development.desc"
-            id="org.eclipse.categories.developmentCategory">
-      </category>
-
- 	  <category
-            name="%activity.cat.team"
-            description="%activity.cat.team.desc"
-            id="org.eclipse.categories.teamCategory">
-
-      </category>
-      
-      <categoryActivityBinding
-            activityId="org.eclipse.javaDevelopment"
-            categoryId="org.eclipse.categories.developmentCategory">
-      </categoryActivityBinding>
-      
-      <categoryActivityBinding
-            activityId="org.eclipse.plugInDevelopment"
-            categoryId="org.eclipse.categories.developmentCategory">
-      </categoryActivityBinding>
-
-      <categoryActivityBinding
-            activityId="org.eclipse.team"
-            categoryId="org.eclipse.categories.teamCategory">
-      </categoryActivityBinding>        
-      
-      <categoryActivityBinding
-            activityId="org.eclipse.team.cvs"
-            categoryId="org.eclipse.categories.teamCategory">
-      </categoryActivityBinding>
-  
-      <!-- bind all elements that start with "org" -->      
-       
-      <defaultEnablement
-            id="org.eclipse.javaDevelopment">
-      </defaultEnablement>
-      
-      <defaultEnablement
-            id="org.eclipse.plugInDevelopment">
-      </defaultEnablement>
-      
-      <defaultEnablement
-            id="org.eclipse.team">
-      </defaultEnablement>     
-      
-      <defaultEnablement
-            id="org.eclipse.team.cvs">
-      </defaultEnablement>
-   </extension>
-   
-   <extension
-         point="org.eclipse.ui.newWizards">
-      <primaryWizard
-            id="org.eclipse.jdt.ui.wizards.JavaProjectWizard">
-      </primaryWizard>
-      <primaryWizard
-            id="org.eclipse.pde.ui.NewProjectWizard">
-      </primaryWizard>
-      <primaryWizard
-            id="org.eclipse.jdt.ui.wizards.NewClassCreationWizard">
-      </primaryWizard>
-      <primaryWizard
-            id="org.eclipse.jdt.ui.wizards.NewInterfaceCreationWizard">
-      </primaryWizard>
-      <primaryWizard
-            id="org.eclipse.pde.ui.NewProductConfigurationWizard">
-      </primaryWizard>
-   </extension>
-
-</plugin>
diff --git a/update/org.eclipse.update.configurator/.classpath b/update/org.eclipse.update.configurator/.classpath
deleted file mode 100644
index 065ac06..0000000
--- a/update/org.eclipse.update.configurator/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/update/org.eclipse.update.configurator/.cvsignore b/update/org.eclipse.update.configurator/.cvsignore
deleted file mode 100644
index 60463af..0000000
--- a/update/org.eclipse.update.configurator/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-bin
-build.xml
diff --git a/update/org.eclipse.update.configurator/.options b/update/org.eclipse.update.configurator/.options
deleted file mode 100644
index a2c714f..0000000
--- a/update/org.eclipse.update.configurator/.options
+++ /dev/null
@@ -1,5 +0,0 @@
-# Debugging options for the org.eclipse.update.configurator plugin
-
-# Turn on general debugging for the plugin.
-org.eclipse.update.configurator/debug=false
-
diff --git a/update/org.eclipse.update.configurator/.project b/update/org.eclipse.update.configurator/.project
deleted file mode 100644
index 0f091b2..0000000
--- a/update/org.eclipse.update.configurator/.project
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.update.configurator</name>
-	<comment></comment>
-	<projects>
-		<project>org.eclipse.core.boot</project>
-		<project>org.eclipse.core.runtime</project>
-		<project>org.eclipse.osgi</project>
-		<project>org.eclipse.osgi.util</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.configurator/about.html b/update/org.eclipse.update.configurator/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/update/org.eclipse.update.configurator/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.configurator/build.properties b/update/org.eclipse.update.configurator/build.properties
deleted file mode 100644
index 9fd124f..0000000
--- a/update/org.eclipse.update.configurator/build.properties
+++ /dev/null
@@ -1,9 +0,0 @@
-bin.includes = .options,\
-               about.html,\
-               plugin.properties,\
-               plugin.xml,\
-               *.jar,\
-               META-INF/,\
-               config.ini
-src.includes = about.html
-source.configurator.jar = src/
diff --git a/update/org.eclipse.update.configurator/plugin.properties b/update/org.eclipse.update.configurator/plugin.properties
deleted file mode 100644
index 8f20178..0000000
--- a/update/org.eclipse.update.configurator/plugin.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-pluginName= Install/Update Configurator
-providerName= Eclipse.org
-productProviderName= Update Configurator Product Provider
-
diff --git a/update/org.eclipse.update.configurator/plugin.xml b/update/org.eclipse.update.configurator/plugin.xml
deleted file mode 100644
index 3b5bbef..0000000
--- a/update/org.eclipse.update.configurator/plugin.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.update.configurator"
-   name="%pluginName"
-   version="3.0.0"
-   provider-name="%providerName"
-   class="org.eclipse.update.internal.configurator.ConfigurationActivator">
-
-   <runtime>
-      <library name="configurator.jar">
-         <export name="*"/>
-      </library>
-   </runtime>
-   <requires>
-      <import plugin="org.eclipse.core.runtime"/>
-   </requires>
-
-
-   <extension
-         id="updateConfiguratorProductProvider"
-         name="%productProviderName"
-         point="org.eclipse.core.runtime.products">
-      <provider> 
-         <run class="org.eclipse.update.internal.configurator.ProductProvider"/> 
-      </provider> 
-         
-   </extension>
-
-</plugin>
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/configurator/ConfiguratorUtils.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/configurator/ConfiguratorUtils.java
deleted file mode 100644
index ca18ceb..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/configurator/ConfiguratorUtils.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-
-package org.eclipse.update.configurator;
-
-import java.io.*;
-import java.net.*;
-
-import org.eclipse.update.internal.configurator.ConfigurationActivator;
-import org.osgi.framework.*;
-
-/**
- * Helper class to get platform configuration data without having to
- * use BootLoader methods from the compatibility layer.
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @since 3.0
- */
-public class ConfiguratorUtils {
-	/**
-	 * Returns the current platform configuration. This method replaces the one we used
-	 * to call on BootLoader.
-	 * 
-	 * @return platform configuration used in current instance of platform
-	 * @since 3.0
-	 */
-	public static IPlatformConfiguration getCurrentPlatformConfiguration() {
-		// acquire factory service first
-		BundleContext context = ConfigurationActivator.getBundleContext();
-		ServiceReference configFactorySR = context.getServiceReference(IPlatformConfigurationFactory.class.getName());
-		if (configFactorySR == null)
-			throw new IllegalStateException();
-		IPlatformConfigurationFactory configFactory = (IPlatformConfigurationFactory) context.getService(configFactorySR);
-		if (configFactory == null)
-			throw new IllegalStateException();
-		// get the configuration using the factory
-		IPlatformConfiguration currentConfig = configFactory.getCurrentPlatformConfiguration();
-		context.ungetService(configFactorySR);
-		return currentConfig;
-	}
-	
-	/**
-	 * Returns a platform configuration object, optionally initialized with previously saved
-	 * configuration information. We will use this method instead of the old one in BootLoader.
-	 * 
-	 * @param url location of previously save configuration information. If <code>null</code>
-	 * is specified, an empty configuration object is returned
-	 * @return platform configuration used in current instance of platform
-	 */
-	public static IPlatformConfiguration getPlatformConfiguration(URL url) throws IOException {
-		// acquire factory service first
-		BundleContext context = ConfigurationActivator.getBundleContext();
-		ServiceReference configFactorySR = context.getServiceReference(IPlatformConfigurationFactory.class.getName());
-		if (configFactorySR == null)
-			throw new IllegalStateException();
-		IPlatformConfigurationFactory configFactory = (IPlatformConfigurationFactory) context.getService(configFactorySR);
-		if (configFactory == null)
-			throw new IllegalStateException();
-		// get the configuration using the factory
-		IPlatformConfiguration config = configFactory.getPlatformConfiguration(url);
-		context.ungetService(configFactorySR);
-		return config;
-	}
-	
-	/**
-	 * @return the URL of this eclispe installation
-	 */
-	public static URL getInstallURL() {
-		return ConfigurationActivator.getInstallURL();
-	}
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/configurator/IPlatformConfiguration.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/configurator/IPlatformConfiguration.java
deleted file mode 100644
index 829d4d8..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/configurator/IPlatformConfiguration.java
+++ /dev/null
@@ -1,590 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.configurator;
-
-import java.io.IOException;
-import java.net.URL;
-
-/**
- * Platform configuration interface. Represents the runtime
- * configuration used by the Eclipse platform. Any configuration
- * changes do not take effect until next startup of the Eclipse
- * platform.
- * <p>
- * Do not provide implementations of this interface or its nested interfaces. Use the factory methods 
- * on IPlatformConfigurationFactory to create a IPlatformConfiguration, then use the factory methods
- * on the IPlatformConfiguration to create instances of ISiteEntry,IFeatureEntry and ISitePolicy.
- * </p>
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @since 3.0
- */
-public interface IPlatformConfiguration {
-
-	/**
-	 * Configuration entry representing an install site.
-	 * 
-	 * @since 2.0 
-	 */
-	public interface ISiteEntry {
-
-		/**
-		 * Returns the URL for this site
-		 * 
-		 * @return site url
-		 * @since 2.0
-		 */
-		public URL getURL();
-
-		/**
-		 * Returns the policy for this site
-		 * 
-		 * @return site policy
-		 * @since 2.0
-		 */
-		public ISitePolicy getSitePolicy();
-
-		/**
-		 * Sets the site policy
-		 * 
-		 * @param policy site policy
-		 * @since 2.0
-		 */
-		public void setSitePolicy(ISitePolicy policy);
-
-		/**
-		 * Returns a list of features visible on the site. Note, that this is simply a 
-		 * reflection of the site content. The features may or may not be actually configured.
-		 * 
-		 * @return an array of feature entries, or an empty array if no features are found.
-		 * A feature entry is returned as a path relative to the site URL
-		 * @since 2.0
-		 */
-		public String[] getFeatures();
-
-		/**
-		 * Returns a list of plug-ins visible on the site. Note, that this is simply a 
-		 * reflection of the site content and the current policy for the site. The plug-ins
-		 * may or may not end up being used by Eclipse (depends on which plug-in are 
-		 * actually bound by the platform).
-		 * 
-		 * @return an array of plug-in entries, or an empty array if no plug-ins are found.
-		 * A plug-in entry is returned as a path relative to the site URL		 * 
-		 * @since 2.0
-		 */
-		public String[] getPlugins();
-
-		/**
-		 * Returns a stamp reflecting the current state of the site. If called repeatedly,
-		 * returns the same value as long as no changes were made to the site (changes to
-		 * features or plugins).
-		 * 
-		 * @return site change stamp
-		 * @since 2.0
-		 */
-		public long getChangeStamp();
-
-		/**
-		 * Returns a stamp reflecting the current state of the features on the site. 
-		 * If called repeatedly, returns the same value as long as no changes were made to
-		 * features on the site.
-		 * 
-		 * @return site features change stamp 
-		 * @since 2.0
-		 * @deprecated Do not use this method
-		 */
-		public long getFeaturesChangeStamp();
-
-		/**
-		 * Returns a stamp reflecting the current state of the plug-ins on the site. 
-		 * If called repeatedly, returns the same value as long as no changes were made to
-		 * plug-ins on the site.
-		 * 
-		 * @return site plug-ins change stamp 
-		 * @since 2.0
-		 * @deprecated Do not use this method
-		 */
-		public long getPluginsChangeStamp();
-
-		/**
-		 * Returns an indication whether the site can be updated.
-		 * 
-		 * @return <code>true</code> if site can be updated, <code>false</code> otherwise
-		 * @since 2.0
-		 */
-		public boolean isUpdateable();
-
-		/**
-		 * Returns an indication whether the site represents an install site
-		 * that has been linked via a native installer (using the links/<linkfile>
-		 * mechanism)
-		 * 
-		 * @return <code>true</code> if the site is linked, <code>false</code> otherwise
-		 * @since 2.0
-		 */
-		public boolean isNativelyLinked();
-	}
-
-	/**
-	 * Site policy. The site policy object determines how plug-ins
-	 * contained on the site are processed during startup. In general,
-	 * there are 3 ways of configuring a site policy
-	 * <ul>
-	 * <li>explicitly specify which plug-ins are to be included at
-	 * startup (type==USER_INCLUDE). Any other plug-ins located
-	 * at the site are ignored at startup. This is typically the best
-	 * policy when using remote sites where the user wishes
-	 * to retain explicit control over the plug-ins that are included
-	 * from such site.
-	 * <li>explicitly specify which plug-ins are to be excluded at
-	 * startup (type==USER-EXCLUDE). All other plug-ins located
-	 * at the site are used at startup. This policy requires that
-	 * the site support an access "protocol" that allows plug-in
-	 * discovery. In general, these are sites defined using the "file"
-	 * URL protocol. This is typically the best policy for local
-	 * install sites (on the user system).
-	 * </ul>
-	 * 
-	 * @since 2.0
-	 */
-	public interface ISitePolicy {
-
-		/**
-		 * Policy type constants.
-		 */
-
-		/** 
-		 * User-defined inclusion list. The list associated with this
-		 * policy type is interpreted as path entries to included plugin.xml
-		 * or fragment.xml <b>relative</b> to the site URL
-		 */
-		public static final int USER_INCLUDE = 0;
-
-		/**
-		 * User-defined exclusion list. The list associated with this
-		 * policy type is interpreted as path entries to excluded plugin.xml
-		 * or fragment.xml <b>relative</b> to the site URL
-		 */
-		public static final int USER_EXCLUDE = 1;
-		
-		/**
-		 * When this site policy is used, only plug-ins specified by the configured features
-		 * are contributed to the runtime.
-		 * @since 3.1
-		 */
-		public static final int MANAGED_ONLY = 2;
-
-		/**
-		 * Return policy type
-		 * 
-		 * @return policy type
-		 * @since 2.0
-		 */
-		public int getType();
-
-		/**
-		 * Return policy inclusion/ exclusion list
-		 * 
-		 * @return the list as an array
-		 * @since 2.0
-		 */
-		public String[] getList();
-
-		/**
-		 * Set new policy list. The list entries are interpreted based on the policy
-		 * type. See description of the policy type constants for details.
-		 * 
-		 * @param list policy inclusion/ exclusion list as an array.
-		 * Returns an empty array if there are no entries.
-		 * @see #USER_INCLUDE
-		 * @see #USER_EXCLUDE
-		 * @since 2.0
-		 */
-		public void setList(String[] list);
-	}
-
-	/**
-	 * Feature entry.
-	 * Represents runtime "hints" about configured features.
-	 * The information is used during execution to locate the
-	 * correct attribution information for a feature. Note,
-	 * that a typical configuration can declare multiple feature
-	 * entries. At execution time, only one can be selected as
-	 * the active primary feature. This is determined based on 
-	 * specified command line arguments or computed defaults.
-	 * 
-	 * @since 2.0
-	 */
-	public interface IFeatureEntry {
-
-		/**
-		 * Returns feature identifier.
-		 * @return feature identifier
-		 * @since 2.0
-		 */
-		public String getFeatureIdentifier();
-
-		/**
-		 * Returns the currently configured version for the feature.
-		 * @return feature version (as string), or <code>null</code>
-		 * @since 2.0
-		 */
-		public String getFeatureVersion();
-
-		/**
-		 * Returns the identifier of the feature plug-in for this feature entry.
-			 *  Note,      that there is no guarantee that a feature in fact
-			 * supplies a corresponding feature plugin, so the result can be
-			 * <code>null</code>. Also, if supplied, there is no guarantee that the
-			 * plugin will in fact be loaded into the plug-in registry at runtime
-			 * (due to rules and constraint checking performed by the registry
-			 * loading support). Consequently code making use of this method must
-			 * handle these conditions.
-		 * @return feature identifier (as string), or <code>null</code>
-		 * @since 2.1
-		 */
-		public String getFeaturePluginIdentifier();
-
-		/**
-		 * Returns the version of the feature plug-in for this feature
-		 * entry. Note, that there is no guarantee that a feature in fact
-		 * supplies a corresponding feature plugin, so the result can be
-		 * <code>null</code>. Also, if supplied, there is no guarantee that the
-		 * plugin will in fact be loaded into the plug-in registry at runtime
-		 * (due to rules and constraint checking performed by the registry
-		 * loading support). Consequently code making use of this method must
-		 * handle these conditions.
-		 * @return feature version (as string), or <code>null</code>
-		 * @since 2.0
-		 */
-		public String getFeaturePluginVersion();
-
-		/**
-		 * Returns the application to run when this feature is the
-		 * primary feature.
-		 * @return application identifier, or <code>null</code> 
-		 * @since 2.0
-		 */
-		public String getFeatureApplication();
-
-		/**
-		 * Returns URLs to the feature "root" locations. The root
-		 * URLs are install locations of the feature plugin and its
-		 * fragments.
-		 *
-		 * @return array of URLs, or an empty array
-		 * @since 2.0
-		 */
-		public URL[] getFeatureRootURLs();
-
-		/**
-		 * Returns an indication whether this feature has been defined
-		 * to act as a primary feature.
-		 * @return <code>true</code> if the feature can be primary,
-		 * <code>false</code> otherwise.
-		 * @since 2.0
-		 */
-		public boolean canBePrimary();
-	}
-
-	/**
-	 * Create a site entry
-	 *
-	 * @param url site URL
-	 * @param policy site policy
-	 * @return created site entry
-	 * @since 2.0
-	 */
-	public ISiteEntry createSiteEntry(URL url, ISitePolicy policy);
-
-	/**
-	 * Create a site policy. The policy determines the way the site
-	 * plug-in are processed at startpu
-	 *
-	 * @param type policy type
-	 * @param list an array of site-relative paths representing the
-	 * inclusion/ exclusion list
-	 * @return created site policy entry
-	 * @since 2.0
-	 */
-	public ISitePolicy createSitePolicy(int type, String[] list);
-
-	/**
-	 * Create a feature entry
-	 * @param id feature identifier. Must not be <code>null</code>.
-	 * @param version feature version (as String). Can be <code>null</code>.
-	 * @param pluginVersion version of the feature plugin (as String). Can be
-	 * <code>null</code>.
-	 * @param primary <code>true</code> if the feature is defined as a primary
-	 * feature, otherwise <code>false</code>.
-	 * @param application identifier of the application to run when 
-	 * this feature is the primary feature. Can be <code>null</code>.
-	 * If specified, the identifier must represent a valid extension 
-	 * registered in the <code>org.eclipse.core.runtime.applications</code>
-	 * extension point.
-	 * @param root an array of URLs to feature root directories.
-	 * These are URLs to install locations for the feature plugin
-	 * and its fragments. Can be <code>null</code>.
-	 * @return create feature entry
-	 * @since 2.0
-	 */
-	public IFeatureEntry createFeatureEntry(String id, String version, String pluginVersion, boolean primary, String application, URL[] root);
-
-	/**
-	 * Create a feature entry
-	 * @param id feature identifier. Must not be <code>null</code>.
-	 * @param version feature version (as String). Can be <code>null</code>.
-	 * @param pluginIdentifier identifier of the feature plugin (as String). Can
-	 * be <code>null</code>.
-	 * @param  pluginVersion  version of the feature plugin (as String). Can be
-	 * <code>null</code>.
-	 * @param primary <code>true</code> if the feature is defined as a primary
-	 * feature, otherwise <code>false</code>.
-	 * @param application identifier of the application to run when
-	 * this feature is the primary feature. Can be <code>null</code>.
-	 * If specified, the identifier must represent a valid extension
-	 * registered in the <code>org.eclipse.core.runtime.applications</code>
-	 * extension point.
-	 * @param root an array of URLs to feature root directories.
-	 * These are URLs to install locations for the feature plugin
-	 * and its fragments. Can be <code>null</code>.
-	 * @return create feature entry
-	 * @since 2.1
-	 */
-	public IFeatureEntry createFeatureEntry(String id, String version, String pluginIdentifier, String pluginVersion, boolean primary, String application, URL[] root);
-
-	/**
-	 * Configures the specified site entry. If a site entry with the
-	 * same site URL is already configured, the entry is <b>not</b> replaced.
-	 * 
-	 * @param entry site entry 
-	 * @since 2.0
-	 */
-	public void configureSite(ISiteEntry entry);
-
-	/**
-	 * Configures the specified site entry. If a site entry with the
-	 * same site URL is already configured, the replacement behavior for
-	 * the entry can be specified.
-	 * 
-	 * @param entry site entry 
-	 * @param  replace indicating whether an existing configured entry with
-	 * the same URL should be replaced (<code>true</code>) or not (<code>false</code>).
-	 * @since 2.0
-	 */
-	public void configureSite(ISiteEntry entry, boolean replace);
-
-	/**
-	 * Unconfigures the specified entry. Does not do anything if the entry
-	 * is not configured.
-	 * 
-	 * @param entry site entry
-	 * @since 2.0
-	 */
-	public void unconfigureSite(ISiteEntry entry);
-
-	/**
-	 * Returns configured site entries
-	 * 
-	 * @return array of site entries. Returns an empty array if no sites are
-	 * configured
-	 * @since 2.0
-	 */
-	public ISiteEntry[] getConfiguredSites();
-
-	/**
-	 * Returns a site entry matching the specified URL
-	 * 
-	 * @param url site url
-	 * @return matching site entry, or <code>null</code> if no match found
-	 * @since 2.0
-	 */
-	public ISiteEntry findConfiguredSite(URL url);
-
-	/**
-	 * Configures the feature entry.
-	 * If another feature entry with the same feature identifier 
-	 * already exists, it is replaced.
-	 * @param entry feature entry
-	 * @since 2.0
-	 */
-	public void configureFeatureEntry(IFeatureEntry entry);
-
-	/**
-	 * Unconfigures the specified feature entry if it exists.
-	 * @param entry feature entry
-	 * @since 2.0
-	 */
-	public void unconfigureFeatureEntry(IFeatureEntry entry);
-
-	/**
-	 * Returns a list of configured feature entries.
-	 * @return array or entries, or an empty array if no entries
-	 * are configured
-	 * @since 2.0
-	 */
-	public IFeatureEntry[] getConfiguredFeatureEntries();
-
-	/**
-	 * Locates the specified feature entry.
-	 * @param id feature identifier
-	 * @return ferature entry, or <code>null</code>.
-	 * @since 2.0
-	 */
-	public IFeatureEntry findConfiguredFeatureEntry(String id);
-
-	/**
-	 * Returns the URL location of the configuration information
-	 * 
-	 * @return configuration location URL, or <code>null</code> if the
-	 * configuration location could not be determined.
-	 * @since 2.0
-	 */
-	public URL getConfigurationLocation();
-
-	/**
-	 * Returns a stamp reflecting the current state of the configuration. If called repeatedly,
-	 * returns the same value as long as no changes were made to the configuration (changes to
-	 * sites, features or plugins).
-	 * 
-	 * @return configuration change stamp
-	 * @since 2.0
-	 */
-	public long getChangeStamp();
-
-	/**
-	 * Returns a stamp reflecting the current state of the features in the configuration. 
-	 * If called repeatedly, returns the same value as long as no changes were made to
-	 * features in the configuration.
-	 * 
-	 * @return configuration features change stamp 
-	 * @since 2.0
-	 * @deprecated Do not use this method.
-	 */
-	public long getFeaturesChangeStamp();
-
-	/**
-	 * Returns a stamp reflecting the current state of the plug-ins in the configuration. 
-	 * If called repeatedly, returns the same value as long as no changes were made to
-	 * plug-ins in the configuration.
-	 * 
-	 * @return configuration plug-ins change stamp 
-	 * @since 2.0
-	 * @deprecated Do not use this method
-	 */
-	public long getPluginsChangeStamp();
-
-	/**
-	 * Returns the identifier of the configured primary feature. A primary feature
-	 * is used to specify product customization information for a running instance
-	 * of Eclipse. 
-	 * 
-	 * @return primary feature identifier, or <code>null</code> if none configured
-	 * @since 2.0
-	 */
-	public String getPrimaryFeatureIdentifier();
-
-	/**
-	 * Computes the plug-in path for this configuration. The result includes all plug-ins
-	 * visible on each of the configured sites based on each site policy.
-	 * 
-	 * @return an array of plug-in path elements (full URL entries), or an empty array.
-	 * @since 2.0
-	 */
-	public URL[] getPluginPath();
-
-	/**
-	 * Returns an array of bootstrap plugin identifiers whose
-	 * location needs to be explicitly identified in the configuration.
-	 * 
-	 * @return an array of identifiers, or empty array
-	 * otherwise
-	 * @since 2.0
-	 * @deprecated Do not use this method. Check the osgi.bundles system property for the
-	 * urls of the automatically started bundles
-	 */
-	public String[] getBootstrapPluginIdentifiers();
-
-	/**
-	 * Sets the location of a bootstrap plugin.
-	 * 
-	 * @see IPlatformConfiguration#getBootstrapPluginIdentifiers()
-	 * @param id plugin identifier. Must match one of the entries returned
-	 * by getBootstrapPluginIdentifiers()
-	 * @param location
-	 * @since 2.0
-	 * @deprecated Do not use this method. Use the osig.bundles system property contains
-	 * the urls of the automatically started bundles.
-	 */
-	public void setBootstrapPluginLocation(String id, URL location);
-
-	/**
-	 * Returns an indication whether the configuration can be updated.
-	 * 
-	 * @return <code>true</code> if configuration can be updated, <code>false</code> 
-	 * otherwise
-	 * @since 2.0
-	 */
-	public boolean isUpdateable();
-
-	/**
-	 * Returns an indication whether the configuration is transient. A transient
-	 * configuration typically represents a scenario where the configuration
-	 * was computed for a single instantiation of the platform and is not
-	 * guaranteed to be valid on subsequent instantiations.
-	 * 
-	 * @return <code>true</code> if configuration is transient, <code>false</code> 
-	 * otherwise
-	 * @since 2.0
-	 */
-	public boolean isTransient();
-
-	/**
-	 * Indicates whether the configuration is transient or not. A transient
-	 * configuration typically represents a scenario where the configuration
-	 * was computed for a single instantiation of the platform and is not
-	 * guaranteed to be valid on subsequent instantiations. This method has
-	 * no effect if called on the current platform configuration.
-	 * 
-	 * @param value <code>true</code> if configuration is transient, <code>false</code> 
-	 * otherwise
-	 * @since 2.0
-	 */
-	public void isTransient(boolean value);
-
-	/**
-	 * Called to refresh the configuration information. In particular,
-	 * causes change stamps to be recomputed based on the current
-	 * configuration state, and updates the lists of available plug-ins.
-	 * @since 2.0
-	 */
-	public void refresh();
-
-	/**
-	 * Called to save the configuration information
-	 * @since 2.0
-	 */
-	public void save() throws IOException;
-
-	/**
-	 * Called to save the configuration information in the
-	 * specified location
-	 * 
-	 * @param url save location.
-	 * @since 2.0
-	 */
-	public void save(URL url) throws IOException;
-
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/configurator/IPlatformConfigurationFactory.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/configurator/IPlatformConfigurationFactory.java
deleted file mode 100644
index a98af00..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/configurator/IPlatformConfigurationFactory.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.configurator;
-
-import java.io.IOException;
-import java.net.URL;
-
-/**
- * Factory for creating platform configurations.
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- */
-public interface IPlatformConfigurationFactory {
-	/**
-	 * Returns the current platform configuration.
-	 * 
-	 * @return platform configuration used in current instance of platform
-	 */	
-	public IPlatformConfiguration getCurrentPlatformConfiguration();
-	/**
-	 * Returns a platform configuration object, optionally initialized with previously saved
-	 * configuration information.
-	 * 
-	 * @param url location of previously save configuration information. If <code>null</code>
-	 * is specified, an empty configuration object is returned
-	 * @return platform configuration used in current instance of platform
-	 */	
-	public IPlatformConfiguration getPlatformConfiguration(URL url) throws IOException;
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/configurator/package.html b/update/org.eclipse.update.configurator/src/org/eclipse/update/configurator/package.html
deleted file mode 100644
index fa0f9f6..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/configurator/package.html
+++ /dev/null
@@ -1,22 +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.72 [en] (Windows NT 5.0; U) [Netscape]">
-   <title>Package-level Javadoc</title>
-</head>
-<body>
-Provides support for accessing platform configuration data.
-<h2>
-Package Specification</h2>
-This package contains interfaces for accessing and manipulating the local
-system installation and configuration information. 
-<p>
-<b>Note:</b> This package is part of an interim API that is still under development and expected to
-change significantly before reaching stability. It is being made available at this early stage to solicit feedback
-from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
-(repeatedly) as the API evolves.
-</p>
-</body>
-</html>
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/BootDescriptor.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/BootDescriptor.java
deleted file mode 100644
index bc63b75..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/BootDescriptor.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-import java.net.*;
-
-
-public class BootDescriptor {
-	private String id;
-	private String version;
-	private String[] libs;
-	private URL dir;
-
-	public BootDescriptor(String id, String version, String[] libs, URL dir) {
-		this.id = id;
-		this.version = version;
-		this.libs = libs;
-		this.dir = dir;
-	}
-
-	public String getId() {
-		return id;
-	}
-
-	public String getVersion() {
-		return version;
-	}
-
-	public String[] getLibraries() {
-		return libs;
-	}
-
-	public URL getPluginDirectoryURL() {
-		return dir;
-	}
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/BundleManifest.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/BundleManifest.java
deleted file mode 100644
index bdaba9e..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/BundleManifest.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-import java.io.*;
-import java.util.jar.*;
-
-import org.eclipse.osgi.util.*;
-import org.osgi.framework.*;
-/**
- * Parses MANIFEST.MF
- */
-public class BundleManifest implements IConfigurationConstants {
-	private File manifestFile;
-	private PluginEntry pluginEntry;
-	private IOException exception;
-	private String bundleURL;
-	/**
-	 * Constructor for local file
-	 */
-	public BundleManifest(File manifest) {
-		super();
-		manifestFile = manifest;
-		if (manifest.exists() && !manifest.isDirectory()) {
-			FileInputStream fos = null;
-			try {
-				fos = new FileInputStream(manifest);
-				parse(fos);
-			} catch (IOException ioe) {
-			} finally {
-				if (fos != null) {
-					try {
-						fos.close();
-					} catch (IOException e) {
-					}
-				}
-			}
-		}
-	}
-		/**
-		 * Constructor for local file
-		 */
-		public BundleManifest(InputStream input, String bundleUrl) {
-			super();
-			bundleURL = bundleUrl;
-			if (input != null) {
-				parse(input);
-			}
-		}
-	/**
-	 * Parses manifest, creates PluginEntry if manifest is valid, stores
-	 * exception if any occurs
-	 * 
-	 * @param in
-	 *            InputStream
-	 */
-	private void parse(InputStream in) {
-		try {
-			Manifest m = new Manifest(in);
-			Attributes a = m.getMainAttributes();
-			// plugin id
-			String symbolicName = a.getValue(Constants.BUNDLE_SYMBOLICNAME);
-			if (symbolicName == null) {
-				// In Eclipse manifest must have Bundle-SymbolicName attribute
-				return;
-			}
-			String id;
-			try {
-				ManifestElement[] elements = ManifestElement.parseHeader(
-						Constants.BUNDLE_SYMBOLICNAME, symbolicName);
-				id = elements[0].getValue();
-			} catch (BundleException be) {
-				throw new IOException(be.getMessage());
-			}
-			// plugin version
-			String version = a.getValue(Constants.BUNDLE_VERSION);
-			if (version == null) {
-				Utils.log(Messages.getString(
-						"BundleManifest.noVersion", Constants.BUNDLE_VERSION, //$NON-NLS-1$
-						id));
-				return;
-			}
-			String hostPlugin = a.getValue(Constants.FRAGMENT_HOST);
-			pluginEntry = new PluginEntry();
-			pluginEntry.setVersionedIdentifier(new VersionedIdentifier(id,
-					version));
-			pluginEntry.isFragment(hostPlugin != null
-					&& hostPlugin.length() > 0);
-			// Set URL
-			if(bundleURL!=null){
-				pluginEntry.setURL(bundleURL);
-			}else{
-				File pluginDir = manifestFile.getParentFile();
-				if (pluginDir != null) {
-					pluginDir = pluginDir.getParentFile();
-				}
-				if (pluginDir != null){
-					pluginEntry.setURL(PLUGINS + "/" + pluginDir.getName() + "/"); //$NON-NLS-1$ //$NON-NLS-2$
-				}
-			}
-			//
-		} catch (IOException ioe) {
-			exception = ioe;
-		}
-	}
-	public boolean exists() {
-		return exception != null || pluginEntry != null;
-	}
-	/**
-	 * Obtains PluginEntry from a manifest.
-	 * 
-	 * @return PluginEntry or null if valid manifest does not exist
-	 * @throws IOException
-	 *             if exception during parsing
-	 */
-	public PluginEntry getPluginEntry() throws IOException {
-		if (exception != null) {
-			throw exception;
-		} else {
-			return pluginEntry;
-		}
-	}
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Configuration.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Configuration.java
deleted file mode 100644
index 2c4a760..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Configuration.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-import java.net.*;
-import java.util.*;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.update.configurator.*;
-import org.w3c.dom.*;
-
-
-public class Configuration implements IConfigurationConstants {
-	
-	private HashMap sites = new HashMap();
-	private Date date;
-	private long lastModified; // needed to account for file system limitations
-	private URL url;
-	private boolean transientConfig;
-	private boolean isDirty;
-	private Configuration linkedConfig; // shared configuration
-	
-	public Configuration() {
-		this(new Date());
-		// the config is created now or out of a platform.xml without a date
-		isDirty = true;
-	}
-	public Configuration(Date date)  {
-		this.date = date;
-	}
-	
-	public void setURL(URL url) {
-		this.url = url;
-	}
-	
-	public URL getURL() {
-		return url;
-	}
-	
-	public void setLinkedConfig(Configuration linkedConfig) {
-		this.linkedConfig = linkedConfig;
-		// make all the sites read-only
-		SiteEntry[] linkedSites = linkedConfig.getSites();
-		for (int i=0; i<linkedSites.length; i++)
-			linkedSites[i].setUpdateable(false);
-	}
-	
-	public Configuration getLinkedConfig() {
-		return linkedConfig;
-	}
-	
-	/**
-	 * @return true if the config needs to be saved
-	 */
-	public boolean isDirty() {
-		return isDirty;
-	}
-	
-	public void setDirty(boolean dirty) {
-		isDirty = dirty;
-	}
-	
-	public void addSiteEntry(String url, SiteEntry site) {
-		// only add the same site once
-		if (sites.get(url) == null && (linkedConfig == null || linkedConfig.sites.get(url) == null)) {
-			site.setConfig(this);
-			sites.put(url, site);
-		}
-	}
-	
-	public void removeSiteEntry(String url) {
-		sites.remove(url);
-	}
-	
-	public SiteEntry getSiteEntry(String url) {
-		SiteEntry site = (SiteEntry)sites.get(url);
-		if (site == null && linkedConfig != null)
-			site = linkedConfig.getSiteEntry(url);
-		return site;
-	}
-	
-	public SiteEntry[] getSites() {
-		if (linkedConfig == null)
-			return (SiteEntry[]) sites.values().toArray(new SiteEntry[sites.size()]);
-		else {
-			ArrayList combinedSites = new ArrayList(sites.values());
-			combinedSites.addAll(linkedConfig.sites.values());
-			return (SiteEntry[]) combinedSites.toArray(new SiteEntry[combinedSites.size()]);
-		}
-	}
-	
-	public Element toXML(Document doc) throws CoreException {	
-		try {
-			Element configElement = doc.createElement(CFG);
-
-			configElement.setAttribute(CFG_VERSION, VERSION);
-			configElement.setAttribute(CFG_DATE, String.valueOf(date.getTime()));
-			String transitory = isTransient() ? "true" : "false"; //$NON-NLS-1$ //$NON-NLS-2$
-			configElement.setAttribute(CFG_TRANSIENT, transitory);
-						
-			if (linkedConfig != null) {
-				configElement.setAttribute(CFG_SHARED_URL, linkedConfig.getURL().toExternalForm());
-			}
-
-			// collect site entries
-			SiteEntry[] list = (SiteEntry[]) sites.values().toArray(new SiteEntry[0]);
-			for (int i = 0; i < list.length; i++) {
-				if (linkedConfig != null && linkedConfig.getSiteEntry(list[i].getURL().toExternalForm()) != null)
-					continue;
-				Element siteElement = list[i].toXML(doc);
-				configElement.appendChild(siteElement);
-			}
-			
-			return configElement;
-			
-		} catch (Exception e) {
-			throw Utils.newCoreException("", e); //$NON-NLS-1$
-		} 
-	}
-	
-	public boolean isTransient() {
-		return transientConfig;
-	}
-	
-	public void setTransient(boolean isTransient) {
-		this.transientConfig = isTransient;
-	}
-	
-	public Date getDate() {
-		return date;
-	}
-	
-	public void setDate(Date date) {
-		this.date = date;
-	}
-	
-	public boolean unconfigureFeatureEntry(IPlatformConfiguration.IFeatureEntry feature) {
-		SiteEntry[] sites = getSites();
-		for (int i=0; i<sites.length; i++)
-			if (sites[i].unconfigureFeatureEntry(feature))
-				return true;
-		return false;
-	}
-	
-	public void setLastModified(long lastModified) {
-		this.lastModified = lastModified;
-	}
-	
-	public long lastModified() {
-		if (lastModified != 0)
-			return lastModified;
-		else
-			return date.getTime();
-	}
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/ConfigurationActivator.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/ConfigurationActivator.java
deleted file mode 100644
index c6e93e8..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/ConfigurationActivator.java
+++ /dev/null
@@ -1,475 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-import java.io.*;
-import java.net.*;
-import java.util.*;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.osgi.framework.log.*;
-import org.eclipse.osgi.service.datalocation.*;
-import org.eclipse.osgi.service.debug.*;
-import org.eclipse.update.configurator.*;
-import org.osgi.framework.*;
-import org.osgi.service.packageadmin.*;
-import org.osgi.service.startlevel.*;
-import org.osgi.util.tracker.*;
-
-public class ConfigurationActivator implements BundleActivator, IBundleGroupProvider, IConfigurationConstants {
-
-	public static String PI_CONFIGURATOR = "org.eclipse.update.configurator"; //$NON-NLS-1$
-	public static final String INSTALL_LOCATION = "osgi.installLocation"; //$NON-NLS-1$
-	public static final String LAST_CONFIG_STAMP = "last.config.stamp"; //$NON-NLS-1$
-	public static final String NAME_SPACE = "org.eclipse.update"; //$NON-NLS-1$
-	public static final String UPDATE_PREFIX = "update@"; //$NON-NLS-1$
-	private static final String INITIAL_PREFIX = "initial@"; //$NON-NLS-1$
-	
-	// debug options
-	public static String OPTION_DEBUG = PI_CONFIGURATOR + "/debug"; //$NON-NLS-1$
-	// debug values
-	public static boolean DEBUG = false;
-	// os
-	private static boolean isWindows = System.getProperty("os.name").startsWith("Win"); //$NON-NLS-1$ //$NON-NLS-2$
-	
-	private static BundleContext context;
-	private ServiceTracker platformTracker;
-	private ServiceRegistration configurationFactorySR;
-	private PlatformConfiguration configuration;
-	
-	// Install location
-	private static URL installURL;
-	
-	// Location of the configuration data
-	private Location configLocation;
-	
-	//Need to store that because it is not provided by the platformConfiguration
-	private long lastTimeStamp;
-
-	// The expected states timestamp
-	private long lastStateTimeStamp;
-	
-	// Singleton
-	private static ConfigurationActivator configurator;
-
-	public ConfigurationActivator() {
-		configurator = this;
-	}
-	
-	public void start(BundleContext ctx) throws Exception {
-		context = ctx;
-		loadOptions();
-		acquireFrameworkLogService();
-		initialize();
-		
-		//Short cut, if the configuration has not changed
-		if (canRunWithCachedData()) {		
-			Utils.debug("Running with cached data"); //$NON-NLS-1$
-			Platform.registerBundleGroupProvider(this);
-			return;
-		}
-
-		Utils.debug("Starting update configurator..."); //$NON-NLS-1$
-
-		installBundles();
-		Platform.registerBundleGroupProvider(this);
-	}
-
-
-	private void initialize() throws Exception {
-		// TODO this test is not really needed any more than any plugin has 
-		// to test to see if the runtime is running.  It was there from earlier days
-		// where startup was much more disjoint.  Some day that level of decoupling
-		// will return but for now...
-		if (!Platform.isRunning())
-			throw new Exception(Messages.getString("ConfigurationActivator.initialize")); //$NON-NLS-1$
-		
-		configLocation = Platform.getConfigurationLocation();
-		// create the name space directory for update (configuration/org.eclipse.update)
-		if (!configLocation.isReadOnly()) {
-			try {
-				URL privateURL = new URL(configLocation.getURL(), NAME_SPACE);
-				File f = new File(privateURL.getFile());
-				if(!f.exists())
-					f.mkdirs();
-			} catch (MalformedURLException e1) {
-				// ignore
-			}
-		}
-		configurationFactorySR = context.registerService(IPlatformConfigurationFactory.class.getName(), new PlatformConfigurationFactory(), null);
-		configuration = getPlatformConfiguration(getInstallURL(), configLocation);
-		if (configuration == null)
-			throw Utils.newCoreException(Messages.getString("ConfigurationActivator.createConfig", configLocation.getURL().toExternalForm()), null); //$NON-NLS-1$
-
-		DataInputStream stream = null;
-		try {
-			stream = new DataInputStream(new URL(configLocation.getURL(),NAME_SPACE+'/'+LAST_CONFIG_STAMP).openStream());
-			lastTimeStamp = stream.readLong();
-			lastStateTimeStamp = stream.readLong();
-		} catch (Exception e) {
-			lastTimeStamp = configuration.getChangeStamp() - 1;
-			lastStateTimeStamp = -1;
-		} finally {
-			if (stream != null)
-				try {
-					stream.close();
-				} catch (IOException e1) {
-					Utils.log(e1.getLocalizedMessage());
-				}
-		}
-	}
-
-
-	public void stop(BundleContext ctx) throws Exception {
-		// quick fix (hack) for bug 47861
-		try {
-			PlatformConfiguration.shutdown();
-		} catch (IOException e) {
-			// TODO Auto-generated catch block
-			e.printStackTrace();
-		}
-		configurationFactorySR.unregister();
-	}
-
-	public boolean installBundles() {
-		Utils.debug("Installing bundles..."); //$NON-NLS-1$
-		ServiceReference reference = context.getServiceReference(StartLevel.class.getName());
-		int startLevel = 4;
-		String defaultStartLevel = System.getProperty("osgi.bundles.defaultStartLevel"); //$NON-NLS-1$
-		if (defaultStartLevel != null) {
-			try {
-				startLevel = Integer.parseInt(defaultStartLevel);
-			} catch (NumberFormatException e1) {
-				startLevel = 4;
-			}
-		}
-		if (startLevel < 1)
-			startLevel = 4;
-		
-		StartLevel start = null;
-		if (reference != null)
-			start = (StartLevel) context.getService(reference);
-		try {
-			// Get the list of cached bundles and compare with the ones to be installed.
-			// Uninstall all the cached bundles that do not appear on the new list
-			Bundle[] cachedBundles = context.getBundles();		
-			URL[] plugins = configuration.getPluginPath();
-				
-			// starts the list of bundles to refresh with all currently unresolved bundles (see bug 50680)
-			List toRefresh = getUnresolvedBundles();
-
-			Bundle[] bundlesToUninstall = getBundlesToUninstall(cachedBundles, plugins);
-			for (int i=0; i<bundlesToUninstall.length; i++) {
-				try {
-					if (DEBUG)
-						Utils.debug("Uninstalling " + bundlesToUninstall[i].getLocation()); //$NON-NLS-1$
-					// include every bundle being uninstalled in the list of bundles to refresh (see bug 82393)					
-					toRefresh.add(bundlesToUninstall[i]);					
-					bundlesToUninstall[i].uninstall();
-				} catch (Exception e) {
-					Utils.log(Messages.getString("ConfigurationActivator.uninstallBundle", bundlesToUninstall[i].getLocation())); //$NON-NLS-1$
-				}
-			}
-			
-			// Get the urls to install
-			String[] bundlesToInstall = getBundlesToInstall(cachedBundles, plugins);
-
-			for (int i = 0; i < bundlesToInstall.length; i++) {
-				try {
-					if (DEBUG)
-						Utils.debug("Installing " + bundlesToInstall[i]); //$NON-NLS-1$
-					URL bundleURL = new URL("reference:file:"+bundlesToInstall[i]); //$NON-NLS-1$
-					//Bundle target = context.installBundle(bundlesToInstall[i]);
-					Bundle target = context.installBundle(UPDATE_PREFIX+bundlesToInstall[i], bundleURL.openStream());
-					// any new bundle should be refreshed as well
-					toRefresh.add(target);
-					if (start != null)
-						start.setBundleStartLevel(target, startLevel);
-				
-				} catch (Exception e) {
-					if (!Utils.isAutomaticallyStartedBundle(bundlesToInstall[i]))
-						Utils.log(Messages.getString("ConfigurationActivator.installBundle", bundlesToInstall[i]) + "   " + e.getMessage()); //$NON-NLS-1$ //$NON-NLS-2$
-				}
-			}
-			context.ungetService(reference);
-			removeInitialBundles(toRefresh, cachedBundles);
-			refreshPackages((Bundle[]) toRefresh.toArray(new Bundle[toRefresh.size()]));
-			
-			// keep track of the last config successfully processed
-			writePlatformConfigurationTimeStamp();
-			return true;
-		} catch (Exception e) {
-			return false;
-		} 
-	}
-
-	private void removeInitialBundles(List bundles, Bundle[] cachedBundles) {
-		String[] initialSymbolicNames = getInitialSymbolicNames(cachedBundles);
-		Iterator iter = bundles.iterator();
-		while(iter.hasNext()) {
-			Bundle bundle = (Bundle) iter.next();
-			String symbolicName = bundle.getSymbolicName();
-			for(int i = 0; i < initialSymbolicNames.length; i++) {
-				if (initialSymbolicNames[i].equals(symbolicName)) {
-					iter.remove();
-					break;
-				}
-			}
-		}
-	}
-
-	private String[] getInitialSymbolicNames(Bundle[] cachedBundles) {
-		ArrayList initial = new ArrayList();
-		for (int i = 0; i < cachedBundles.length; i++) {
-			Bundle bundle = cachedBundles[i];
-			if (bundle.getLocation().startsWith(INITIAL_PREFIX)) {
-				String symbolicName = bundle.getSymbolicName();
-				if (symbolicName != null)
-					initial.add(symbolicName);
-			}
-		}
-		return (String[]) initial.toArray(new String[initial.size()]);
-	}
-
-	private List getUnresolvedBundles() {
-		Bundle[] allBundles = context.getBundles();
-		List unresolved = new ArrayList(); 
-		for (int i = 0; i < allBundles.length; i++)
-			if (allBundles[i].getState() == Bundle.INSTALLED)
-				unresolved.add(allBundles[i]);
-		return unresolved;
-	}
-
-	private String[] getBundlesToInstall(Bundle[] cachedBundles, URL[] newPlugins) {
-		// First, create a map of the cached bundles, for faster lookup
-		HashSet cachedBundlesSet = new HashSet(cachedBundles.length);
-		int offset = UPDATE_PREFIX.length();
-		for (int i=0; i<cachedBundles.length; i++) {
-			if (cachedBundles[i].getBundleId() == 0)
-				continue; // skip the system bundle
-			String bundleLocation = cachedBundles[i].getLocation();
-			// Ignore bundles not installed by us
-			if (!bundleLocation.startsWith(UPDATE_PREFIX))
-				continue;
-			
-			bundleLocation = bundleLocation.substring(offset);
-			cachedBundlesSet.add(bundleLocation);
-			// On windows, we will be doing case insensitive search as well, so lower it now
-			if (isWindows)
-				cachedBundlesSet.add(bundleLocation.toLowerCase());
-		}
-		
-		ArrayList bundlesToInstall = new ArrayList(newPlugins.length);
-		for (int i = 0; i < newPlugins.length; i++) {
-			String location = newPlugins[i].getFile();
-			// check if already installed
-			if (cachedBundlesSet.contains(location))
-				continue;
-			if (isWindows && cachedBundlesSet.contains(location.toLowerCase()))
-				continue;
-			
-			bundlesToInstall.add(location);
-		}
-		return (String[])bundlesToInstall.toArray(new String[bundlesToInstall.size()]);	
-	}
-	
-	
-	private Bundle[] getBundlesToUninstall(Bundle[] cachedBundles, URL[] newPlugins) {
-		// First, create a map for faster lookups
-		HashSet newPluginsSet = new HashSet(newPlugins.length);
-		for (int i=0; i<newPlugins.length; i++) {
-			
-			String pluginLocation = newPlugins[i].getFile();
-			newPluginsSet.add(pluginLocation);
-			// On windows, we will be doing case insensitive search as well, so lower it now
-			if (isWindows)
-				newPluginsSet.add(pluginLocation.toLowerCase());
-		}
-		
-		ArrayList bundlesToUninstall = new ArrayList();
-		int offset = UPDATE_PREFIX.length();
-		for (int i=0; i<cachedBundles.length; i++) {
-			if (cachedBundles[i].getBundleId() == 0)
-				continue; // skip the system bundle
-			String cachedBundleLocation = cachedBundles[i].getLocation();
-			// Only worry about bundles we installed
-			if (!cachedBundleLocation.startsWith(UPDATE_PREFIX))
-				continue;
-			cachedBundleLocation = cachedBundleLocation.substring(offset);
-
-			if (newPluginsSet.contains(cachedBundleLocation))
-				continue;
-			if (isWindows && newPluginsSet.contains(cachedBundleLocation.toLowerCase()))
-				continue;
-			
-			bundlesToUninstall.add(cachedBundles[i]);
-		}
-		return (Bundle[])bundlesToUninstall.toArray(new Bundle[bundlesToUninstall.size()]);
-	}
-	
-
-	/**
-	 * Creates and starts the platform configuration.
-	 * @return the just started platform configuration
-	 */
-	private PlatformConfiguration getPlatformConfiguration(URL installURL, Location configLocation) {
-		try {
-			PlatformConfiguration.startup(installURL, configLocation);
-		} catch (Exception e) {
-			if (platformTracker != null) {
-				String message = e.getMessage();
-				if (message == null)
-					message = ""; //$NON-NLS-1$
-				Utils.log(Utils.newStatus(message, e));
-			}
-		}
-		return PlatformConfiguration.getCurrent();
-
-	}
-
-	/**
-	 * Do PackageAdmin.refreshPackages() in a synchronous way.  After installing
-	 * all the requested bundles we need to do a refresh and want to ensure that 
-	 * everything is done before returning.
-	 * @param bundles
-	 */
-	private void refreshPackages(Bundle[] bundles) {
-		if (bundles.length == 0)
-			return;
-		ServiceReference packageAdminRef = context.getServiceReference(PackageAdmin.class.getName());
-		PackageAdmin packageAdmin = null;
-		if (packageAdminRef != null) {
-			packageAdmin = (PackageAdmin) context.getService(packageAdminRef);
-			if (packageAdmin == null)
-				return;
-		}
-		// TODO this is such a hack it is silly.  There are still cases for race conditions etc
-		// but this should allow for some progress...
-		// (patch from John A.)
-		final boolean[] flag = new boolean[] {false};
-		FrameworkListener listener = new FrameworkListener() {
-			public void frameworkEvent(FrameworkEvent event) {
-				if (event.getType() == FrameworkEvent.PACKAGES_REFRESHED)
-					synchronized (flag) {
-						flag[0] = true;
-						flag.notifyAll();
-					}
-			}
-		};
-		context.addFrameworkListener(listener);
-		packageAdmin.refreshPackages(bundles);
-		synchronized (flag) {
-			while (!flag[0]) {
-				try {
-					flag.wait();
-				} catch (InterruptedException e) {
-				}
-			}
-		}
-		context.removeFrameworkListener(listener);
-		context.ungetService(packageAdminRef);
-	}
-	
-	private void writePlatformConfigurationTimeStamp() {
-		DataOutputStream stream = null;
-		try {
-			if (configLocation.isReadOnly())
-				return;
-			
-			String configArea = configLocation.getURL().getFile();
-			lastTimeStamp = configuration.getChangeStamp();
-			lastStateTimeStamp = Platform.getPlatformAdmin().getState(false).getTimeStamp();
-			stream = new DataOutputStream(new FileOutputStream(configArea +File.separator+ NAME_SPACE+ File.separator+ LAST_CONFIG_STAMP));
-			stream.writeLong(lastTimeStamp);
-			stream.writeLong(lastStateTimeStamp);
-		} catch (Exception e) {
-			Utils.log(e.getLocalizedMessage());
-		} finally {
-			if (stream != null)
-				try {
-					stream.close();
-				} catch (IOException e1) {
-					Utils.log(e1.getLocalizedMessage());
-				}
-		}
-	}
-
-	private void loadOptions() {
-		// all this is only to get the application args		
-		DebugOptions service = null;
-		ServiceReference reference = context.getServiceReference(DebugOptions.class.getName());
-		if (reference != null)
-			service = (DebugOptions) context.getService(reference);
-		if (service == null)
-			return;
-		try {
-			DEBUG = service.getBooleanOption(OPTION_DEBUG, false);
-		} finally {
-			// we have what we want - release the service
-			context.ungetService(reference);
-		}
-	}
-	
-	private boolean canRunWithCachedData() {
-		return  !"true".equals(System.getProperty("osgi.checkConfiguration")) && //$NON-NLS-1$ //$NON-NLS-2$
-				lastTimeStamp==configuration.getChangeStamp() &&
-				lastStateTimeStamp==Platform.getPlatformAdmin().getState(false).getTimeStamp();
-	}
-				
-	public static BundleContext getBundleContext() {
-		return context;
-	}
-		
-	public static URL getInstallURL() {
-		if (installURL == null)
-			installURL = Platform.getInstallLocation().getURL();
-		return installURL;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IBundleGroupProvider#getName()
-	 */
-	public String getName() {
-		return Messages.getString("BundleGroupProvider"); //$NON-NLS-1$
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IBundleGroupProvider#getBundleGroups()
-	 */
-	public IBundleGroup[] getBundleGroups() {
-		if (configuration == null)
-			return new IBundleGroup[0];
-		else {
-			IPlatformConfiguration.IFeatureEntry[] features = configuration.getConfiguredFeatureEntries();
-			ArrayList bundleGroups = new ArrayList(features.length);
-			for (int i=0; i<features.length; i++) {
-				if (features[i] instanceof FeatureEntry 
-					&& ((FeatureEntry)features[i]).hasBranding())
-					bundleGroups.add(features[i]);
-			}
-			return (IBundleGroup[])bundleGroups.toArray(new IBundleGroup[bundleGroups.size()]);
-		}
-	}
-
-	public static void setConfigurator(ConfigurationActivator configurator) {
-		ConfigurationActivator.configurator = configurator;
-	}
-
-	public static ConfigurationActivator getConfigurator() {
-		return configurator;
-	}
-	
-	private void acquireFrameworkLogService() throws Exception{
-		ServiceReference logServiceReference = context.getServiceReference(FrameworkLog.class.getName());
-		if (logServiceReference == null)
-			return;
-		Utils.log  = (FrameworkLog) context.getService(logServiceReference);
-	}
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/ConfigurationParser.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/ConfigurationParser.java
deleted file mode 100644
index 976564e..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/ConfigurationParser.java
+++ /dev/null
@@ -1,362 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-import java.io.*;
-import java.lang.reflect.*;
-import java.net.*;
-import java.util.*;
-import javax.xml.parsers.*;
-
-import org.eclipse.core.runtime.*;
-import org.xml.sax.*;
-import org.xml.sax.helpers.*;
-
-/**
- * parse the default site.xml
- */
-
-public class ConfigurationParser extends DefaultHandler implements IConfigurationConstants {
-	
-	private final static SAXParserFactory parserFactory =
-		SAXParserFactory.newInstance();
-	private SAXParser parser;
-	
-	private URL currentSiteURL;
-	private Configuration config;
-	private URL configURL;
-	private InputStream input;
-	
-	/**
-	 * Constructor for ConfigurationParser
-	 */
-	public ConfigurationParser() throws InvocationTargetException {
-
-		try {
-			parserFactory.setNamespaceAware(true);
-			this.parser = parserFactory.newSAXParser();
-		} catch (ParserConfigurationException e) {
-			Utils.log(Utils.newStatus("ConfigurationParser", e)); //$NON-NLS-1$
-			throw new InvocationTargetException(e);
-		} catch (SAXException e) {
-			Utils.log(Utils.newStatus("ConfigurationParser", e)); //$NON-NLS-1$
-			throw new InvocationTargetException(e);
-		}
-	}
-	
-	public Configuration parse(URL url) throws Exception {
-
-		// DEBUG:		
-		Utils.debug("Start parsing Configuration:" + url); //$NON-NLS-1$	
-		long lastModified = 0;
-		try {
-			configURL = url;
-			if ("file".equals(url.getProtocol())) { //$NON-NLS-1$
-				File inputFile = new File(url.getFile());
-				if (!inputFile.exists() || !inputFile.canRead())
-					return null;
-				lastModified = inputFile.lastModified();
-				input = new FileInputStream(inputFile);
-			} else 
-				input = url.openStream();
-			parser.parse(new InputSource(input), this);
-			return config;
-		} catch (Exception e) {
-			Utils.log(Utils.newStatus("ConfigurationParser.parse() error:", e)); //$NON-NLS-1$
-			throw e;
-		} finally {
-			if (config != null)
-				config.setLastModified(lastModified);
-			try {
-				if (input != null) { 
-					input.close();
-					input = null;
-				}
-			} catch (IOException e1) {
-				Utils.log(e1.getLocalizedMessage());
-			}
-		}
-	}
-
-	/**
-	 * @see DefaultHandler#startElement(String, String, String, Attributes)
-	 */
-	public void startElement(
-		String uri,
-		String localName,
-		String qName,
-		Attributes attributes)
-		throws SAXException {
-
-		// DEBUG:		
-		Utils.debug("Start Element: uri:" + uri + " local Name:" + localName + " qName:" + qName); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		try {
-
-			String tag = localName.trim();
-
-			if (tag.equalsIgnoreCase(CFG)) {
-				processConfig(attributes);
-				return;
-			}
-
-			if (tag.equalsIgnoreCase(CFG_SITE)) {
-				processSite(attributes);
-				return;
-			}
-
-			if (tag.equalsIgnoreCase(CFG_FEATURE_ENTRY)) {
-				processFeature(attributes);
-				return;
-			}
-
-		} catch (MalformedURLException e) {
-			throw new SAXException(Messages.getString("InstalledSiteParser.UnableToCreateURL", e.getMessage()), e); //$NON-NLS-1$
-		} catch (CoreException e) {
-			throw new SAXException(Messages.getString("InstalledSiteParser.InternalError", e.toString()), e); //$NON-NLS-1$
-		}
-	}
-
-	/** 
-	 * process the Site info
-	 */
-	private void processSite(Attributes attributes)
-		throws MalformedURLException, CoreException {
-
-		if (config == null)
-			return;
-		
-		// reset current site
-		currentSiteURL = null;
-		
-		String urlString = attributes.getValue(CFG_URL); //$NON-NLS-1$
-		if (urlString == null)
-			return;
-
-		URL url = null;
-		try {
-			url = new URL(urlString);
-		} catch (MalformedURLException e) {
-			// try relative to install url
-			url = new URL(PlatformConfiguration.getInstallURL(), urlString);
-			return;
-		}
-		
-		if (!isValidSite(url))
-			return;
-		
-		// use this new site
-		currentSiteURL = url;
-
-		int policyType;
-		String[] policyList = null;
-		String typeString = attributes.getValue(CFG_POLICY); //$NON-NLS-1$
-		if (typeString == null) {
-			policyType = DEFAULT_POLICY_TYPE;
-			policyList = DEFAULT_POLICY_LIST;
-		} else {
-			int i;
-			for (i = 0; i < CFG_POLICY_TYPE.length; i++) {
-				if (typeString.equals(CFG_POLICY_TYPE[i])) {
-					break;
-				}
-			}
-			if (i >= CFG_POLICY_TYPE.length) {
-				policyType = DEFAULT_POLICY_TYPE;
-				policyList = DEFAULT_POLICY_LIST;
-			} else {
-				policyType = i;
-				String pluginList = attributes.getValue(CFG_LIST);
-				if (pluginList != null) {
-					StringTokenizer st = new StringTokenizer(pluginList,","); //$NON-NLS-1$
-					policyList = new String[st.countTokens()];
-					for (i=0; i<policyList.length; i++)
-						policyList[i] = st.nextToken();
-				}
-			}
-		}
-
-		SitePolicy sp = new SitePolicy(policyType, policyList);
-		SiteEntry site = (SiteEntry) new SiteEntry(url, sp);
-
-		String flag = attributes.getValue(CFG_UPDATEABLE); //$NON-NLS-1$
-		if (flag != null) {
-			if (flag.equals("true")) //$NON-NLS-1$
-				site.setUpdateable(true);
-			else
-				site.setUpdateable(false);
-		}
-		
-		flag = attributes.getValue(CFG_ENABLED); //$NON-NLS-1$
-		if (flag != null && flag.equals("false")) //$NON-NLS-1$
-			site.setEnabled(false);
-		else
-			site.setEnabled(true);
-
-		String linkname = attributes.getValue(CFG_LINK_FILE); //$NON-NLS-1$
-		if (linkname != null && !linkname.equals("")) { //$NON-NLS-1$
-			site.setLinkFileName(linkname.replace('/', File.separatorChar));
-		}
-
-		// DEBUG:		
-		Utils.debug("End process config site url:" + urlString + " policy:" + typeString + " updatable:"+flag ); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		
-		config.addSiteEntry(url.toExternalForm(), site);
-	}
-	
-	/** 
-	 * process the DefaultFeature info
-	 */
-	private void processFeature(Attributes attributes)
-		throws MalformedURLException, CoreException {
-
-		if (currentSiteURL == null)
-			return; // the site was not correct
-			
-		String id = attributes.getValue(CFG_FEATURE_ENTRY_ID); //$NON-NLS-1$
-		if (id == null)
-			return;
-		String version = attributes.getValue(CFG_FEATURE_ENTRY_VERSION); //$NON-NLS-1$
-		String pluginVersion = attributes.getValue(CFG_FEATURE_ENTRY_PLUGIN_VERSION); //$NON-NLS-1$
-		if (pluginVersion == null || pluginVersion.trim().length() == 0)
-			pluginVersion = version;
-		String pluginIdentifier = attributes.getValue(CFG_FEATURE_ENTRY_PLUGIN_IDENTIFIER); //$NON-NLS-1$
-		if (pluginIdentifier != null && pluginIdentifier.trim().length() == 0)
-			pluginIdentifier = null;
-		String application = attributes.getValue(CFG_FEATURE_ENTRY_APPLICATION); //$NON-NLS-1$
-		
-		// get install locations
-		String locations = attributes.getValue(CFG_FEATURE_ENTRY_ROOT);
-		StringTokenizer st = locations != null ? new StringTokenizer(locations,",") : new StringTokenizer(""); //$NON-NLS-1$ //$NON-NLS-2$
-		ArrayList rootList = new ArrayList(st.countTokens());
-		while (st.hasMoreTokens()){
-			try{
-				URL rootEntry = new URL(st.nextToken());
-				rootList.add(rootEntry);
-			} catch (MalformedURLException e) {
-				// skip bad entries ...
-			}
-		}
-		URL[] roots = (URL[]) rootList.toArray(new URL[rootList.size()]);
-
-		// get primary flag
-		boolean primary = false;
-		String flag = attributes.getValue(CFG_FEATURE_ENTRY_PRIMARY); //$NON-NLS-1$
-		if (flag != null) {
-			if (flag.equals("true")) //$NON-NLS-1$
-				primary = true;
-		}
-		
-		FeatureEntry featureEntry =  new FeatureEntry(id, version, pluginIdentifier, pluginVersion, primary, application, roots);
-
-		// set the url
-		String url = attributes.getValue(CFG_URL); //$NON-NLS-1$
-		if (url != null && url.trim().length() > 0)
-			featureEntry.setURL(url);
-		
-		SiteEntry site = config.getSiteEntry(currentSiteURL.toExternalForm());
-		site.addFeatureEntry(featureEntry);
-		
-		// configured ?
-//		String configuredString = attributes.getValue("configured"); //$NON-NLS-1$
-//		boolean configured = configuredString.trim().equalsIgnoreCase("true") ? true : false; //$NON-NLS-1$
-	}
-
-
-	/** 
-	 * process the Config info
-	 */
-	private void processConfig(Attributes attributes) {
-		String date = attributes.getValue(CFG_DATE);
-		if (date == null || date.trim().length() == 0)
-			config = new Configuration(); // constructed with current date
-		else {
-			long time = 0;
-			try {
-				time = Long.parseLong(date);
-				config = new Configuration(new Date(time));
-			} catch (NumberFormatException e1) {
-				time = new Date().getTime();
-				Utils.log(Messages.getString("InstalledSiteParser.date", date)); //$NON-NLS-1$
-				config = new Configuration(); // constructed with current date
-			}
-		}
-		
-		config.setURL(configURL);
-		
-		try {
-			String sharedURL = attributes.getValue(CFG_SHARED_URL);
-			if (sharedURL != null) {
-				ConfigurationParser parser = new ConfigurationParser();
-				Configuration sharedConfig = parser.parse(new URL(sharedURL));
-				if (sharedConfig == null)
-					throw new Exception();
-				config.setLinkedConfig(sharedConfig);
-			}
-		} catch (Exception e) {
-			// could not load from shared install
-			Utils.log(Utils.newStatus(Messages.getString("ConfigurationParser.cannotLoadSharedInstall"), e)); //$NON-NLS-1$
-		}
-
-		String flag = attributes.getValue(CFG_TRANSIENT);
-		if (flag != null) {
-			config.setTransient(flag.equals("true")); //$NON-NLS-1$
-		}
-		
-		// DEBUG:		
-		Utils.debug("End Processing Config Tag: date:" + attributes.getValue(CFG_DATE)); //$NON-NLS-1$
-	}
-	
-	private boolean isValidSite(URL url) {
-		URL resolvedURL=  url;
-		if (url.getProtocol().equals("platform")) { // $NON-NLS-1$
-			try {
-				resolvedURL = PlatformConfiguration.resolvePlatformURL(url); // 19536
-			} catch (IOException e) {
-				// will use the baseline URL ...
-			}
-		}
-		
-		if (!PlatformConfiguration.supportsDetection(resolvedURL))
-			return false;
-
-		File siteRoot = new File(resolvedURL.getFile().replace('/', File.separatorChar));
-		if (!siteRoot.exists()) {
-			Utils.debug("Site " + resolvedURL + " does not exist "); //$NON-NLS-1$ //$NON-NLS-2$
-			return false;
-		} else
-			return true;
-	}
-	/* (non-Javadoc)
-	 * @see org.xml.sax.ContentHandler#endElement(java.lang.String, java.lang.String, java.lang.String)
-	 */
-	public void endElement(String uri, String localName, String qName)
-			throws SAXException {
-		super.endElement(uri, localName, qName);
-		
-		// DEBUG:		
-		Utils.debug("End Element: uri:" + uri + " local Name:" + localName + " qName:" + qName); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		try {
-
-			String tag = localName.trim();
-
-			if (tag.equalsIgnoreCase(CFG)) {
-				 // This is a bit of a hack.
-				 // When no features were added to the site, but the site is initialized from platform.xml 
-				 // we need to set the feature set to empty, so we don't try to detect them.
-				SiteEntry[] sites = config.getSites();
-				for (int i=0; i<sites.length; i++)
-					sites[i].initialized();
-				return;
-			}
-		} catch (Exception e) {
-			// silent ignore
-		}
-	}
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/FeatureEntry.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/FeatureEntry.java
deleted file mode 100644
index 8debb9d..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/FeatureEntry.java
+++ /dev/null
@@ -1,361 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-import java.net.*;
-import java.util.*;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.update.configurator.*;
-import org.eclipse.update.internal.configurator.branding.*;
-import org.osgi.framework.*;
-import org.w3c.dom.*;
-
-
-/**
- * 
- * Feature information
- */
-public class FeatureEntry
-		implements
-			IPlatformConfiguration.IFeatureEntry,
-			IConfigurationConstants,
-			IBundleGroup,
-			IBundleGroupConstants,
-			IProduct,
-			IProductConstants {
-	private String id;
-	private String version;
-	private String pluginVersion;
-	private String application;
-	private URL[] root;
-	private boolean primary;
-	private String pluginIdentifier;
-	private String url;
-	private String description;
-	private String licenseURL;
-	private ArrayList plugins;
-	private AboutInfo branding;
-	private SiteEntry site;
-	private ResourceBundle resourceBundle;
-	private boolean fullyParsed;
-
-	public FeatureEntry(String id, String version, String pluginIdentifier, String pluginVersion, boolean primary, String application, URL[] root) {
-		if (id == null)
-			throw new IllegalArgumentException();
-		this.id = id;
-		this.version = version;
-		this.pluginVersion = pluginVersion;
-		this.pluginIdentifier = pluginIdentifier;
-		this.primary = primary;
-		this.application = application;
-		this.root = (root == null ? new URL[0] : root);
-	}
-
-	public FeatureEntry( String id, String version, String pluginVersion, boolean primary, String application, URL[] root) {
-		this(id, version, id, pluginVersion, primary, application, root);
-	}
-
-	public void setSite(SiteEntry site) {
-		this.site = site;
-	}
-	
-	public SiteEntry getSite() {
-		return this.site;
-	}
-	
-	public void addPlugin(PluginEntry plugin) {
-		if (plugins == null)
-			plugins = new ArrayList();
-		plugins.add(plugin);
-	}
-	
-	public PluginEntry[] getPluginEntries() {
-		if (plugins == null)
-			fullParse();
-		return (PluginEntry[])plugins.toArray(new PluginEntry[plugins.size()]);
-	}
-	
-	/**
-	 * Sets the url string (relative to the site url)
-	 * @param url
-	 */
-	public void setURL(String url) {
-		this.url = url;
-	}
-	
-	/**
-	 * @return the feature url (relative to the site): features/org.eclipse.platform/
-	 */
-	public String getURL() {
-//		if (url == null)
-//			url = FEATURES + "/" + id + "_" + version + "/";
-		return url;
-	}
-	
-	/*
-	 * @see IFeatureEntry#getFeatureIdentifier()
-	 */
-	public String getFeatureIdentifier() {
-		return id;
-	}
-
-	/*
-	 * @see IFeatureEntry#getFeatureVersion()
-	 */
-	public String getFeatureVersion() {
-		return version;
-	}
-
-	/*
-	 * @see IFeatureEntry#getFeaturePluginVersion()
-	 */
-	public String getFeaturePluginVersion() {
-		return pluginVersion != null && pluginVersion.length() > 0 ? pluginVersion : null;
-	}
-
-	/*
-	 * @see IFeatureEntry#getFeaturePluginIdentifier()
-	 */
-	public String getFeaturePluginIdentifier() {
-		// if no plugin is specified, use the feature id
-		return pluginIdentifier != null && pluginIdentifier.length() > 0 ? pluginIdentifier : id;
-	}
-	
-	/*
-	 * @see IFeatureEntry#getFeatureApplication()
-	 */
-	public String getFeatureApplication() {
-		return application;
-	}
-
-	/*
-	 * @see IFeatureEntry#getFeatureRootURLs()
-	 */
-	public URL[] getFeatureRootURLs() {
-		return root;
-	}
-
-	/*
-	 * @see IFeatureEntry#canBePrimary()
-	 */
-	public boolean canBePrimary() {
-		return primary;
-	}
-
-	public Element toXML(Document doc) {
-	
-		Element featureElement = doc.createElement(CFG_FEATURE_ENTRY);		
-		// write out feature entry settings
-		if (id != null)
-			featureElement.setAttribute(CFG_FEATURE_ENTRY_ID, id); 
-		if (primary)
-			featureElement.setAttribute(CFG_FEATURE_ENTRY_PRIMARY, "true"); //$NON-NLS-1$
-		if (version != null)
-			featureElement.setAttribute(CFG_FEATURE_ENTRY_VERSION, version); 
-		if (pluginVersion != null && !pluginVersion.equals(version) && pluginVersion.length() > 0)
-			featureElement.setAttribute(CFG_FEATURE_ENTRY_PLUGIN_VERSION, pluginVersion); 
-		if (pluginIdentifier != null && !pluginIdentifier.equals(id) && pluginIdentifier.length() > 0)
-			featureElement.setAttribute(CFG_FEATURE_ENTRY_PLUGIN_IDENTIFIER, pluginIdentifier);
-		if (application != null)
-			featureElement.setAttribute(CFG_FEATURE_ENTRY_APPLICATION, application);
-		if (url != null)
-			featureElement.setAttribute(CFG_URL, url);
-		
-		URL[] roots = getFeatureRootURLs();
-		for (int i=0; i<roots.length; i++) {
-			String root = roots[i].toExternalForm();
-			if (root != null && root.trim().length() > 0){
-				Element rootElement = doc.createElement(CFG_FEATURE_ENTRY_ROOT);
-				rootElement.appendChild(doc.createTextNode(root));
-				featureElement.appendChild(rootElement);
-			}
-		}
-		
-		return featureElement;
-	}
-	
-	public void setDescription(String description) {
-		this.description = description;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IBundleGroup#getBundles()
-	 */
-	public Bundle[] getBundles() {
-		if (plugins == null)
-			fullParse();
-		
-		ArrayList bundles = new ArrayList(plugins.size());
-		for (int i=0; i<plugins.size(); i++) {
-			PluginEntry plugin = (PluginEntry)plugins.get(i);
-			// get the highest version for the plugin
-			Bundle bundle = Platform.getBundle(plugin.getPluginIdentifier());
-			if (bundle != null)
-				bundles.add(bundle);
-		}
-		return (Bundle[])bundles.toArray(new Bundle[bundles.size()]);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IBundleGroup#getDescription()
-	 */
-	public String getDescription() {
-		if (description == null)
-			fullParse();
-		return description;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IBundleGroup#getIdentifier()
-	 */
-	public String getIdentifier() {
-		return id;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IBundleGroup#getName()
-	 */
-	public String getName() {
-		if (branding == null)
-			branding = AboutInfo.readFeatureInfo(id, version, getFeaturePluginIdentifier());
-		return branding.getProductName();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IBundleGroup#getProperty(java.lang.String)
-	 */
-	public String getProperty(String key) {
-		if (key == null)
-			return null;
-		
-		if (branding == null)
-			branding = AboutInfo.readFeatureInfo(id, version, getFeaturePluginIdentifier());
-		
-		// IBundleGroupConstants
-		if (key.equals(FEATURE_IMAGE))
-			return branding.getFeatureImageURL() == null ? null : branding.getFeatureImageURL().toExternalForm();
-		else if (key.equals(TIPS_AND_TRICKS_HREF)) 
-			return branding.getTipsAndTricksHref();
-		else if (key.equals(IBundleGroupConstants.WELCOME_PAGE)) // same value is used by product and bundle group
-			return branding.getWelcomePageURL() == null ? null : branding.getWelcomePageURL().toExternalForm();
-		else if (key.equals(WELCOME_PERSPECTIVE))
-			return branding.getWelcomePerspectiveId();
-		// IProductConstants
-		else if (key.equals(APP_NAME)) 
-			return branding.getAppName();
-		else if (key.equals(ABOUT_TEXT))
-			return branding.getAboutText();
-		else if (key.equals(ABOUT_IMAGE))
-			return branding.getAboutImageURL() == null ? null : branding.getAboutImageURL().toExternalForm();
-		else if (key.equals(WINDOW_IMAGE))
-			return branding.getWindowImageURL()== null ? null : branding.getWindowImageURL().toExternalForm();
-		else if (key.equals(WINDOW_IMAGES)) {
-			URL[] urls = branding.getWindowImagesURLs();
-			if (urls == null)
-				return null;
-			StringBuffer windowImagesURLs = new StringBuffer();
-			for (int i=0; i<urls.length; i++){
-				windowImagesURLs.append(urls[i].toExternalForm());
-				if (i != urls.length-1)
-					windowImagesURLs.append(',');
-			}
-			return windowImagesURLs.toString();
-		} else if (key.equals(LICENSE_HREF))
-			return getLicenseURL();
-		
-		return null;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IBundleGroup#getProviderName()
-	 */
-	public String getProviderName() {
-		if (branding == null)
-			branding = AboutInfo.readFeatureInfo(id, version, getFeaturePluginIdentifier());
-		return branding.getProviderName();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IBundleGroup#getVersion()
-	 */
-	public String getVersion() {
-		return version;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IProduct#getApplication()
-	 */
-	public String getApplication() {
-		return application;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IProduct#getId()
-	 */
-	public String getId() {
-		return id;
-	}
-	
-	public ResourceBundle getResourceBundle(){
-		if (resourceBundle != null)
-			return resourceBundle;
-		
-		// Determine the properties file location
-		if (site == null)
-			return null;
-		
-		ResourceBundle bundle = null;
-		try {
-			URL propertiesURL = new URL(site.getResolvedURL(), getURL());
-			ClassLoader l = new URLClassLoader(new URL[] { propertiesURL }, null);
-			bundle = ResourceBundle.getBundle(IConfigurationConstants.CFG_FEATURE_ENTRY, Utils.getDefaultLocale(), l);
-		} catch (MissingResourceException e) {
-			Utils.log(e.getLocalizedMessage()); 
-		} catch (MalformedURLException e) {
-			Utils.log(e.getLocalizedMessage()); 
-		}
-		return bundle;
-	}
-	
-	public void setLicenseURL(String licenseURL) {
-		this.licenseURL = licenseURL;
-	}
-	
-	public String getLicenseURL() {
-		if (licenseURL == null)
-			fullParse();
-		if (licenseURL == null)
-			return null;
-		
-		String resolvedURL = Utils.getResourceString(getResourceBundle(), licenseURL);
-		if (resolvedURL.startsWith("http://")) //$NON-NLS-1$
-			return resolvedURL;
-		else {
-			try {
-				return new URL(getSite().getResolvedURL(), getURL() + resolvedURL).toExternalForm();
-			} catch (MalformedURLException e) {
-				return resolvedURL;
-			}
-		}
-	}
-	
-	private void fullParse() {
-		if (fullyParsed)
-			return;
-		fullyParsed = true;
-		if (plugins == null) 
-			plugins = new ArrayList();
-		FullFeatureParser parser = new FullFeatureParser(this);
-		parser.parse();
-	}
-	
-	public Bundle getDefiningBundle() {
-		return Platform.getBundle(getFeaturePluginIdentifier());
-	}
-	
-	public boolean hasBranding() {
-        String bundleId = getFeaturePluginIdentifier();
-		return bundleId != null && Platform.getBundle(bundleId) != null;
-	}
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/FeatureParser.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/FeatureParser.java
deleted file mode 100644
index 86429de..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/FeatureParser.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-
-import java.io.*;
-import java.net.*;
-
-import javax.xml.parsers.*;
-
-import org.xml.sax.*;
-import org.xml.sax.helpers.*;
-
-/**
- * Default feature parser.
- * Parses the feature manifest file as defined by the platform.
- * 
- * @since 3.0
- */
-public class FeatureParser extends DefaultHandler {
-
-	private SAXParser parser;
-	private FeatureEntry feature;
-	private URL url;
-
-	private final static SAXParserFactory parserFactory =
-		SAXParserFactory.newInstance();
-
-	/**
-	 * Constructs a feature parser.
-	 */
-	public FeatureParser() {
-		super();
-		try {
-			parserFactory.setNamespaceAware(true);
-			this.parser = parserFactory.newSAXParser();
-		} catch (ParserConfigurationException e) {
-			System.out.println(e);
-		} catch (SAXException e) {
-			System.out.println(e);
-		}
-	}
-	/**
-	 * Parses the specified url and constructs a feature
-	 */
-	public FeatureEntry parse(URL featureURL){
-		feature=null;
-		InputStream in = null;
-		try {
-			this.url = featureURL;
-			in = featureURL.openStream();
-			parser.parse(new InputSource(in), this);
-		} catch (SAXException e) {;
-		} catch (IOException e) {
-		} finally {
-			if (in != null)
-				try {
-					in.close();
-				} catch (IOException e1) {
-					Utils.log(e1.getLocalizedMessage());
-				}
-		}
-		return feature;
-	}
-
-	/**
-	 * Handle start of element tags
-	 * @see DefaultHandler#startElement(String, String, String, Attributes)
-	 * @since 2.0
-	 */
-	public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
-
-		Utils.debug("Start Element: uri:" + uri + " local Name:" + localName + " qName:" + qName); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-
-		if ("feature".equals(localName)) { //$NON-NLS-1$
-			processFeature(attributes);
-			// stop parsing now
-			throw new SAXException(""); //$NON-NLS-1$
-		} else {
-		}
-		
-	}
-
-	/*
-	 * Process feature information
-	 */
-	private void processFeature(Attributes attributes) {
-
-		// identifier and version
-		String id = attributes.getValue("id"); //$NON-NLS-1$
-		String ver = attributes.getValue("version"); //$NON-NLS-1$
-
-		if (id == null || id.trim().equals("") //$NON-NLS-1$
-		|| ver == null || ver.trim().equals("")) { //$NON-NLS-1$
-			System.out.println(Messages.getString("FeatureParser.IdOrVersionInvalid", new String[] { id, ver})); //$NON-NLS-1$
-		} else {
-//			String label = attributes.getValue("label"); //$NON-NLS-1$
-//			String provider = attributes.getValue("provider-name"); //$NON-NLS-1$
-//			String imageURL = attributes.getValue("image"); //$NON-NLS-1$
-			String os = attributes.getValue("os"); //$NON-NLS-1$
-			String ws = attributes.getValue("ws"); //$NON-NLS-1$
-			String nl = attributes.getValue("nl"); //$NON-NLS-1$
-			String arch = attributes.getValue("arch"); //$NON-NLS-1$
-			if (!Utils.isValidEnvironment(os, ws, arch, nl)) 
-				return;
-//			String exclusive = attributes.getValue("exclusive"); //$NON-NLS-1$
-//			String affinity = attributes.getValue("colocation-affinity"); //$NON-NLS-1$
-
-			String primary = attributes.getValue("primary"); //$NON-NLS-1$
-			boolean isPrimary = "true".equals(primary); //$NON-NLS-1$
-			String application = attributes.getValue("application"); //$NON-NLS-1$
-			String plugin = attributes.getValue("plugin"); //$NON-NLS-1$
-
-			//TODO rootURLs
-			feature = new FeatureEntry(id, ver, plugin, "", isPrimary, application, null ); //$NON-NLS-1$
-			if ("file".equals(url.getProtocol())) { //$NON-NLS-1$
-				File f = new File(url.getFile().replace('/', File.separatorChar));
-				feature.setURL("features" + "/" + f.getParentFile().getName() + "/");// + f.getName()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-			} else {
-				feature.setURL(url.toExternalForm());
-			}
-
-			Utils.
-				debug("End process DefaultFeature tag: id:" +id + " ver:" +ver + " url:" + feature.getURL()); 	 //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		}
-	}
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/FullFeatureParser.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/FullFeatureParser.java
deleted file mode 100644
index 69e14e1..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/FullFeatureParser.java
+++ /dev/null
@@ -1,149 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-
-import java.io.*;
-import java.net.*;
-import java.util.*;
-
-import javax.xml.parsers.*;
-
-import org.xml.sax.*;
-import org.xml.sax.helpers.*;
-
-/**
- * A more complete feature parser. It adds the plugins listed to the feature.
- */
-public class FullFeatureParser extends DefaultHandler implements IConfigurationConstants{
-
-	private SAXParser parser;
-	private FeatureEntry feature;
-	private URL url;
-	private boolean isDescription;
-	private StringBuffer description = new StringBuffer();
-
-	private final static SAXParserFactory parserFactory =
-		SAXParserFactory.newInstance();
-
-	/**
-	 * Constructs a feature parser.
-	 */
-	public FullFeatureParser(FeatureEntry feature) {
-		super();
-		this.feature = feature;
-		try {
-			parserFactory.setNamespaceAware(true);
-			this.parser = parserFactory.newSAXParser();
-		} catch (ParserConfigurationException e) {
-			System.out.println(e);
-		} catch (SAXException e) {
-			System.out.println(e);
-		}
-	}
-	/**
-	 */
-	public void parse(){
-		InputStream in = null;
-		try {
-			if (feature.getSite() == null)
-				return;
-			this.url = new URL(feature.getSite().getResolvedURL(), feature.getURL() + FEATURE_XML);
-			in = url.openStream();
-			parser.parse(new InputSource(in), this);
-		} catch (SAXException e) {;
-		} catch (IOException e) {
-		} finally {
-			if (in != null)
-				try {
-					in.close();
-				} catch (IOException e1) {
-					Utils.log(e1.getLocalizedMessage());
-				}
-		}
-	}
-
-	/**
-	 * Handle start of element tags
-	 * @see DefaultHandler#startElement(String, String, String, Attributes)
-	 * @since 2.0
-	 */
-	public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
-
-		Utils.debug("Start Element: uri:" + uri + " local Name:" + localName + " qName:" + qName); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-
-		if ("plugin".equals(localName)) { //$NON-NLS-1$
-			processPlugin(attributes);
-		} else if ("description".equals(localName)){ //$NON-NLS-1$
-			isDescription = true;
-		} else if ("license".equals(localName)) { //$NON-NLS-1$
-			processLicense(attributes);
-		}
-	}
-
-	/*
-	 * Process feature information
-	 */
-	private void processPlugin(Attributes attributes) {
-
-		// identifier and version
-		String id = attributes.getValue("id"); //$NON-NLS-1$
-		String ver = attributes.getValue("version"); //$NON-NLS-1$
-
-		if (id == null || id.trim().equals("") //$NON-NLS-1$
-		|| ver == null || ver.trim().equals("")) { //$NON-NLS-1$
-			System.out.println(Messages.getString("FeatureParser.IdOrVersionInvalid", new String[] { id, ver})); //$NON-NLS-1$
-		} else {
-//			String label = attributes.getValue("label"); //$NON-NLS-1$
-//			String provider = attributes.getValue("provider-name"); //$NON-NLS-1$
-			String nl = attributes.getValue("nl"); //$NON-NLS-1$
-			String os = attributes.getValue("os"); //$NON-NLS-1$
-			String ws = attributes.getValue("ws"); //$NON-NLS-1$
-			String arch = attributes.getValue("arch"); //$NON-NLS-1$
-			if (!Utils.isValidEnvironment(os, ws, arch,nl))
-				return;
-
-			PluginEntry plugin = new PluginEntry();
-			plugin.setPluginIdentifier(id);
-			plugin.setPluginVersion(ver);
-			feature.addPlugin(plugin);
-			
-			Utils.
-				debug("End process DefaultFeature tag: id:" +id + " ver:" +ver + " url:" + feature.getURL()); 	 //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		}
-	}
-	
-	private void processLicense(Attributes attributes ){
-		feature.setLicenseURL(attributes.getValue("url")); //$NON-NLS-1$
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.xml.sax.ContentHandler#characters(char[], int, int)
-	 */
-	public void characters(char[] ch, int start, int length)
-			throws SAXException {
-		if (!isDescription)
-			return;
-		description.append(ch, start, length);
-	}
-	/* (non-Javadoc)
-	 * @see org.xml.sax.ContentHandler#endElement(java.lang.String, java.lang.String, java.lang.String)
-	 */
-	public void endElement(String uri, String localName, String qName)
-			throws SAXException {
-		if ("description".equals(localName)) { //$NON-NLS-1$
-			isDescription = false;
-			String d = description.toString().trim();
-			ResourceBundle bundle = feature.getResourceBundle();
-			feature.setDescription(Utils.getResourceString(bundle, d));
-		}
-	}
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/IConfigurationConstants.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/IConfigurationConstants.java
deleted file mode 100644
index b75c9d2..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/IConfigurationConstants.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-import org.eclipse.update.configurator.IPlatformConfiguration.*;
-
-/**
- * Constants
- */
-public interface IConfigurationConstants {
-	public static final String ECLIPSE_PRODUCT = "eclipse.product"; //$NON-NLS-1$
-	public static final String ECLIPSE_APPLICATION = "eclipse.application"; //$NON-NLS-1$
-	public static final String CFG = "config"; //$NON-NLS-1$
-	public static final String CFG_BOOT_PLUGIN = "bootstrap"; //$NON-NLS-1$
-	public static final String CFG_SITE = "site"; //$NON-NLS-1$
-	public static final String CFG_URL = "url"; //$NON-NLS-1$
-	public static final String CFG_POLICY = "policy"; //$NON-NLS-1$
-	public static final String[] CFG_POLICY_TYPE = { "USER-INCLUDE", "USER-EXCLUDE", "MANAGED-ONLY" }; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-	public static final String CFG_POLICY_TYPE_UNKNOWN = "UNKNOWN"; //$NON-NLS-1$
-	public static final String CFG_LIST = "list"; //$NON-NLS-1$
-	public static final String CFG_STAMP = "stamp"; //$NON-NLS-1$
-	public static final String CFG_FEATURE_STAMP = "stamp.features"; //$NON-NLS-1$
-	public static final String CFG_PLUGIN_STAMP = "stamp.plugins"; //$NON-NLS-1$
-	public static final String CFG_UPDATEABLE = "updateable"; //$NON-NLS-1$
-	public static final String CFG_LINK_FILE = "linkfile"; //$NON-NLS-1$
-	public static final String CFG_FEATURE_ENTRY = "feature"; //$NON-NLS-1$
-	public static final String CFG_FEATURE_ENTRY_ID = "id"; //$NON-NLS-1$
-	public static final String CFG_FEATURE_ENTRY_PRIMARY = "primary"; //$NON-NLS-1$
-	public static final String CFG_FEATURE_ENTRY_VERSION = "version"; //$NON-NLS-1$
-	public static final String CFG_FEATURE_ENTRY_PLUGIN_VERSION = "plugin-version"; //$NON-NLS-1$
-	public static final String CFG_FEATURE_ENTRY_PLUGIN_IDENTIFIER = "plugin-identifier"; //$NON-NLS-1$
-	public static final String CFG_FEATURE_ENTRY_APPLICATION = "application"; //$NON-NLS-1$
-	public static final String CFG_FEATURE_ENTRY_ROOT = "root"; //$NON-NLS-1$
-	public static final String CFG_DATE = "date"; //$NON-NLS-1$
-	public static final String CFG_PLUGIN = "plugin"; //$NON-NLS-1$
-	public static final String CFG_FRAGMENT = "fragment"; //$NON-NLS-1$
-	public static final String CFG_ENABLED = "enabled"; //$NON-NLS-1$
-	public static final String CFG_SHARED_URL = "shared_ur"; //$NON-NLS-1$
-	
-
-	public static final String CFG_VERSION = "version"; //$NON-NLS-1$
-	public static final String CFG_TRANSIENT = "transient"; //$NON-NLS-1$
-	public static final String VERSION = "3.0"; //$NON-NLS-1$
-//	public static final String EOF = "eof"; //$NON-NLS-1$
-	public static final int CFG_LIST_LENGTH = 10;
-
-	public static final int DEFAULT_POLICY_TYPE = ISitePolicy.USER_EXCLUDE;
-	public static final String[] DEFAULT_POLICY_LIST = new String[0];
-	
-	public static final String PLUGINS = "plugins"; //$NON-NLS-1$
-	public static final String FEATURES = "features"; //$NON-NLS-1$
-	public static final String PLUGIN_XML = "plugin.xml"; //$NON-NLS-1$
-	public static final String FRAGMENT_XML = "fragment.xml"; //$NON-NLS-1$
-	public static final String META_MANIFEST_MF = "META-INF/MANIFEST.MF"; //$NON-NLS-1$
-	public static final String FEATURE_XML = "feature.xml"; //$NON-NLS-1$
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Locker.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Locker.java
deleted file mode 100644
index 4752fef..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Locker.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-import java.io.IOException;
-
-/**
- * Internal class.
- */
-public interface Locker {
-	public boolean lock() throws IOException;
-	public void release();
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Locker_JavaIo.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Locker_JavaIo.java
deleted file mode 100644
index 28b1fef..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Locker_JavaIo.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-import java.io.*;
-
-/**
- * Internal class.
- */
-public class Locker_JavaIo implements Locker {
-	private File lockFile;
-	private RandomAccessFile lockRAF;
-
-	public Locker_JavaIo(File lockFile) {
-		this.lockFile = lockFile;
-	}
-
-	public synchronized boolean lock() throws IOException {
-		//if the lock file already exists, try to delete,
-		//assume failure means another eclipse has it open
-		if (lockFile.exists())
-			lockFile.delete();
-		if (lockFile.exists())
-			return false;
-
-		//open the lock file so other instances can't co-exist
-		lockRAF = new RandomAccessFile(lockFile, "rw"); //$NON-NLS-1$
-		lockRAF.writeByte(0);
-
-		return true;
-	}
-
-	public synchronized void release() {
-		try {
-			if (lockRAF != null) {
-				lockRAF.close();
-				lockRAF = null;
-			}
-		} catch (IOException e) {
-			//don't complain, we're making a best effort to clean up
-		}
-		if (lockFile != null)
-			lockFile.delete();
-	}
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Locker_JavaNio.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Locker_JavaNio.java
deleted file mode 100644
index c7d8a6c..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Locker_JavaNio.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-import java.io.*;
-import java.nio.channels.FileLock;
-
-/**
- * Internal class.
- */
-public class Locker_JavaNio implements Locker {
-	private File lockFile;
-	private FileLock fileLock;
-
-	public Locker_JavaNio(File lockFile) {
-		this.lockFile = lockFile;
-	}
-
-	public synchronized boolean lock() throws IOException {
-		RandomAccessFile raf = new RandomAccessFile(lockFile, "rw"); //$NON-NLS-1$
-		fileLock = raf.getChannel().lock();
-		
-		if (fileLock != null)
-			return true;
-		return false;
-	}
-
-	public synchronized void release() {
-		if (fileLock != null) {
-			try {
-				fileLock.release();
-			} catch (IOException e) {
-				//don't complain, we're making a best effort to clean up
-			}
-			fileLock = null;
-		}
-	}
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Messages.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Messages.java
deleted file mode 100644
index 211c181..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Messages.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-import java.text.MessageFormat;
-import java.util.*;
-
-public class Messages {
-	private static String bundleName = "org.eclipse.update.internal.configurator.messages"; //$NON-NLS-1$
-	private static ResourceBundle bundle = ResourceBundle.getBundle(bundleName, Locale.getDefault());
-
-	/**
-	 * Lookup the message with the given ID in this catalog 
-	 */
-	public static String getString(String id) {
-		return getString(id, (String[]) null);
-	}
-	/**
-	 * Lookup the message with the given ID in this catalog and bind its
-	 * substitution locations with the given string.
-	 */
-	public static String getString(String id, String binding) {
-		return getString(id, new String[] { binding });
-	}
-	/**
-	 * Lookup the message with the given ID in this catalog and bind its
-	 * substitution locations with the given strings.
-	 */
-	public static String getString(String id, String binding1, String binding2) {
-		return getString(id, new String[] { binding1, binding2 });
-	}
-
-	/**
-	 * Lookup the message with the given ID in this catalog and bind its
-	 * substitution locations with the given string values.
-	 */
-	public static String getString(String id, String[] bindings) {
-		if (id == null)
-			return "No message available"; //$NON-NLS-1$
-		String message = null;
-		try {
-			message = bundle.getString(id);
-		} catch (MissingResourceException e) {
-			// If we got an exception looking for the message, fail gracefully by just returning
-			// the id we were looking for.  In most cases this is semi-informative so is not too bad.
-			return "Missing message: " + id + " in: " + bundleName; //$NON-NLS-1$ //$NON-NLS-2$
-		}
-		if (bindings == null)
-			return message;
-		return MessageFormat.format(message, bindings);
-	}
-	/**
-	 * Print a debug message to the console. If the given boolean is <code>true</code> then
-	 * pre-pend the message with the current date.
-	 */
-	public static void debug(boolean includeDate, String message) {
-		if (includeDate)
-			message = new Date(System.currentTimeMillis()).toString() + " - " + message; //$NON-NLS-1$
-		System.out.println(message);
-	}
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/PlatformConfiguration.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/PlatformConfiguration.java
deleted file mode 100644
index 20313a5..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/PlatformConfiguration.java
+++ /dev/null
@@ -1,1182 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-import java.io.*;
-import java.lang.reflect.*;
-import java.net.*;
-//PAL nio optional
-//import java.nio.channels.*;
-import java.util.*;
-
-import javax.xml.parsers.*;
-//PAL cdcFoundation
-//import javax.xml.transform.*;
-//import javax.xml.transform.dom.*;
-//import javax.xml.transform.stream.*;
-import org.eclipse.core.runtime.*;
-import org.eclipse.osgi.service.datalocation.*;
-import org.eclipse.update.configurator.*;
-import org.w3c.dom.*;
-
-/**
- * This class is responsible for providing the features and plugins (bundles) to 
- * the runtime. Configuration data is stored in the configuration/org.eclipse.update/platform.xml file.
- * When eclipse starts, it tries to load the config info from platform.xml.
- * If the file does not exist, then it also tries to read it from a temp or backup file.
- * If this does not succeed, a platform.xml is created by inspecting the eclipse 
- * installation directory (its features and plugin folders).
- * If platform.xml already exists, a check is made to see when it was last modified
- * and whether there are any file system changes that are newer (users may manually unzip 
- * features and plugins). In this case, the newly added features and plugins are picked up.
- * A check for existence of features and plugins is also performed, to detect deletions.
- */
-public class PlatformConfiguration implements IPlatformConfiguration, IConfigurationConstants {
-
-	private static PlatformConfiguration currentPlatformConfiguration = null;
-	private static final DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
-//	private static final TransformerFactory transformerFactory = TransformerFactory.newInstance();
-	private static final String XML_ENCODING = "UTF-8";
-
-	private Configuration config;
-	private URL configLocation;
-	private HashMap externalLinkSites; // used to restore prior link site state
-	private long changeStamp;
-	private long featuresChangeStamp;
-	private boolean featuresChangeStampIsValid;
-	private long pluginsChangeStamp;
-	private boolean pluginsChangeStampIsValid;
-	//PAL nio optional
-	//private FileLock lock;
-	private Locker lock = null;
-	private static boolean checkNio = false;
-	private static boolean useNio;
-
-	private static final String ECLIPSE = "eclipse"; //$NON-NLS-1$
-	private static final String CONFIG_HISTORY = "history"; //$NON-NLS-1$
-	private static final String PLATFORM_XML = "platform.xml"; //$NON-NLS-1$
-	private static final String CONFIG_NAME = ConfigurationActivator.NAME_SPACE + "/" + PLATFORM_XML; //$NON-NLS-1$
-	private static final String CONFIG_INI = "config.ini"; //NON-NLS-1$ //$NON-NLS-1$
-	private static final String CONFIG_FILE_LOCK_SUFFIX = ".lock"; //$NON-NLS-1$
-	private static final String CONFIG_FILE_TEMP_SUFFIX = ".tmp"; //$NON-NLS-1$
-	private static final String LINKS = "links"; //$NON-NLS-1$
-	private static final String[] BOOTSTRAP_PLUGINS = {}; //$NON-NLS-1$
-
-	private static final String DEFAULT_FEATURE_APPLICATION = "org.eclipse.ui.ide.workbench"; //$NON-NLS-1$
-
-	private static final String LINK_PATH = "path"; //$NON-NLS-1$
-	private static final String LINK_READ = "r"; //$NON-NLS-1$
-	private static final String LINK_READ_WRITE = "rw"; //$NON-NLS-1$
-	private static URL installURL;
-	
-	private PlatformConfiguration(Location platformConfigLocation) throws CoreException, IOException {
-
-		this.externalLinkSites = new HashMap();
-		this.config = null;
-		
-		// initialize configuration
-		initializeCurrent(platformConfigLocation);
-
-		// Detect external links. These are "soft link" to additional sites. The link
-		// files are usually provided by external installation programs. They are located
-		// relative to this configuration URL.
-		// Note: don't do it for self hosting
-		if (!isTransient())
-			configureExternalLinks();
-
-		// Validate sites in the configuration. Causes any sites that do not exist to
-		// be removed from the configuration
-		validateSites();
-
-		// compute differences between configuration and actual content of the sites
-		// (base sites and link sites)
-		// Note: when the config is transient (generated by PDE, etc.) we don't reconcile
-		if (isTransient())
-			return;
-		
-		changeStamp = computeChangeStamp();
-		if (changeStamp > config.getDate().getTime())
-			reconcile();
-	}
-
-	PlatformConfiguration(URL url) throws Exception {
-		this.externalLinkSites = new HashMap();
-		initialize(url);
-	}
-
-	/*
-	 * @see IPlatformConfiguration#createSiteEntry(URL, ISitePolicy)
-	 */
-	public ISiteEntry createSiteEntry(URL url, ISitePolicy policy) {
-		return new SiteEntry(url, policy);
-	}
-
-	/*
-	 * @see IPlatformConfiguration#createSitePolicy(int, String[])
-	 */
-	public ISitePolicy createSitePolicy(int type, String[] list) {
-		return new SitePolicy(type, list);
-	}
-
-	/*
-	 * @see IPlatformConfiguration#createFeatureEntry(String, String, String, boolean, String, URL)
-	 */
-	public IFeatureEntry createFeatureEntry(String id, String version, String pluginVersion, boolean primary, String application, URL[] root) {
-		return new FeatureEntry(id, version, pluginVersion, primary, application, root);
-	}
-
-	/*
-	 * @see IPlatformConfiguration#createFeatureEntry(String, String, String,
-	 * String, boolean, String, URL)
-	 */
-	public IFeatureEntry createFeatureEntry(String id, String version, String pluginIdentifier, String pluginVersion, boolean primary, String application, URL[] root) {
-		return new FeatureEntry(id, version, pluginIdentifier, pluginVersion, primary, application, root);
-	}
-
-	/*
-	 * @see IPlatformConfiguration#configureSite(ISiteEntry)
-	 */
-	public void configureSite(ISiteEntry entry) {
-		configureSite(entry, false);
-	}
-
-	/*
-	 * @see IPlatformConfiguration#configureSite(ISiteEntry, boolean)
-	 */
-	public synchronized void configureSite(ISiteEntry entry, boolean replace) {
-
-		if (entry == null)
-			return;
-	
-		URL url = entry.getURL();
-		if (url == null)
-			return;
-
-		String key = url.toExternalForm();
-		if (config.getSiteEntry(key) != null && !replace)
-			return;
-	
-		if (entry instanceof SiteEntry)
-			config.addSiteEntry(key, (SiteEntry)entry);
-	}
-
-	/*
-	 * @see IPlatformConfiguration#unconfigureSite(ISiteEntry)
-	 */
-	public synchronized void unconfigureSite(ISiteEntry entry) {
-		if (entry == null)
-			return;
-
-		URL url = entry.getURL();
-		if (url == null)
-			return;
-		
-		String key = url.toExternalForm();	
-		if (entry instanceof SiteEntry)
-			config.removeSiteEntry(key);
-	}
-
-	/*
-	 * @see IPlatformConfiguration#getConfiguredSites()
-	 */
-	public ISiteEntry[] getConfiguredSites() {
-		if (config == null)
-			return new ISiteEntry[0];
-		
-		SiteEntry[] sites = config.getSites();
-		ArrayList enabledSites = new ArrayList(sites.length);
-		for (int i=0; i<sites.length; i++) {
-			if (sites[i].isEnabled())
-				enabledSites.add(sites[i]);
-		}
-		return (ISiteEntry[])enabledSites.toArray(new ISiteEntry[enabledSites.size()]);
-	}
-
-	/*
-	 * @see IPlatformConfiguration#findConfiguredSite(URL)
-	 */
-	public ISiteEntry findConfiguredSite(URL url) {
-		return findConfiguredSite(url, true);
-	}
-	
-	/**
-	 * 
-	 * @param url site url
-	 * @param checkPlatformURL if true, check for url format that is platform:/...
-	 * @return
-	 */
-	public SiteEntry findConfiguredSite(URL url, boolean checkPlatformURL) {
-		if (url == null)
-			return null;
-		String key = url.toExternalForm();
-
-		SiteEntry result = config.getSiteEntry(key);	
-		if (result == null) { // retry with decoded URL string
-			try {
-				//PAL foundation
-				//key = URLDecoder.decode(key, "UTF-8"); //$NON-NLS-1$
-				key = UpdateURLDecoder.decode(key, "UTF-8"); //$NON-NLS-1$
-			} catch (UnsupportedEncodingException e) {
-				// ignore
-			}
-			result = config.getSiteEntry(key);
-		}
-			
-		if (result == null && checkPlatformURL) {
-			try {
-				result = findConfiguredSite(Utils.asPlatformURL(url), false);
-			} catch (Exception e) {
-				//ignore
-			}
-		}
-		return result;
-	}
-
-	/*
-	 * @see IPlatformConfiguration#configureFeatureEntry(IFeatureEntry)
-	 */
-	public synchronized void configureFeatureEntry(IFeatureEntry entry) {
-		if (entry == null)
-			return;
-
-		String key = entry.getFeatureIdentifier();
-		if (key == null)
-			return;
-
-		// we should check each site and find where the feature is
-		// located and then configure it
-		if (config == null)
-			config = new Configuration();
-
-		SiteEntry[] sites = config.getSites();
-		for (int i=0; i<sites.length; i++) {
-			// find out what site contains the feature and configure it
-			try {
-				URL url = new URL(sites[i].getURL(), FEATURES + "/" + entry.getFeatureIdentifier()+ "_" + entry.getFeatureVersion() + "/"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-				if (new File(url.getFile()).exists())
-					sites[i].addFeatureEntry(entry);
-				else  {
-					url = new URL(sites[i].getURL(), FEATURES + "/" + entry.getFeatureIdentifier() + "/"); //$NON-NLS-1$ //$NON-NLS-2$
-					if (new File(url.getFile()).exists())
-						sites[i].addFeatureEntry(entry);
-				}
-			} catch (MalformedURLException e) {
-			}
-		}
-	}
-
-	/*
-	 * @see IPlatformConfiguration#unconfigureFeatureEntry(IFeatureEntry)
-	 */
-	public synchronized void unconfigureFeatureEntry(IFeatureEntry entry) {
-		if (entry == null)
-			return;
-
-		String key = entry.getFeatureIdentifier();
-		if (key == null)
-			return;
-
-		config.unconfigureFeatureEntry(entry);
-	}
-
-	/*
-	 * @see IPlatformConfiguration#getConfiguredFeatureEntries()
-	 */
-	public IFeatureEntry[] getConfiguredFeatureEntries() {
-		ArrayList configFeatures = new ArrayList();
-		SiteEntry[] sites = config.getSites();
-		for (int i=0; i<sites.length; i++) {
-			FeatureEntry[] features = sites[i].getFeatureEntries();
-			for (int j=0; j<features.length; j++)
-				configFeatures.add(features[j]);
-		}
-		return (IFeatureEntry[])configFeatures.toArray(new FeatureEntry[configFeatures.size()]);
-	}
-
-	/*
-	 * @see IPlatformConfiguration#findConfiguredFeatureEntry(String)
-	 */
-	public IFeatureEntry findConfiguredFeatureEntry(String id) {
-		if (id == null)
-			return null;
-
-		SiteEntry[] sites = config.getSites();
-		for (int i=0; i<sites.length; i++) {
-			FeatureEntry f = sites[i].getFeatureEntry(id);
-			if (f != null)
-				return f;
-		}
-		return null;
-	}
-
-	/*
-	 * @see IPlatformConfiguration#getConfigurationLocation()
-	 */
-	public URL getConfigurationLocation() {
-		return configLocation;
-	}
-
-	/*
-	 * @see IPlatformConfiguration#getChangeStamp()
-	 */
-	public long getChangeStamp() {
-		if (config.getLinkedConfig() == null)
-			return config.getDate().getTime();
-		else
-			return Math.max(config.getDate().getTime(), config.getLinkedConfig().getDate().getTime());
-	}
-
-	/*
-	 * @see IPlatformConfiguration#getFeaturesChangeStamp()
-	 * @deprecated Don't use this method
-	 */
-	public long getFeaturesChangeStamp() {
-		return 0;
-	}
-
-	/*
-	 * @see IPlatformConfiguration#getPluginsChangeStamp()
-	 * @deprecated Don't use this method
-	 */
-	public long getPluginsChangeStamp() {
-		return 0;
-	}
-
-
-	public String getApplicationIdentifier() {
-		// Return the app if defined in system properties
-		String application = System.getProperty(ECLIPSE_APPLICATION);
-		if (application != null)
-			return application;
-
-		// Otherwise, try to get it from the primary feature (aka product)
-		String feature = getPrimaryFeatureIdentifier();
-
-		// lookup application for feature (specified or defaulted)
-		if (feature != null) {
-			IFeatureEntry fe = findConfiguredFeatureEntry(feature);
-			if (fe != null) {
-				if (fe.getFeatureApplication() != null)
-					return fe.getFeatureApplication();
-			}
-		}
-
-		// return hardcoded default if we failed
-		return DEFAULT_FEATURE_APPLICATION;
-	}
-
-	/*
-	 * @see IPlatformConfiguration#getPrimaryFeatureIdentifier()
-	 */
-	public String getPrimaryFeatureIdentifier() {
-		// Return the product if defined in system properties
-		String primaryFeatureId = System.getProperty(ECLIPSE_PRODUCT);
-		if (primaryFeatureId != null) {
-			// check if feature exists
-			IFeatureEntry feature = findConfiguredFeatureEntry(primaryFeatureId);
-			if (feature != null && feature.canBePrimary())
-				return primaryFeatureId;
-		}
-		return null;
-	}
-
-	/*
-	 * @see IPlatformConfiguration#getPluginPath()
-	 */
-	public URL[] getPluginPath() {
-		ArrayList path = new ArrayList();
-		Utils.debug("computed plug-in path:"); //$NON-NLS-1$
-
-		ISiteEntry[] sites = getConfiguredSites();
-		URL pathURL;
-		for (int i = 0; i < sites.length; i++) {
-			String[] plugins = sites[i].getPlugins();
-			for (int j = 0; j < plugins.length; j++) {
-				try {
-					pathURL = new URL(((SiteEntry) sites[i]).getResolvedURL(), plugins[j]);
-					path.add(pathURL);
-					Utils.debug("   " + pathURL.toString()); //$NON-NLS-1$
-				} catch (MalformedURLException e) {
-					// skip entry ...
-					Utils.debug("   bad URL: " + e); //$NON-NLS-1$
-				}
-			}
-		}
-		return (URL[]) path.toArray(new URL[0]);
-	}
-	
-
-	/*
-	 * A variation of the getPluginPath, but it returns the actual plugin entries
-	 */
-	public PluginEntry[] getPlugins() {
-		ArrayList allPlugins = new ArrayList();
-		Utils.debug("computed plug-ins:"); //$NON-NLS-1$
-
-		ISiteEntry[] sites = getConfiguredSites();
-		for (int i = 0; i < sites.length; i++) {
-			if (!(sites[i] instanceof SiteEntry)) {
-				Utils.debug("Site " + sites[i].getURL() + " is not a SiteEntry"); //$NON-NLS-1$ //$NON-NLS-2$
-				continue;
-			}
-			PluginEntry[] plugins = ((SiteEntry)sites[i]).getPluginEntries();
-			for (int j = 0; j < plugins.length; j++) {
-				allPlugins.add(plugins[j]);
-				Utils.debug("   " + plugins[j].getURL()); //$NON-NLS-1$
-			}
-		}
-		return (PluginEntry[]) allPlugins.toArray(new PluginEntry[0]);
-	}
-	
-
-	/*
-	 * @see IPlatformConfiguration#getBootstrapPluginIdentifiers()
-	 */
-	public String[] getBootstrapPluginIdentifiers() {
-		return BOOTSTRAP_PLUGINS;
-	}
-
-	/*
-	 * @see IPlatformConfiguration#setBootstrapPluginLocation(String, URL)
-	 */
-	public void setBootstrapPluginLocation(String id, URL location) {
-	}
-
-	/*
-	 * @see IPlatformConfiguration#isUpdateable()
-	 */
-	public boolean isUpdateable() {
-		return true;
-	}
-
-	/*
-	 * @see IPlatformConfiguration#isTransient()
-	 */
-	public boolean isTransient() {
-		if (config != null)
-			return config.isTransient();
-		else
-			return false;
-	}
-
-	/*
-	 * @see IPlatformConfiguration#isTransient(boolean)
-	 */
-	public void isTransient(boolean value) {
-		if (this != getCurrent() && config != null)
-			config.setTransient(value);
-	}
-
-	/*
-	 * @see IPlatformConfiguration#refresh()
-	 */
-	public synchronized void refresh() {
-		// Reset computed values. Will be lazily refreshed
-		// on next access
-		ISiteEntry[] sites = getConfiguredSites();
-		for (int i = 0; i < sites.length; i++) {
-			// reset site entry
-			 ((SiteEntry) sites[i]).refresh();
-		}
-	}
-
-	/*
-	 * @see IPlatformConfiguration#save()
-	 */
-	public void save() throws IOException {
-		if (isUpdateable())
-			save(configLocation);
-	}
-
-	/*
-	 * @see IPlatformConfiguration#save(URL)
-	 */
-	public synchronized void save(URL url) throws IOException {
-		if (url == null)
-			throw new IOException(Messages.getString("cfig.unableToSave.noURL")); //$NON-NLS-1$
-
-		OutputStream os = null;
-		if (!url.getProtocol().equals("file")) { //$NON-NLS-1$
-			// not a file protocol - attempt to save to the URL
-			URLConnection uc = url.openConnection();
-			uc.setDoOutput(true);
-			os = uc.getOutputStream();
-			try {
-				saveAsXML(os);
-				config.setDirty(false);
-			} catch (CoreException e) {
-				Utils.log(e.getMessage());
-				Utils.log(e.getStatus());
-				throw new IOException(Messages.getString("cfig.unableToSave", url.toExternalForm())); //$NON-NLS-1$
-			} finally {
-				os.close();
-			}
-		} else {
-			// file protocol - do safe i/o
-			File cfigFile = new File(url.getFile().replace('/', File.separatorChar));
-			if (!cfigFile.getName().equals(PLATFORM_XML)) {
-				if (cfigFile.exists() && cfigFile.isFile()) {
-					Utils.log(Messages.getString("PlatformConfiguration.expectingPlatformXMLorDirectory") + cfigFile.getName()); //$NON-NLS-1$
-					cfigFile = cfigFile.getParentFile();
-				}
-				cfigFile = new File(cfigFile, CONFIG_NAME);
-			}
-			File workingDir = cfigFile.getParentFile();
-			if (workingDir != null && !workingDir.exists())
-				workingDir.mkdirs();
-
-			// Do safe i/o: 
-			//    - backup current config, by moving it to the history folder
-			//    - write new config to platform.xml.tmp file
-			//    - rename the temp file to platform.xml
-			File cfigFileOriginal = new File(cfigFile.getAbsolutePath());
-			File cfigTmp = new File(cfigFile.getAbsolutePath() + CONFIG_FILE_TEMP_SUFFIX);
-			
-			// Backup old file
-			if (cfigFile.exists()){
-				File backupDir = new File(workingDir, CONFIG_HISTORY);
-				if (!backupDir.exists())
-					backupDir.mkdir();
-				long timestamp = cfigFile.lastModified();
-				File preservedFile = new File(backupDir, String.valueOf(timestamp)+".xml"); //$NON-NLS-1$
-				// If the target file exists, increment the timestamp. Try at most 100 times.
-				long increment = 1;
-				while (preservedFile.exists() && increment < 100){
-					preservedFile = new File(backupDir, String.valueOf(timestamp+increment++)+".xml"); //$NON-NLS-1$
-				}
-				if (!preservedFile.exists()) {
-					// try renaming current config to backup copy
-					if (!cfigFile.renameTo(preservedFile))
-						Utils.log(Messages.getString("PlatformConfiguration.cannotBackupConfig")); //$NON-NLS-1$
-				}
-			}
-
-			// first save the file as temp
-			os = new FileOutputStream(cfigTmp);
-			
-			try {
-				saveAsXML(os);
-				// Try flushing any internal buffers, and synchronize with the disk
-				try {
-					os.flush();
-					((FileOutputStream)os).getFD().sync();
-				} catch (SyncFailedException e2) {
-					Utils.log(e2.getMessage());
-				} catch (IOException e2) {
-					Utils.log(e2.getMessage());
-				}
-				try {
-					os.close();
-					os = null;
-				} catch (IOException e1) {
-					Utils.log(Messages.getString("PlatformConfiguration.cannotCloseStream") + cfigTmp); //$NON-NLS-1$
-					Utils.log(e1.getMessage());
-				}
-				// set file time stamp to match that of the config element
-				cfigTmp.setLastModified(config.getDate().getTime());
-				// set this on config, in case the value was rounded off
-				config.setLastModified(cfigTmp.lastModified());
-				// make the change stamp to be the same as the config file
-				changeStamp = config.getDate().getTime();
-				config.setDirty(false);
-			} catch (CoreException e) {
-				throw new IOException(Messages.getString("cfig.unableToSave", cfigTmp.getAbsolutePath())); //$NON-NLS-1$
-			} finally {
-				if (os != null)
-					try {
-						os.close();
-					} catch (IOException e1) {
-						Utils.log(Messages.getString("PlatformConfiguration.cannotCloseTempFile") + cfigTmp); //$NON-NLS-1$
-					}
-			}
-
-			// at this point we have old config (if existed) as "bak" and the
-			// new config as "tmp".
-			boolean ok = cfigTmp.renameTo(cfigFileOriginal);
-			if (!ok) {
-				// this codepath represents a tiny failure window. The load processing
-				// on startup will detect missing config and will attempt to start
-				// with "tmp" (latest), then "bak" (the previous). We can also end up
-				// here if we failed to rename the current config to "bak". In that
-				// case we will restart with the previous state.
-				Utils.log(Messages.getString("PlatformConfiguration.cannotRenameTempFile")); //$NON-NLS-1$
-				
-				throw new IOException(Messages.getString("cfig.unableToSave", cfigTmp.getAbsolutePath())); //$NON-NLS-1$
-			}
-		}
-	}
-
-
-	public static PlatformConfiguration getCurrent() {
-		return currentPlatformConfiguration;
-	}
-
-	/**
-	 * Starts a platform installed at specified installURL using configuration located at platformConfigLocation.
-	 */
-	public static synchronized void startup(URL installURL, Location platformConfigLocation) throws Exception {
-		PlatformConfiguration.installURL = installURL;
-	
-		// create current configuration
-		if (currentPlatformConfiguration == null) {
-			currentPlatformConfiguration = new PlatformConfiguration(platformConfigLocation);
-			if (currentPlatformConfiguration.config == null)
-				throw new Exception(Messages.getString("PlatformConfiguration.cannotLoadConfig") + platformConfigLocation.getURL()); //$NON-NLS-1$
-			if (currentPlatformConfiguration.config.isDirty())
-				// If this is a transient config (generated by PDE),do nothing
-				// otherwise, save the configuration with proper date
-				if (!currentPlatformConfiguration.isTransient())
-					currentPlatformConfiguration.save();
-		}
-	}
-
-	public static synchronized void shutdown() throws IOException {
-
-		// save platform configuration
-		PlatformConfiguration config = getCurrent();
-		if (config != null) {
-			// only save if there are changes in the config
-			if (config.config.isDirty() && !config.isTransient()) {
-				try {
-					config.save();
-				} catch (IOException e) {
-					Utils.debug("Unable to save configuration " + e.toString()); //$NON-NLS-1$
-					// will recover on next startup
-				}
-			}
-		}
-	}
-
-
-	private synchronized void initializeCurrent(Location platformConfigLocation) throws IOException {
-
-		// Configuration URL was is specified by the OSGi layer. 
-		// Default behavior is to look
-		// for configuration in the specified meta area. If not found, look
-		// for pre-initialized configuration in the installation location.
-		// If it is found it is used as the initial configuration. Otherwise
-		// a new configuration is created. In either case the resulting
-		// configuration is written into the specified configuration area.
-
-		URL configFileURL = new URL(platformConfigLocation.getURL(), CONFIG_NAME);
-		try {	
-			// check concurrent use lock
-			getConfigurationLock(platformConfigLocation.getURL());
-
-			// try loading the configuration
-			try {
-				config = loadConfig(configFileURL);
-				Utils.debug("Using configuration " + configFileURL.toString()); //$NON-NLS-1$
-			} catch (Exception e) {
-				// failed to load, see if we can find pre-initialized configuration.
-				try {
-					Location parentLocation = platformConfigLocation.getParentLocation();
-					if (parentLocation == null)
-						throw new IOException(); // no platform.xml found, need to create default site
-					
-					URL sharedConfigFileURL = new URL(parentLocation.getURL(), CONFIG_NAME);
-					config = loadConfig(sharedConfigFileURL);
-					
-					// pre-initialized config loaded OK ... copy any remaining update metadata
-					// Only copy if the default config location is not the install location
-					if (!sharedConfigFileURL.equals(configFileURL)) {
-						// need to link config info instead of using a copy
-						linkInitializedState(config, parentLocation, platformConfigLocation);
-						Utils.debug("Configuration initialized from    " + sharedConfigFileURL.toString()); //$NON-NLS-1$
-					}
-					return;
-				} catch (Exception ioe) {
-					Utils.debug("Creating default configuration from " + configFileURL.toExternalForm()); //$NON-NLS-1$
-					createDefaultConfiguration(configFileURL);
-				}
-			}
-		} finally {
-			configLocation = configFileURL;
-			if (config.getURL() == null)
-				config.setURL(configFileURL);
-			verifyPath(configLocation);
-			Utils.debug("Creating configuration " + configFileURL.toString()); //$NON-NLS-1$
-			// releaes concurrent use lock
-			clearConfigurationLock();
-		}
-	}
-
-	
-	private synchronized void initialize(URL url) throws Exception {
-		if (url != null) {
-			config = loadConfig(url);	
-			Utils.debug("Using configuration " + url.toString()); //$NON-NLS-1$
-		}
-		if (config == null) {
-			config = new Configuration();		
-			Utils.debug("Creating empty configuration object"); //$NON-NLS-1$
-		}
-		config.setURL(url);
-		configLocation = url;
-	}
-
-	private void createDefaultConfiguration(URL url)throws IOException{
-		// we are creating new configuration
-		config = new Configuration();
-		config.setURL(url);
-		SiteEntry defaultSite = (SiteEntry)getRootSite();
-		configureSite(defaultSite);
-		try {
-			// parse the site directory to discover features
-			defaultSite.loadFromDisk(0);
-		} catch (CoreException e1) {
-			Utils.log(Messages.getString("PlatformConfiguration.cannotLoadDefaultSite") + defaultSite.getResolvedURL()); //$NON-NLS-1$
-			return;
-		}
-	}
-	private ISiteEntry getRootSite() {
-		// create default site entry for the root
-		ISitePolicy defaultPolicy = createSitePolicy(DEFAULT_POLICY_TYPE, DEFAULT_POLICY_LIST);
-		URL siteURL = null;
-		try {
-			siteURL = new URL("platform:/base/"); //$NON-NLS-1$  // try using platform-relative URL
-		} catch (MalformedURLException e) {
-			siteURL = getInstallURL(); // ensure we come up ... use absolute file URL
-		}
-		ISiteEntry defaultSite = createSiteEntry(siteURL, defaultPolicy);
-		return defaultSite;
-	}
-	
-	/**
-	 * Gets the configuration lock
-	 * @param url configuration directory
-	 */
-	private void getConfigurationLock(URL url) {
-		if (!url.getProtocol().equals("file")) //$NON-NLS-1$
-			return;
-
-		File lockFile = new File(url.getFile(), ConfigurationActivator.NAME_SPACE+ File.separator+CONFIG_FILE_LOCK_SUFFIX);
-		verifyPath(url);
-		// PAL nio optional
-		lock = createLocker(lockFile); 
-		try {
-			lock.lock();
-		} catch (IOException ioe) {
-			lock = null;
-		}	
-	}
-	
-	private void clearConfigurationLock() {
-		// PAL nio optional
-		if (lock != null) {
-			lock.release();
-		}
-	}
-	
-	/**
-	 * Create a locker using java new I/O or regular I/O
-	 * depending whether we run in J2SE or cdcFoundation
-	 * PAL nio optional
-	 */
-	private static Locker createLocker(File lock) {
-		if (!checkNio) {
-			useNio = true;
-			try {
-				 Class.forName("java.nio.channels.FileLock"); //$NON-NLS-1$
-			} catch (ClassNotFoundException e) {
-				useNio = false;
-			}
-		}
-		if (useNio)
-			return new Locker_JavaNio(lock);
-		else
-			return new Locker_JavaIo(lock);
-	}
-	
-	private long computeChangeStamp() {
-		featuresChangeStamp = computeFeaturesChangeStamp();
-		pluginsChangeStamp = computePluginsChangeStamp();
-		changeStamp = Math.max(featuresChangeStamp, pluginsChangeStamp);
-		// round off to seconds
-		changeStamp = (changeStamp/1000)*1000;
-		return changeStamp;
-	}
-
-	private long computeFeaturesChangeStamp() {
-		if (featuresChangeStampIsValid)
-			return featuresChangeStamp;
-
-		long result = 0;
-		ISiteEntry[] sites = config.getSites();
-		for (int i = 0; i < sites.length; i++) {
-			result = Math.max(result, sites[i].getFeaturesChangeStamp());
-		}
-		featuresChangeStamp = result;
-		featuresChangeStampIsValid = true;
-		return featuresChangeStamp;
-	}
-
-	private long computePluginsChangeStamp() {
-		if (pluginsChangeStampIsValid)
-			return pluginsChangeStamp;
-
-		long result = 0;
-		ISiteEntry[] sites = config.getSites();
-		for (int i = 0; i < sites.length; i++) {
-			result = Math.max(result, sites[i].getPluginsChangeStamp());
-		}
-		pluginsChangeStamp = result;
-		pluginsChangeStampIsValid = true;
-		return pluginsChangeStamp;
-	}
-
-	private void configureExternalLinks() {
-		URL linkURL = getInstallURL();
-		if (!supportsDetection(linkURL))
-			return;
-
-		try {
-			linkURL = new URL(linkURL, LINKS + "/"); //$NON-NLS-1$
-		} catch (MalformedURLException e) {
-			// skip bad links ...
-			Utils.debug("Unable to obtain link URL"); //$NON-NLS-1$
-			return;
-		}
-
-		File linkDir = new File(linkURL.getFile());
-		File[] links = linkDir.listFiles();
-		if (links == null || links.length == 0) {
-			Utils.debug("No links detected in " + linkURL.toExternalForm()); //$NON-NLS-1$
-			return;
-		}
-
-		for (int i = 0; i < links.length; i++) {
-			if (links[i].isDirectory())
-				continue;
-			Utils.debug("Link file " + links[i].getAbsolutePath()); //$NON-NLS-1$
-			Properties props = new Properties();
-			FileInputStream is = null;
-			try {
-				is = new FileInputStream(links[i]);
-				props.load(is);
-				configureExternalLinkSite(links[i], props);
-			} catch (IOException e) {
-				// skip bad links ...
-				Utils.debug("   unable to load link file " + e); //$NON-NLS-1$
-				continue;
-			} finally {
-				if (is != null) {
-					try {
-						is.close();
-					} catch (IOException e) {
-						// ignore ...
-					}
-				}
-			}
-		}
-	}
-
-	private void configureExternalLinkSite(File linkFile, Properties props) {
-		String path = props.getProperty(LINK_PATH);
-		if (path == null) {
-			Utils.debug("   no path definition"); //$NON-NLS-1$
-			return;
-		}
-
-		String link;
-		boolean updateable = true;
-		URL siteURL;
-
-		// parse out link information
-		if (path.startsWith(LINK_READ + " ")) { //$NON-NLS-1$
-			updateable = false;
-			link = path.substring(2).trim();
-		} else if (path.startsWith(LINK_READ_WRITE + " ")) { //$NON-NLS-1$
-			link = path.substring(3).trim();
-		} else {
-			link = path.trim();
-		}
-
-		// 	make sure we have a valid link specification
-		try {
-			File siteFile = new File(link);
-			siteFile = new File(siteFile, ECLIPSE);
-			siteURL = siteFile.toURL();
-			if (findConfiguredSite(siteURL, true) != null)
-				// linked site is already known
-				return;
-		} catch (MalformedURLException e) {
-			// ignore bad links ...
-			Utils.debug("  bad URL " + e); //$NON-NLS-1$
-			return;
-		}
-		
-		// process the link
-		SiteEntry linkSite = (SiteEntry) externalLinkSites.get(siteURL);
-		if (linkSite == null) {
-			// this is a link to a new target so create site for it
-			ISitePolicy linkSitePolicy = createSitePolicy(DEFAULT_POLICY_TYPE, DEFAULT_POLICY_LIST);
-			linkSite = (SiteEntry) createSiteEntry(siteURL, linkSitePolicy);
-		}
-		// update site entry if needed
-		linkSite.setUpdateable(updateable);
-		linkSite.setLinkFileName(linkFile.getAbsolutePath());
-
-		// configure the new site
-		// NOTE: duplicates are not replaced (first one in wins)
-		configureSite(linkSite);
-		// there are changes in the config
-		config.setDirty(true);
-		Utils.debug("   " + (updateable ? "R/W -> " : "R/O -> ") + siteURL.toString()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-	}
-
-	private void validateSites() {
-
-		// check to see if all sites are valid. Remove any sites that do not exist.
-		SiteEntry[] list = config.getSites();
-		for (int i = 0; i < list.length; i++) {
-			URL siteURL = list[i].getResolvedURL();
-			if (!supportsDetection(siteURL))
-				continue;
-
-			File siteRoot = new File(siteURL.getFile().replace('/', File.separatorChar));
-			if (!siteRoot.exists()) {
-				unconfigureSite(list[i]);
-				Utils.debug("Site " + siteURL + " does not exist ... removing from configuration"); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-			
-			// If multiple paths are defined in the same link file
-			// or if the path changes, the old site will still be kept.
-			// A better algorithm could be implemented by keeping track 
-			// of the previous content of the link file.
-			// TODO do the above
-			String linkName = list[i].getLinkFileName();
-			if (linkName != null) {
-				File linkFile = new File(linkName);
-				if (!linkFile.exists())  {
-					unconfigureSite(list[i]);
-					config.setDirty(true);
-					Utils.debug("Site " + siteURL + " is no longer linked ... removing from configuration"); //$NON-NLS-1$ //$NON-NLS-2$	
-				}
-			}
-		}
-	}
-	
-	private void linkInitializedState(Configuration sharedConfig, Location sharedConfigLocation, Location newConfigLocation) {
-		try {
-			URL newConfigIniURL = new URL(newConfigLocation.getURL(), CONFIG_INI);
-			if (!newConfigIniURL.getProtocol().equals("file")) //$NON-NLS-1$
-				return; // need to be able to do write
-
-			// modify config.ini and platform.xml to only link original files
-			File configIni = new File(newConfigIniURL.getFile());
-			Properties props = new Properties();
-			props.put("osgi.sharedConfiguration.area", sharedConfigLocation.getURL().toExternalForm()); //$NON-NLS-1$
-			props.store(new FileOutputStream(configIni), "Linked configuration"); //$NON-NLS-1$
-			
-			config = new Configuration(new Date());
-			config.setURL(new URL(newConfigLocation.getURL(), CONFIG_NAME));
-			config.setLinkedConfig(sharedConfig);
-			config.setDirty(true);
-		} catch (IOException e) {
-			// this is an optimistic copy. If we fail, the state will be reconciled
-			// when the update manager is triggered.
-			System.out.println(e);
-		}
-	}
-	
-	private Configuration loadConfig(URL url) throws Exception {
-		if (url == null)
-			throw new IOException(Messages.getString("cfig.unableToLoad.noURL")); //$NON-NLS-1$
-
-		// try to load saved configuration file (watch for failed prior save())
-		ConfigurationParser parser = null;
-		try {
-			parser = new ConfigurationParser();
-		} catch (InvocationTargetException e) {
-			throw (Exception)e.getTargetException();
-		}
-		
-		config = null;
-		Exception originalException = null;
-		try {
-			config = parser.parse(url);
-			if (config == null)
-				throw new Exception(Messages.getString("PlatformConfiguration.cannotFindConfigFile")); //$NON-NLS-1$
-		} catch (Exception e1) {
-			// check for save failures, so open temp and backup configurations
-			originalException = e1;
-			try {
-				URL tempURL = new URL(url.toExternalForm()+CONFIG_FILE_TEMP_SUFFIX);
-				config = parser.parse(tempURL); 
-				if (config == null)
-					throw new Exception();
-				else
-					config.setDirty(true); // force saving to platform.xml
-			} catch (Exception e2) {
-				try {
-					// check the backup
-					if ("file".equals(url.getProtocol())) { //$NON-NLS-1$
-						File cfigFile = new File(url.getFile().replace('/', File.separatorChar));
-						File workingDir = cfigFile.getParentFile();
-						if (workingDir != null && workingDir.exists()) {
-							File[] backups = workingDir.listFiles(new FileFilter(){
-								public boolean accept(File pathname) {
-									return pathname.isFile() && pathname.getName().endsWith(".xml"); //$NON-NLS-1$
-								}});
-							if (backups != null && backups.length > 0) {
-								URL backupUrl = backups[backups.length-1].toURL();
-								config = parser.parse(backupUrl);
-							}
-						}
-					}
-					if (config == null)
-						throw originalException; // we tried, but no config here ...
-					else
-						config.setDirty(true); // force saving to platform.xml
-				} catch (IOException e3) {
-					throw originalException; // we tried, but no config here ...
-				}
-			}
-		}
-
-		return config;
-	}
-
-	public static boolean supportsDetection(URL url) {
-		String protocol = url.getProtocol();
-		if (protocol.equals("file")) //$NON-NLS-1$
-			return true;
-		else if (protocol.equals("platform")) {
-			URL resolved = null;
-			try {
-				resolved = resolvePlatformURL(url); // 19536
-			} catch (IOException e) {
-				return false; // we tried but failed to resolve the platform URL
-			}
-			return resolved.getProtocol().equals("file"); //$NON-NLS-1$
-		} else
-			return false;
-	}
-
-	private static void verifyPath(URL url) {
-		String protocol = url.getProtocol();
-		String path = null;
-		if (protocol.equals("file")) //$NON-NLS-1$
-			path = url.getFile();
-		else if (protocol.equals("platform")) { // $NON-NLS-1$
-			URL resolved = null;
-			try {
-				resolved = resolvePlatformURL(url); // 19536
-				if (resolved.getProtocol().equals("file")) //$NON-NLS-1$
-					path = resolved.getFile();
-			} catch (IOException e) {
-				// continue ...
-			}
-		}
-
-		if (path != null) {
-			File dir = new File(path).getParentFile();
-			if (dir != null)
-				dir.mkdirs();
-		}
-	}
-
-	public static URL resolvePlatformURL(URL url) throws IOException {
-		// 19536
-		if (url.getProtocol().equals("platform")) { // $NON-NLS-1$;
-			url = Platform.asLocalURL(url);
-			// TODO URL resolution by platform returns url file:d:/path as opposed to file:/d:/path
-			File f = new File(url.getFile());
-			url = f.toURL();
-		}
-		return url;
-	}
-	
-	public static URL getInstallURL() {
-		return installURL;
-	}
-	
-	// Patch from Phil to support cdc/foundation: will use the method below instead of this one.
-//	private void saveAsXML(OutputStream stream) throws CoreException {	
-//		StreamResult result = null;
-//		try {
-//			DocumentBuilder docBuilder = documentBuilderFactory.newDocumentBuilder();
-//			Document doc = docBuilder.newDocument();
-//
-//			if (config == null)
-//				throw Utils.newCoreException(Messages.getString("PlatformConfiguration.cannotSaveNonExistingConfig"),null); //$NON-NLS-1$
-//			
-//			config.setDate(new Date());
-//			doc.appendChild(doc.createComment("Created on " + config.getDate().toString())); //$NON-NLS-1$
-//			Element configElement = config.toXML(doc);
-//			doc.appendChild(configElement);
-//
-//			// Write out to a file
-//			
-//			Transformer transformer=transformerFactory.newTransformer();
-//			transformer.setOutputProperty(OutputKeys.METHOD, "xml"); //$NON-NLS-1$
-//			transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8"); //$NON-NLS-1$
-//			transformer.setOutputProperty(OutputKeys.INDENT, "yes"); //$NON-NLS-1$
-//			DOMSource source = new DOMSource(doc);
-//			result = new StreamResult(stream);
-//
-//			transformer.transform(source,result);
-//			//will close the stream in the caller
-//			//stream.close();
-//		} catch (Exception e) {
-//			throw Utils.newCoreException("", e); //$NON-NLS-1$
-//		} finally {
-//			result.setOutputStream(null);
-//			result = null;
-//		}
-//	}
-
-	private void saveAsXML(OutputStream stream) throws CoreException,IOException {			
-		BufferedWriter xmlWriter = new BufferedWriter(new OutputStreamWriter(stream,XML_ENCODING));
-		try {
-			DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
-			factory.setExpandEntityReferences(false);
-			factory.setValidating(false);
-			factory.setIgnoringComments(true);
-			DocumentBuilder docBuilder = factory.newDocumentBuilder();
-			Document doc = docBuilder.newDocument();
-			
-			if (config == null)
-				throw Utils.newCoreException(Messages.getString("PlatformConfiguration.cannotSaveNonExistingConfig"),null); //$NON-NLS-1$
-			
-			config.setDate(new Date());
-			Element configElement = config.toXML(doc);
-			doc.appendChild(configElement);
-			
-			// This is not DBCS friendly... PAL
-			//XMLPrintHandler.printComment(xmlWriter,"Created on " + config.getDate().toString());
-			XMLPrintHandler.printNode(xmlWriter,doc,XML_ENCODING);
-			
-		} catch (Exception e) {
-			throw Utils.newCoreException("", e); //$NON-NLS-1$
-		} finally {
-			xmlWriter.flush();
-			// will close the stream in the caller	
-			//xmlWriter.close();
-		}
-	} 
-	
-	private void reconcile() throws CoreException {
-		long lastChange = config.getDate().getTime();
-		SiteEntry[] sites = config.getSites();
-		for (int s=0; s<sites.length; s++) {
-			long siteTimestamp = sites[s].getChangeStamp();
-			if (siteTimestamp > lastChange)
-				sites[s].loadFromDisk(lastChange);
-		}
-		config.setDirty(true);
-	}
-	
-	public Configuration getConfiguration() {
-		return config;
-	}
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/PlatformConfigurationFactory.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/PlatformConfigurationFactory.java
deleted file mode 100644
index 80c4457..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/PlatformConfigurationFactory.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-import java.io.IOException;
-import java.net.URL;
-
-import org.eclipse.update.configurator.*;
-
-
-
-public class PlatformConfigurationFactory implements IPlatformConfigurationFactory {
-	public IPlatformConfiguration getCurrentPlatformConfiguration() {
-		return PlatformConfiguration.getCurrent();
-	}
-	public IPlatformConfiguration getPlatformConfiguration(URL url) throws IOException {
-		try {
-			return new PlatformConfiguration(url);
-		} catch (Exception e) {
-			if(e instanceof IOException)
-				throw (IOException)e;
-			else
-				throw new IOException(e.getMessage());
-		}
-	}
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/PluginEntry.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/PluginEntry.java
deleted file mode 100644
index c2b46cd..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/PluginEntry.java
+++ /dev/null
@@ -1,164 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-
-/**
- */
-public class PluginEntry {
-
-	private String pluginId;
-	private String pluginVersion;
-	private boolean isFragment = false;
-	private VersionedIdentifier versionId;
-	private String url;
-	
-	public PluginEntry() {
-		super();
-	}
-
-	/**
-	 * @return url relative to the site location: plugins/org.eclipse.foo/plugin.xml
-	 * Note: to do: we should probably only use plugins/org.eclipse.foo/ in the future
-	 */
-	public String getURL() {
-		return url;
-	}
-	
-	/**
-	 * url is relative to the site
-	 */
-	public void setURL(String url) {
-		this.url = url;
-	}
-
-	/**
-	 * Returns the plug-in identifier for this entry.
-	 * 
-	 * @return the plug-in identifier, or <code>null</code>
-	 */
-	public String getPluginIdentifier() {
-		return pluginId;
-	}
-
-	/**
-	 * Returns the plug-in version for this entry.
-	 * 
-	 * @return the plug-in version, or <code>null</code>
-	 */
-	public String getPluginVersion() {
-		return pluginVersion;
-	}
-
-	/**
-	 * Indicates whether the entry describes a full plug-in, or 
-	 * a plug-in fragment.
-	 * 
-	 * @return <code>true</code> if the entry is a plug-in fragment, 
-	 * <code>false</code> if the entry is a plug-in
-	 */
-	public boolean isFragment() {
-		return isFragment;
-	}
-
-	/**
-	 * Sets the entry plug-in identifier.
-	 * Throws a runtime exception if this object is marked read-only.
-	 *
-	 * @param pluginId the entry identifier.
-	 */
-	void setPluginIdentifier(String pluginId) {
-		this.pluginId = pluginId;
-	}
-
-	/**
-	 * Sets the entry plug-in version.
-	 * Throws a runtime exception if this object is marked read-only.
-	 *
-	 * @param pluginVersion the entry version.
-	 */
-	void setPluginVersion(String pluginVersion) {
-		this.pluginVersion = pluginVersion;
-	}
-
-	/**
-	 * Indicates whether this entry represents a fragment or plug-in.
-	 * Throws a runtime exception if this object is marked read-only.
-	 *
-	 * @param isFragment fragment setting
-	 */
-	public void isFragment(boolean isFragment) {
-		this.isFragment = isFragment;
-	}
-
-	/**
-	 * @see Object#toString()
-	 */
-	public String toString() {
-		String msg = (getPluginIdentifier()!=null)?getPluginIdentifier().toString():""; //$NON-NLS-1$
-		msg += getPluginVersion()!=null?" "+getPluginVersion().toString():""; //$NON-NLS-1$ //$NON-NLS-2$
-		msg += isFragment()?" fragment":" plugin"; //$NON-NLS-1$ //$NON-NLS-2$
-		return msg;
-	}
-
-
-	/**
-	 * Returns the identifier of this plugin entry
-	 */
-	public VersionedIdentifier getVersionedIdentifier() {
-		if (versionId != null)
-			return versionId;
-
-		String id = getPluginIdentifier();
-		String ver = getPluginVersion();
-		if (id != null && ver != null) {
-			try {
-				versionId = new VersionedIdentifier(id, ver);
-				return versionId;
-			} catch (Exception e) {
-				Utils.log(Messages.getString("PluginEntry.versionError", id, ver)); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-		}
-
-		versionId = new VersionedIdentifier("",null); //$NON-NLS-1$
-		return versionId;
-	}
-
-	/**
-	 * Sets the identifier of this plugin entry. 
-	 * 
-	 */
-	void setVersionedIdentifier(VersionedIdentifier identifier) {
-		setPluginIdentifier(identifier.getIdentifier());
-		setPluginVersion(identifier.getVersion().toString());
-	}	
-
-	/**
-	 * Compares two plugin entries for equality
-	 * 
-	 * @param object plugin entry object to compare with
-	 * @return <code>true</code> if the two entries are equal, 
-	 * <code>false</code> otherwise
-	 */
-	public boolean equals(Object object) {
-		if (!(object instanceof PluginEntry))
-			return false;
-		PluginEntry e = (PluginEntry) object;
-		return getVersionedIdentifier().equals(e.getVersionedIdentifier());
-	}
-	
-	/* (non-Javadoc)
-	 * @see java.lang.Object#hashCode()
-	 */
-	public int hashCode() {
-		return getVersionedIdentifier().hashCode();
-	}
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/PluginParser.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/PluginParser.java
deleted file mode 100644
index 3c5a1dc..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/PluginParser.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-
-import java.io.*;
-
-import javax.xml.parsers.*;
-
-import org.xml.sax.*;
-import org.xml.sax.helpers.*;
-
-/**
- * Parse default feature.xml
- */
-
-public class PluginParser extends DefaultHandler implements IConfigurationConstants {
-	private final static SAXParserFactory parserFactory =
-		SAXParserFactory.newInstance();
-	private SAXParser parser;
-	private PluginEntry pluginEntry;
-    private String location;
-
-	private class ParseCompleteException extends SAXException {
-		
-        private static final long serialVersionUID = 1L;
-
-        public ParseCompleteException(String arg0) {
-			super(arg0);
-		}
-	}
-
-	/**
-	 * Constructor for DefaultFeatureParser
-	 */
-	public PluginParser() {
-		super();
-		try {
-			parserFactory.setNamespaceAware(true);
-			this.parser = parserFactory.newSAXParser();
-		} catch (ParserConfigurationException e) {
-			System.out.println(e);
-		} catch (SAXException e) {
-			System.out.println(e);
-		}
-	}
-
-	/**
-	 * @since 2.0
-	 */
-	public synchronized PluginEntry parse(File pluginFile) throws SAXException, IOException {
-		FileInputStream in = null;;
-		try{
-			in = new FileInputStream(pluginFile);
-			return parse(in, PLUGINS + "/" + pluginFile.getParentFile().getName() + "/"); //$NON-NLS-1$ //$NON-NLS-2$
-		}finally{
-			if (in != null){
-				try{
-					in.close();
-				}catch(IOException e){
-				}
-			}
-		}
-	}
-	/**
-	 * @since 3.0
-	 */
-	public synchronized PluginEntry parse(InputStream in, String bundleUrl) throws SAXException, IOException {
-		try {
-            location = bundleUrl;
-			pluginEntry = new PluginEntry();
-			pluginEntry.setURL(bundleUrl);
-			parser.parse(new InputSource(in), this);
-		} catch (ParseCompleteException e) {
-			// expected, we stopped the parsing when we have the information we need
-			/// no need to pursue the parsing
-		}
-		return pluginEntry;
-	}
-
-	/**
-	 * @see DefaultHandler#startElement(String, String, String, Attributes)
-	 */
-	public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
-
-		String tag = localName.trim();
-
-		if (tag.equalsIgnoreCase(CFG_PLUGIN)) {
-			pluginEntry.isFragment(false);			
-			processPlugin(attributes);
-			return;
-		}
-
-		if (tag.equalsIgnoreCase(CFG_FRAGMENT)) {
-			pluginEntry.isFragment(true);			
-			processPlugin(attributes);
-			return;
-		}
-	}
-
-	/** 
-	 * process plugin entry info
-	 */
-	private void processPlugin(Attributes attributes) throws ParseCompleteException {
-		String id = attributes.getValue("id"); //$NON-NLS-1$
-		String version = attributes.getValue("version"); //$NON-NLS-1$
-		if (id == null || id.trim().length() == 0) {
-			id = "_no_id_"; //$NON-NLS-1$
-            Utils.log(Messages.getString("PluginParser.plugin_no_id", location));
-        }
-        if (version == null || version.trim().length() == 0) {
-            version = "0.0.0"; //$NON-NLS-1$
-            Utils.log(Messages.getString("PluginParser.plugin_no_version", location));
-        }
-		pluginEntry.setVersionedIdentifier(new VersionedIdentifier(id, version));
-		
-		// stop parsing now
-		throw new ParseCompleteException(""); //$NON-NLS-1$
-	}
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/ProductProvider.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/ProductProvider.java
deleted file mode 100644
index 6c7f199..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/ProductProvider.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-import java.util.*;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.update.configurator.*;
-
-/**
- * Maps primary features to IProduct
- */
-public class ProductProvider implements IProductProvider{
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IProductProvider#getProducts()
-	 */
-	public IProduct[] getProducts() {
-		IPlatformConfiguration configuration = ConfiguratorUtils.getCurrentPlatformConfiguration();
-		if (configuration == null)
-			return new IProduct[0];
-		else {
-			IPlatformConfiguration.IFeatureEntry[] features = configuration.getConfiguredFeatureEntries();
-			ArrayList primaryFeatures = new ArrayList();
-			for (int i=0; i<features.length; i++)
-				if (features[i].canBePrimary())
-					primaryFeatures.add(features[i]);
-			// TODO handle unmanaged plugins later
-			return (IProduct[])primaryFeatures.toArray(new IProduct[primaryFeatures.size()]);
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IProductProvider#getName()
-	 */
-	public String getName() {
-		return Messages.getString("ProductProvider"); //$NON-NLS-1$
-	}
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/SiteEntry.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/SiteEntry.java
deleted file mode 100644
index 7aa8599..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/SiteEntry.java
+++ /dev/null
@@ -1,761 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-import java.io.*;
-import java.net.*;
-import java.util.*;
-import java.util.zip.*;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.osgi.service.environment.*;
-import org.eclipse.update.configurator.*;
-import org.eclipse.update.configurator.IPlatformConfiguration.*;
-import org.w3c.dom.*;
-import org.xml.sax.*;
-
-
-public class SiteEntry implements IPlatformConfiguration.ISiteEntry, IConfigurationConstants{	
-	private static final String MAC_OS_MARKER = ".DS_Store";
-	
-	private URL url; // this is the external URL for the site
-	private URL resolvedURL; // this is the resolved URL used internally
-	private ISitePolicy policy;
-	private boolean updateable = true;
-	private Map featureEntries;
-	private ArrayList pluginEntries;
-	private long changeStamp;
-	private long featuresChangeStamp;
-	private long pluginsChangeStamp;
-	private String linkFileName;
-	private boolean enabled = true;
-	private Configuration config;
-	
-	private static FeatureParser featureParser = new FeatureParser();
-	private static PluginParser pluginParser = new PluginParser();
-	private static boolean isMacOS = Platform.getOS().equals(Constants.OS_MACOSX);
-
-	public SiteEntry(URL url) {
-		this(url,null);
-	}
-	
-	public SiteEntry(URL url, ISitePolicy policy) {
-		if (url == null)
-			try {
-				url = new URL("platform:/base/"); //$NON-NLS-1$ try using platform-relative URL
-			} catch (MalformedURLException e) {
-				url = PlatformConfiguration.getInstallURL(); // ensure we come up ... use absolute file URL
-			}
-			
-		if (policy == null)
-			policy = new SitePolicy(DEFAULT_POLICY_TYPE, DEFAULT_POLICY_LIST);
-
-		if (url.getProtocol().equals("file")) { //$NON-NLS-1$
-			try {
-				// TODO remove this when platform fixes local file url's
-				this.url = new File(url.getFile()).toURL(); 
-			} catch (MalformedURLException e1) {
-				this.url = url;
-			}
-		} else
-			this.url = url;
-		
-		this.policy = policy;
-		this.resolvedURL = this.url;
-		if (url.getProtocol().equals("platform")) { // $NON-NLS-1$
-			try {
-				resolvedURL = PlatformConfiguration.resolvePlatformURL(url); // 19536
-			} catch (IOException e) {
-				// will use the baseline URL ...
-			}
-		}
-	}
-
-	public void setConfig(Configuration config) {
-		this.config = config;
-	}
-	
-	public Configuration getConfig() {
-		return config;
-	}
-	
-	/*
-	 * @see ISiteEntry#getURL()
-	 */
-	public URL getURL() {
-		return url;
-	}
-
-	/*
-	* @see ISiteEntry#getSitePolicy()
-	*/
-	public ISitePolicy getSitePolicy() {
-		return policy;
-	}
-
-	/*
-	 * @see ISiteEntry#setSitePolicy(ISitePolicy)
-	 */
-	public synchronized void setSitePolicy(ISitePolicy policy) {
-		if (policy == null)
-			throw new IllegalArgumentException();
-		this.policy = policy;
-	}
-
-	/*
-	 * @see ISiteEntry#getFeatures()
-	 */
-	public String[] getFeatures() {
-		return getDetectedFeatures();
-	}
-
-	/*
-	 * @see ISiteEntry#getPlugins()
-	 */
-	public String[] getPlugins() {
-
-		ISitePolicy policy = getSitePolicy();
-
-		if (policy.getType() == ISitePolicy.USER_INCLUDE)
-			return policy.getList();
-
-		if (policy.getType() == ISitePolicy.USER_EXCLUDE) {
-			ArrayList detectedPlugins = new ArrayList(Arrays.asList(getDetectedPlugins()));
-			String[] excludedPlugins = policy.getList();
-			for (int i = 0; i < excludedPlugins.length; i++) {
-				if (detectedPlugins.contains(excludedPlugins[i]))
-					detectedPlugins.remove(excludedPlugins[i]);
-			}
-			return (String[]) detectedPlugins.toArray(new String[0]);
-		}
-		
-		if (policy.getType() == ISitePolicy.MANAGED_ONLY) {
-			PluginEntry[] managedPlugins = getManagedPlugins();
-			String[] managedPluginsURLs = new String[managedPlugins.length];
-			for (int i=0; i<managedPlugins.length; i++)
-				managedPluginsURLs[i] = managedPlugins[i].getURL();
-			
-			return managedPluginsURLs;
-		}
-
-		// bad policy type
-		return new String[0];
-	}
-
-	private PluginEntry[] getManagedPlugins() {
-		// Note:
-		// We detect all the plugins on the site, but it would be faster
-		// to just lookup the plugins that correspond to the entries found in each feature.
-		// TODO fix the above
-		if (pluginEntries == null)
-			detectPlugins();
-		if (featureEntries == null)
-			detectFeatures();
-		
-		// cache all the plugin entries for faster lookup later
-		Map cachedPlugins = new HashMap(pluginEntries.size());
-		for (int i=0; i<pluginEntries.size(); i++) {
-			PluginEntry p = (PluginEntry)pluginEntries.get(i);
-			cachedPlugins.put(p.getVersionedIdentifier(), p);
-		}
-		
-		ArrayList managedPlugins = new ArrayList();
-		for (Iterator iterator=featureEntries.values().iterator(); iterator.hasNext();) {
-			Object feature = iterator.next();
-			if (!(feature instanceof FeatureEntry))
-				continue;
-			
-			PluginEntry[] plugins = ((FeatureEntry)feature).getPluginEntries();
-			for (int i=0; i<plugins.length; i++)
-				if (cachedPlugins.containsKey(plugins[i].getVersionedIdentifier()))
-					managedPlugins.add(cachedPlugins.get(plugins[i].getVersionedIdentifier()));
-					
-		}
-		return (PluginEntry[])managedPlugins.toArray(new PluginEntry[managedPlugins.size()]);
-	}
-	
-	public PluginEntry[] getPluginEntries() {
-		String[] pluginURLs = getPlugins();
-		// hash the array, for faster lookups
-		HashMap map = new HashMap(pluginURLs.length);
-		for (int i=0; i<pluginURLs.length; i++)
-			map.put(pluginURLs[i], pluginURLs[i]);
-		
-		if (pluginEntries == null)
-				detectPlugins();
-		
-		ArrayList plugins = new ArrayList(pluginURLs.length);
-		for (int i=0; i<pluginEntries.size(); i++) {
-			PluginEntry p = (PluginEntry)pluginEntries.get(i);
-			if (map.containsKey(p.getURL()))
-				plugins.add(p);
-		}
-		return (PluginEntry[])plugins.toArray(new PluginEntry[plugins.size()]);
-	}
-	
-	/*
-	 * @see ISiteEntry#getChangeStamp()
-	 */
-	public long getChangeStamp() {
-		if (changeStamp == 0)
-			computeChangeStamp();
-		return changeStamp;
-	}
-
-	/*
-	 * @see ISiteEntry#getFeaturesChangeStamp()
-	 */
-	public long getFeaturesChangeStamp() {
-		if (featuresChangeStamp == 0)
-			computeFeaturesChangeStamp();
-		return featuresChangeStamp;
-	}
-
-	/*
-	 * @see ISiteEntry#getPluginsChangeStamp()
-	 */
-	public long getPluginsChangeStamp() {
-		if (pluginsChangeStamp == 0)
-			computePluginsChangeStamp();
-		return pluginsChangeStamp;
-	}
-
-	/*
-	 * @see ISiteEntry#isUpdateable()
-	 */
-	public boolean isUpdateable() {
-		return updateable;
-	}
-	
-	public void setUpdateable(boolean updateable) {
-		this.updateable = updateable;
-	}
-
-	/*
-	 * @see ISiteEntry#isNativelyLinked()
-	 */
-	public boolean isNativelyLinked() {
-		return isExternallyLinkedSite();
-	}
-
-	public URL getResolvedURL() {
-		return resolvedURL;
-	}
-	
-	/**
-	 * Detect new features (timestamp > current site timestamp)
-	 * and validates existing features (they might have been removed)
-	 */
-	private void detectFeatures() {
-
-		if (featureEntries != null)
-			validateFeatureEntries();
-		else
-			featureEntries = new HashMap();
-
-		if (!PlatformConfiguration.supportsDetection(resolvedURL))
-			return;
-
-		// locate feature entries on site
-		File siteRoot = new File(resolvedURL.getFile().replace('/', File.separatorChar));
-		File featuresDir = new File(siteRoot, FEATURES);
-		if (featuresDir.exists()) {
-			// handle the installed features under the features directory
-			File[] dirs = featuresDir.listFiles(new FileFilter() {
-				public boolean accept(File f) {
-					// mac os folders contain a file .DS_Store in each folder, and we need to skip it (bug 76869) 
-					if (isMacOS && f.getName().equals(MAC_OS_MARKER))
-						return false;
-					boolean valid = f.isDirectory() && (new File(f,FEATURE_XML).exists());
-					if (!valid)
-						Utils.log(Messages.getString("SiteEntry.cannotFindFeatureInDir", f.getAbsolutePath())); //$NON-NLS-1$
-					return valid;
-				}
-			});
-		
-			for (int index = 0; index < dirs.length; index++) {
-				try {
-					File featureXML = new File(dirs[index], FEATURE_XML);
-					if (featureXML.lastModified() <= featuresChangeStamp &&
-						dirs[index].lastModified() <= featuresChangeStamp)
-						continue;
-					URL featureURL = featureXML.toURL();
-					FeatureEntry featureEntry = featureParser.parse(featureURL);
-					if (featureEntry != null)
-						addFeatureEntry(featureEntry);
-				} catch (MalformedURLException e) {
-					Utils.log(Messages.getString("InstalledSiteParser.UnableToCreateURLForFile", featuresDir.getAbsolutePath()));//$NON-NLS-1$
-				}
-			}
-		}
-		
-		Utils.debug(resolvedURL.toString() + " located  " + featureEntries.size() + " feature(s)"); //$NON-NLS-1$ //$NON-NLS-2$
-	}
-	
-	/**
-	 * Detect new plugins (timestamp > current site timestamp)
-	 * and validates existing plugins (they might have been removed)
-	 */
-	private void detectPlugins() {
-		boolean compareTimeStamps = false;
-		if (pluginEntries != null) {
-			validatePluginEntries();
-			compareTimeStamps = true; // only pick up newer plugins
-		} else
-			pluginEntries = new ArrayList();
-
-		if (!PlatformConfiguration.supportsDetection(resolvedURL))
-			return;
-
-		// locate plugin entries on site
-		File pluginsDir = new File(resolvedURL.getFile(), PLUGINS);
-		
-		if (pluginsDir.exists() && pluginsDir.isDirectory()) {
-			File[] files = pluginsDir.listFiles();
-			for (int i = 0; i < files.length; i++) {
-				if(files[i].isDirectory()){
-					detectUnpackedPlugin(files[i], compareTimeStamps);
-				}else if(files[i].getName().endsWith(".jar")){ //$NON-NLS-1$
-					detectPackedPlugin(files[i], compareTimeStamps);
-				}else{
-					// not bundle file
-				}
-			}
-		} 
-		
-		Utils.debug(resolvedURL.toString() + " located  " + pluginEntries.size() + " plugin(s)"); //$NON-NLS-1$ //$NON-NLS-2$
-	}
-
-	/**
-	 * @param file a plugin jar
-	 * @param compareTimeStamps set to true when looking for plugins changed since last time they were detected
-	 */
-	private void detectPackedPlugin(File file, boolean compareTimeStamps) {
-		// plugin to run directly from jar
-		if (compareTimeStamps && file.lastModified() <= pluginsChangeStamp) {
-			return;
-		}
-		String entryName = META_MANIFEST_MF;
-		ZipFile z = null;
-		InputStream bundleManifestIn = null;
-		InputStream pluginManifestIn = null;
-		String pluginURL = PLUGINS + "/" + file.getName(); //$NON-NLS-1$
-		try {
-			// First, check if has valid bundle manifest
-			z = new ZipFile(file);
-			if (z.getEntry(entryName) != null) {
-				bundleManifestIn = z.getInputStream(new ZipEntry(entryName));
-				BundleManifest manifest = new BundleManifest(bundleManifestIn,
-						pluginURL);
-				if (manifest.exists()) {
-					addPluginEntry(manifest.getPluginEntry());
-					return;
-				}
-			}
-			// no bundle manifest, check for plugin.xml or fragment.xml
-			entryName = PLUGIN_XML;
-			if (z.getEntry(entryName) == null) {
-				entryName = FRAGMENT_XML;
-			}
-			if (z.getEntry(entryName) != null) {
-				pluginManifestIn = z.getInputStream(new ZipEntry(entryName));
-				PluginEntry entry1 = pluginParser.parse(pluginManifestIn,
-						pluginURL);
-				addPluginEntry(entry1);
-			}
-		} catch (IOException e5) {
-			String pluginFileString2 = pluginURL + "!" + entryName; //$NON-NLS-1$
-			Utils.log(Messages.getString("InstalledSiteParser.ErrorAccessing", //$NON-NLS-1$
-					pluginFileString2)); //$NON-NLS-1$
-		} catch (SAXException e3) {
-			String pluginFileString1 = pluginURL + "!" + entryName; //$NON-NLS-1$
-			Utils.log(Messages.getString(
-					"InstalledSiteParser.ErrorParsingFile", pluginFileString1)); //$NON-NLS-1$
-		} finally {
-			if (bundleManifestIn != null) {
-				try {
-					bundleManifestIn.close();
-				} catch (IOException e4) {
-				}
-			}
-			if (pluginManifestIn != null) {
-				try {
-					pluginManifestIn.close();
-				} catch (IOException e2) {
-				}
-			}
-			if (z != null) {
-				try {
-					z.close();
-				} catch (IOException e1) {
-				}
-			}
-		}
-	}
-	/**
-	 * @param file a plugin directory
-	 * @param compareTimeStamps set to true when looking for plugins changed since last time they were detected
-	 */
-	private void detectUnpackedPlugin(File file, boolean compareTimeStamps) {
-		// unpacked plugin
-		long dirTimestamp = file.lastModified();
-		File pluginFile = new File(file, META_MANIFEST_MF);
-		try {
-			// First, check if has valid bundle manifest
-			BundleManifest bundleManifest = new BundleManifest(pluginFile);
-			if (bundleManifest.exists()) {
-				if (compareTimeStamps
-						&& dirTimestamp <= pluginsChangeStamp
-						&& pluginFile.lastModified() <= pluginsChangeStamp)
-					return;
-				PluginEntry entry = bundleManifest.getPluginEntry();
-				addPluginEntry(entry);
-			} else {
-				// no bundle manifest, check for plugin.xml or fragment.xml
-				pluginFile = new File(file, PLUGIN_XML);
-				if (!pluginFile.exists()) { //$NON-NLS-1$
-					pluginFile = new File(file, FRAGMENT_XML); //$NON-NLS-1$
-				}
-				if (pluginFile.exists() && !pluginFile.isDirectory()) {
-					// TODO in the future, assume that the timestamps are not
-					// reliable,
-					// or that the user manually modified an existing plugin,
-					// so
-					// the apparently modifed plugin may actually be configured
-					// already.
-					// We will need to double check for this. END to do.
-					if (compareTimeStamps 
-							&& dirTimestamp <= pluginsChangeStamp
-							&& pluginFile.lastModified() <= pluginsChangeStamp)
-						return;
-					PluginEntry entry = pluginParser.parse(pluginFile);
-					addPluginEntry(entry);
-				}
-			}
-		} catch (IOException e) {
-			String pluginFileString = pluginFile.getAbsolutePath();
-			if (ConfigurationActivator.DEBUG)
-				Utils.log(Utils.newStatus(Messages.getString(
-						"InstalledSiteParser.ErrorParsingFile", pluginFileString), e));//$NON-NLS-1$
-			else
-				Utils.log(Messages.getString("InstalledSiteParser.ErrorAccessing", //$NON-NLS-1$
-						pluginFileString)); //$NON-NLS-1$
-		} catch (SAXException e) {
-			String pluginFileString = pluginFile.getAbsolutePath();
-			Utils.log(Messages.getString(
-					"InstalledSiteParser.ErrorParsingFile", pluginFileString)); //$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * @return list of feature url's (relative to site)
-	 */
-	private synchronized String[] getDetectedFeatures() {
-		if (featureEntries == null)
-			detectFeatures();
-		String[] features = new String[featureEntries.size()];
-		Iterator iterator = featureEntries.values().iterator();
-		for (int i=0; i<features.length; i++)
-			features[i] = ((FeatureEntry)iterator.next()).getURL();
-		return features;
-	}
-
-	/**
-	 * @return list of plugin url's (relative to site)
-	 */
-	private synchronized String[] getDetectedPlugins() {
-		if (pluginEntries == null)
-			detectPlugins();
-		
-		String[] plugins = new String[pluginEntries.size()];
-		for (int i=0; i<plugins.length; i++)
-			plugins[i] = ((PluginEntry)pluginEntries.get(i)).getURL();
-		return plugins;
-	}
-
-	private void computeChangeStamp() {
-		changeStamp = Math.max(computeFeaturesChangeStamp(), computePluginsChangeStamp());
-//		changeStampIsValid = true;
-	}
-
-	private synchronized long computeFeaturesChangeStamp() {
-		if (featuresChangeStamp > 0)
-			return featuresChangeStamp;
-		
-		long start = 0;
-		if (ConfigurationActivator.DEBUG)
-			start = (new Date()).getTime();
-		String[] features = getFeatures();
-	
-		// compute stamp for the features directory
-		long dirStamp = 0;
-		if (PlatformConfiguration.supportsDetection(resolvedURL)) {
-			File root = new File(resolvedURL.getFile().replace('/', File.separatorChar));
-			File featuresDir = new File(root, FEATURES);
-			dirStamp = featuresDir.lastModified();
-		}
-		featuresChangeStamp = Math.max(dirStamp, computeStamp(features));
-		if (ConfigurationActivator.DEBUG) {
-			long end = (new Date()).getTime();
-			Utils.debug(resolvedURL.toString() + " feature stamp: " + featuresChangeStamp + " in " + (end - start) + "ms"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$
-		}
-		return featuresChangeStamp;
-	}
-
-	private synchronized long computePluginsChangeStamp() {
-		if (pluginsChangeStamp > 0)
-			return pluginsChangeStamp;
-		
-		if (!PlatformConfiguration.supportsDetection(resolvedURL)) {
-			Utils.log(Messages.getString("SiteEntry.computePluginStamp", resolvedURL.toExternalForm())); //$NON-NLS-1$
-			return 0;
-		}
-
-		// compute stamp for the plugins directory
-		File root = new File(resolvedURL.getFile().replace('/', File.separatorChar));
-		File pluginsDir = new File(root, PLUGINS);
-		if (!pluginsDir.exists() || !pluginsDir.isDirectory()) {
-			Utils.log(Messages.getString("SiteEntry.pluginsDir", pluginsDir.getAbsolutePath())); //$NON-NLS-1$
-			return 0;
-		}
-
-		pluginsChangeStamp = pluginsDir.lastModified();
-		return pluginsChangeStamp;
-	}
-
-	private long computeStamp(String[] targets) {
-
-		long result = 0;
-		if (!PlatformConfiguration.supportsDetection(resolvedURL)) {
-			// NOTE:  this path should not be executed until we support running
-			//        from an arbitrary URL (in particular from http server). For
-			//        now just compute stamp across the list of names. Eventually
-			//        when general URLs are supported we need to do better (factor
-			//        in at least the existence of the target). However, given this
-			//        code executes early on the startup sequence we need to be
-			//        extremely mindful of performance issues.
-			// In fact, we should get the last modified from the connection
-			for (int i = 0; i < targets.length; i++)
-				result ^= targets[i].hashCode();
-			Utils.debug("*WARNING* computing stamp using URL hashcodes only"); //$NON-NLS-1$
-		} else {
-			// compute stamp across local targets
-			File rootFile = new File(resolvedURL.getFile().replace('/', File.separatorChar));
-			if (rootFile.exists()) {
-				File f = null;
-				for (int i = 0; i < targets.length; i++) {
-					f = new File(rootFile, targets[i]);
-					if (f.exists())
-						result = Math.max(result, f.lastModified());
-				}
-			}
-		}
-
-		return result;
-	}
-	
-	public void setLinkFileName(String linkFileName) {
-		this.linkFileName = linkFileName;
-	}
-	
-	public String getLinkFileName() {
-		return linkFileName;
-	}
-
-	public boolean isExternallyLinkedSite() {
-		return (linkFileName != null && !linkFileName.trim().equals("")); //$NON-NLS-1$
-	}
-
-	public synchronized void refresh() {
-		// reset computed values. Will be updated on next access.
-		featuresChangeStamp = 0;
-		pluginsChangeStamp = 0;
-		changeStamp = 0;
-		featureEntries = null;
-		pluginEntries = null;
-	}
-	
-	public void refreshPlugins() {
-		// reset computed values. Will be updated on next access.
-		pluginsChangeStamp = 0;
-		changeStamp = 0;
-		pluginEntries = null;
-	}
-	
-	public void addFeatureEntry(IFeatureEntry feature) {
-		if (featureEntries == null)
-			featureEntries = new HashMap();
-		// Make sure we keep the larger version of same feature
-		IFeatureEntry existing = (FeatureEntry)featureEntries.get(feature.getFeatureIdentifier());
-		if (existing != null) {
-			VersionedIdentifier existingVersion = new VersionedIdentifier(existing.getFeatureIdentifier(), existing.getFeatureVersion());
-			VersionedIdentifier newVersion = new VersionedIdentifier(feature.getFeatureIdentifier(), feature.getFeatureVersion());
-			if (existingVersion.compareVersion(newVersion) == VersionedIdentifier.LESS_THAN) {
-				featureEntries.put(feature.getFeatureIdentifier(), feature);
-				pluginsChangeStamp = 0;
-			} else if (existingVersion.equals(newVersion)) {
-				// log error if same feature version/id but a different url
-				if (feature instanceof FeatureEntry && existing instanceof FeatureEntry &&
-						!((FeatureEntry)feature).getURL().equals(((FeatureEntry)existing).getURL()))
-				Utils.log(Messages.getString("SiteEntry.duplicateFeature",getURL().toExternalForm(), existing.getFeatureIdentifier())); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-		} else {
-			featureEntries.put(feature.getFeatureIdentifier(), feature);
-			pluginsChangeStamp = 0;
-		}
-		if (feature instanceof FeatureEntry)
-			((FeatureEntry)feature).setSite(this);
-	}
-	
-	public FeatureEntry[] getFeatureEntries() {
-		if (featureEntries == null)
-			detectFeatures();
-		
-		if (featureEntries == null)
-			return new FeatureEntry[0];
-		else
-			return (FeatureEntry[])featureEntries.values().toArray(new FeatureEntry[featureEntries.size()]);
-	}
-	
-	public void addPluginEntry(PluginEntry plugin) {
-		if (pluginEntries == null)
-			pluginEntries = new ArrayList();
-		// Note: we could use the latest version of the same plugin, like we do for features, but we let the runtime figure it out
-		pluginEntries.add(plugin);
-	}
-	
-	public PluginEntry[] getAllPluginEntries() {
-		if (pluginEntries == null)
-			detectPlugins();
-		return (PluginEntry[])pluginEntries.toArray(new PluginEntry[pluginEntries.size()]);
-	}
-	
-	public void loadFromDisk(long lastChange) throws CoreException{
-		featuresChangeStamp = lastChange;
-		pluginsChangeStamp = lastChange;
-		detectFeatures();
-		detectPlugins();
-	}
-	
-	/**
-	 * Saves state as xml content in a given parent element
-	 * @param doc
-	 */
-	public Element toXML(Document doc) {
-
-		Element siteElement = doc.createElement(CFG_SITE);
-		
-		if (getURL().toString() != null)
-			siteElement.setAttribute(CFG_URL, getURL().toString());
-
-		siteElement.setAttribute(CFG_ENABLED, isEnabled() ? "true" : "false"); //$NON-NLS-1$ //$NON-NLS-2$
-		siteElement.setAttribute(CFG_UPDATEABLE, isUpdateable() ? "true" : "false"); //$NON-NLS-1$ //$NON-NLS-2$
-		if (isExternallyLinkedSite()) 
-			siteElement.setAttribute(CFG_LINK_FILE, getLinkFileName().trim().replace(File.separatorChar, '/')); 
-
-		int type = getSitePolicy().getType();
-		String typeString = CFG_POLICY_TYPE_UNKNOWN;
-		try {
-			typeString = CFG_POLICY_TYPE[type];
-		} catch (IndexOutOfBoundsException e) {
-			// ignore bad attribute ...
-		}
-		siteElement.setAttribute(CFG_POLICY, typeString); 
-		String[] list = getSitePolicy().getList();
-		if (list.length > 0) {
-			StringBuffer sb = new StringBuffer(256);
-			for (int i=0; i<list.length-1; i++) {
-				sb.append(list[i]);
-				sb.append(',');
-			}
-			sb.append(list[list.length-1]);
-			siteElement.setAttribute(CFG_LIST, sb.toString());
-		}
-//		// note: we don't save features inside the site element.
-		
-		// collect feature entries
-//		configElement.setAttribute(CFG_FEATURE_ENTRY_DEFAULT, defaultFeature);
-		FeatureEntry[] feats = getFeatureEntries();
-		for (int i = 0; i < feats.length; i++) {
-			Element featureElement = feats[i].toXML(doc);
-			siteElement.appendChild(featureElement);
-		}
-		
-		return siteElement;
-	}
-	
-	private void validateFeatureEntries() {
-		File root = new File(resolvedURL.getFile().replace('/', File.separatorChar));
-		Iterator iterator = featureEntries.values().iterator();
-		Collection deletedFeatures = new ArrayList();
-		while(iterator.hasNext()) {
-			FeatureEntry feature = (FeatureEntry)iterator.next();
-			// Note: in the future, we can check for absolute url as well.
-			//       For now, feature url is features/org.eclipse.foo/feature.xml
-			File featureXML = new File(root, feature.getURL());
-			if (!featureXML.exists())
-				deletedFeatures.add(feature.getFeatureIdentifier());
-		}
-		for(Iterator it=deletedFeatures.iterator(); it.hasNext();){
-			featureEntries.remove(it.next());
-		}
-	}
-	
-	private void validatePluginEntries() {
-		File root = new File(resolvedURL.getFile().replace('/', File.separatorChar));
-		Collection deletedPlugins = new ArrayList();
-		for (int i=0; i<pluginEntries.size(); i++) {
-			PluginEntry plugin = (PluginEntry)pluginEntries.get(i);
-			// Note: in the future, we can check for absolute url as well.
-			//       For now, feature url is plugins/org.eclipse.foo/plugin.xml
-			File pluginLocation = new File(root, plugin.getURL());
-			if (!pluginLocation.exists())
-				deletedPlugins.add(plugin);
-		}
-		for(Iterator it=deletedPlugins.iterator(); it.hasNext();){
-			pluginEntries.remove(it.next());
-		}
-	}
-	
-	public boolean isEnabled() {
-		return enabled;
-	}
-	
-	public void setEnabled(boolean enable) {
-		this.enabled = enable;
-	}
-	
-	public FeatureEntry getFeatureEntry(String id) {
-		FeatureEntry[] features = getFeatureEntries();
-		for (int i=0; i<features.length; i++)
-			if (features[i].getFeatureIdentifier().equals(id)) 
-				return features[i];
-		return null;
-	}
-	
-	
-	public boolean unconfigureFeatureEntry(IFeatureEntry feature) {
-		FeatureEntry existingFeature = getFeatureEntry(feature.getFeatureIdentifier());
-		if (existingFeature != null)
-			featureEntries.remove(existingFeature.getFeatureIdentifier());
-		return existingFeature != null;
-	}
-	
-	/*
-	 * This is a bit of a hack.
-	 * When no features were added to the site, but the site is initialized from platform.xml 
-	 * we need to set the feature set to empty, so we don't try to detect them.
-	 */
-	void initialized() { 
-		if (featureEntries == null)
-			featureEntries = new HashMap();
-	}
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/SitePolicy.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/SitePolicy.java
deleted file mode 100644
index 34988f8..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/SitePolicy.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-import org.eclipse.update.configurator.*;
-import org.eclipse.update.configurator.IPlatformConfiguration.*;
-
-
-public class SitePolicy implements IPlatformConfiguration.ISitePolicy {
-
-	private int type;
-	private String[] list;
-
-	public SitePolicy() {
-	}
-	public SitePolicy(int type, String[] list) {
-		if (type != ISitePolicy.USER_INCLUDE && type != ISitePolicy.USER_EXCLUDE && type != ISitePolicy.MANAGED_ONLY)
-			throw new IllegalArgumentException();
-		this.type = type;
-
-		if (list == null)
-			this.list = new String[0];
-		else
-			this.list = list;
-	}
-
-	/*
-	 * @see ISitePolicy#getType()
-	 */
-	public int getType() {
-		return type;
-	}
-
-	/*
-	* @see ISitePolicy#getList()
-	*/
-	public String[] getList() {
-		return list;
-	}
-
-	/*
-	 * @see ISitePolicy#setList(String[])
-	 */
-	public synchronized void setList(String[] list) {
-		if (list == null)
-			this.list = new String[0];
-		else
-			this.list = list;
-	}
-
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/UpdateURLDecoder.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/UpdateURLDecoder.java
deleted file mode 100644
index 6f4079d..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/UpdateURLDecoder.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-import java.io.UnsupportedEncodingException;
-import java.net.URLDecoder;
-
-public class UpdateURLDecoder {
-	static boolean init=false;
-	static boolean useEnc=true;
-	
-	public static String decode(String s, String enc) throws UnsupportedEncodingException {
-		if (!init) {
-			init = true;
-			try {
-				return URLDecoder.decode(s, enc);
-			} catch (NoSuchMethodError e) {
-				useEnc=false;				
-			}
-		}
-		
-		if (useEnc) {
-			return URLDecoder.decode(s, enc);
-		} else {
-			return URLDecoder.decode(s);
-		}
-
-	}
-
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Utils.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Utils.java
deleted file mode 100644
index abe5142..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/Utils.java
+++ /dev/null
@@ -1,259 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-import java.io.*;
-import java.net.URL;
-import java.util.*;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.osgi.framework.log.*;
-
-public class Utils {
-	private static final String KEY_PREFIX = "%"; //$NON-NLS-1$
-	private static final String KEY_DOUBLE_PREFIX = "%%"; //$NON-NLS-1$
-	static FrameworkLog log;
-	
-	public static void debug(String s) {
-		if (ConfigurationActivator.DEBUG)
-			System.out.println("PlatformConfig: " + s); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Creates a CoreException from some other exception.
-	 * The type of the CoreException is <code>IStatus.ERROR</code>
-	 * If the exception passed as a parameter is also a CoreException,
-	 * the new CoreException will contain all the status of the passed
-	 * CoreException.
-	 * 
-	 * @see IStatus#ERROR
-	 * @param s exception string
-	 * @param e actual exception being reported
-	 * @return a CoreException
-	 * @since 2.0
-	 */
-	public static CoreException newCoreException(String s, Throwable e) {
-
-		// check the case of a multistatus
-		IStatus status;
-		if (e instanceof CoreException) {
-			if (s == null)
-				s = ""; //$NON-NLS-1$
-			status = new MultiStatus("org.eclipse.update.configurator", 0, s, e); //$NON-NLS-1$
-			IStatus childrenStatus = ((CoreException) e).getStatus();
-			((MultiStatus) status).add(childrenStatus);
-			((MultiStatus) status).addAll(childrenStatus);
-		} else {
-			StringBuffer completeString = new StringBuffer(""); //$NON-NLS-1$
-			if (s != null)
-				completeString.append(s);
-			if (e != null) {
-				completeString.append(" ["); //$NON-NLS-1$
-				String msg = e.getLocalizedMessage();
-				completeString.append(msg!=null?msg:e.toString());
-				completeString.append("]"); //$NON-NLS-1$
-			}
-			status = newStatus(completeString.toString(), e);
-		}
-		return new CoreException(status); //$NON-NLS-1$
-	}
-
-	public static IStatus newStatus(String message, Throwable e) {
-		return new Status(IStatus.ERROR, "org.eclipse.update.configurator", IStatus.OK, message, e); //$NON-NLS-1$
-	}
-	
-	public static void log(String message) {
-		log(newStatus(message, null));
-	}
-	
-	public static void log(IStatus status) {
-		if (log != null) {
-			log.log(new FrameworkLogEntry(ConfigurationActivator.PI_CONFIGURATOR, status.getMessage(), 0, status.getException(), null));
-		} else {
-			System.out.println(status.getMessage());
-			if (status.getException() != null)
-				status.getException().printStackTrace();
-		}
-	}
-	
-	/**
-	 * Returns the url as a platform:/ url, if possible, else leaves it unchanged
-	 * @param url
-	 * @return
-	 */
-	public static URL asPlatformURL(URL url) {
-		try {
-			URL platformURL = new URL("platform:/base/"); //$NON-NLS-1$  // try using platform-relative URL
-			URL resolvedPlatformURL = Platform.asLocalURL(platformURL);
-			// TODO workaround bug in platform url resolution
-			if (resolvedPlatformURL.getProtocol().equals("file")) //$NON-NLS-1$
-				resolvedPlatformURL = new File(resolvedPlatformURL.getFile()).toURL();
-			String platformURLAsString = resolvedPlatformURL.toExternalForm();
-			String urlAsString = url.toExternalForm();
-			if (urlAsString.startsWith(platformURLAsString))
-				return new URL(platformURL.toExternalForm() + urlAsString.substring(platformURLAsString.length()) );
-			else
-				return url;
-		} catch (Exception e) {
-			return url;
-		}
-	}
-	
-
-	/**
-	 * 
-	 */
-	public static boolean isValidEnvironment(String os, String ws, String arch, String nl) {
-		if (os!=null && !isMatching(os, Platform.getOS())) return false;
-		if (ws!=null && !isMatching(ws, Platform.getWS())) return false;
-		if (arch!=null && !isMatching(arch, Platform.getOSArch())) return false;
-		if (nl!=null && !isMatchingLocale(nl, Platform.getNL())) return false;
-		return true;
-	}
-
-	/**
-	 * 
-	 */	
-	private static boolean isMatching(String candidateValues, String siteValues) {
-		if (siteValues==null) return false;
-		if ("*".equalsIgnoreCase(candidateValues)) return true; //$NON-NLS-1$
-		siteValues = siteValues.toUpperCase();		
-		StringTokenizer stok = new StringTokenizer(candidateValues, ","); //$NON-NLS-1$
-		while (stok.hasMoreTokens()) {
-			String token = stok.nextToken().toUpperCase();
-			if (siteValues.indexOf(token)!=-1) return true;
-		}
-		return false;
-	}
-	
-	/**
-	 * 
-	 */	
-	private static boolean isMatchingLocale(String candidateValues, String locale) {
-		if (locale==null) return false;
-		if ("*".equalsIgnoreCase(candidateValues)) return true; //$NON-NLS-1$
-		
-		locale = locale.toUpperCase();
-		candidateValues = candidateValues.toUpperCase();	
-		StringTokenizer stok = new StringTokenizer(candidateValues, ","); //$NON-NLS-1$
-		while (stok.hasMoreTokens()) {
-			String candidate = stok.nextToken();
-			if (locale.indexOf(candidate) == 0)
-				return true;
-			if (candidate.indexOf(locale) == 0)
-				return true;
-		}
-		return false;
-	}
-	
-	public static Locale getDefaultLocale() {
-		String nl = Platform.getNL();
-		// sanity test
-		if (nl == null)
-			return Locale.getDefault();
-		
-		// break the string into tokens to get the Locale object
-		StringTokenizer locales = new StringTokenizer(nl,"_"); //$NON-NLS-1$
-		if (locales.countTokens() == 1)
-			return new Locale(locales.nextToken(), ""); //$NON-NLS-1$
-		else if (locales.countTokens() == 2)
-			return new Locale(locales.nextToken(), locales.nextToken());
-		else if (locales.countTokens() == 3)
-			return new Locale(locales.nextToken(), locales.nextToken(), locales.nextToken());
-		else
-			return Locale.getDefault();
-	}
-	
-	
-	/**
-	 * Returns a resource string corresponding to the given argument 
-	 * value and bundle.
-	 * If the argument value specifies a resource key, the string
-	 * is looked up in the given resource bundle. If the argument does not
-	 * specify a valid key, the argument itself is returned as the
-	 * resource string. The key lookup is performed against the
-	 * specified resource bundle. If a resource string 
-	 * corresponding to the key is not found in the resource bundle
-	 * the key value, or any default text following the key in the
-	 * argument value is returned as the resource string.
-	 * A key is identified as a string begining with the "%" character.
-	 * Note that the "%" character is stripped off prior to lookup
-	 * in the resource bundle.
-	 * <p>
-	 * For example, assume resource bundle plugin.properties contains
-	 * name = Project Name
-	 * <pre>
-	 *     resolveNLString(b,"Hello World") returns "Hello World"</li>
-	 *     resolveNLString(b,"%name") returns "Project Name"</li>
-	 *     resolveNLString(b,"%name Hello World") returns "Project Name"</li>
-	 *     resolveNLString(b,"%abcd Hello World") returns "Hello World"</li>
-	 *     resolveNLString(b,"%abcd") returns "%abcd"</li>
-	 *     resolveNLString(b,"%%name") returns "%name"</li>
-	 * </pre>
-	 * </p>
-	 * 
-	 * @param resourceBundle resource bundle.
-	 * @param string translatable string from model
-	 * @return string, or <code>null</code>
-	 * @since 2.0
-	 */
-	public static String getResourceString(ResourceBundle resourceBundle, String string) {
-
-		if (string == null)
-			return null;
-
-		String s = string.trim();
-
-		if (s.equals("")) //$NON-NLS-1$
-			return string;
-
-		if (!s.startsWith(KEY_PREFIX))
-			return string;
-
-		if (s.startsWith(KEY_DOUBLE_PREFIX))
-			return s.substring(1);
-
-		int ix = s.indexOf(" "); //$NON-NLS-1$
-		String key = ix == -1 ? s : s.substring(0, ix);
-		String dflt = ix == -1 ? s : s.substring(ix + 1);
-
-		if (resourceBundle == null)
-			return dflt;
-
-		try {
-			return resourceBundle.getString(key.substring(1));
-		} catch (MissingResourceException e) {
-			return dflt;
-		}
-	}
-
-	public static boolean isAutomaticallyStartedBundle(String bundleURL) {
-		if (bundleURL.indexOf("org.eclipse.osgi") != -1) //$NON-NLS-1$
-			return true;
-		
-		String osgiBundles = System.getProperty("osgi.bundles"); //$NON-NLS-1$
-		StringTokenizer st = new StringTokenizer(osgiBundles, ","); //$NON-NLS-1$
-		while (st.hasMoreTokens()) {
-			String token = st.nextToken().trim();
-			int index = token.indexOf('@');
-			if (index != -1)
-				token = token.substring(0,index);
-			if (token.startsWith("reference:file:")) { //$NON-NLS-1$
-				File f = new File(token.substring(15));
-				if (bundleURL.indexOf(f.getName()) != -1)
-					return true;
-			}
-			if (bundleURL.indexOf(token) != -1)
-				return true;
-		}
-		return false;
-	}
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/VersionedIdentifier.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/VersionedIdentifier.java
deleted file mode 100644
index 53d86c8..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/VersionedIdentifier.java
+++ /dev/null
@@ -1,168 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator;
-
-import java.util.*;
-
-
-public class VersionedIdentifier {
-	private String identifier = ""; //$NON-NLS-1$
-	private int major = 0;
-	private int minor = 0;
-	private int service = 0;
-	private String qualifier = ""; //$NON-NLS-1$
-	private String version;
-
-	private static final String VER_SEPARATOR = "."; //$NON-NLS-1$
-	private static final String ID_SEPARATOR = "_"; //$NON-NLS-1$
-
-	public static final int LESS_THAN = -1;
-	public static final int EQUAL = 0;
-	public static final int EQUIVALENT = 1;
-	public static final int COMPATIBLE = 2;
-	public static final int GREATER_THAN = 3;
-
-	public VersionedIdentifier(String s) {
-		if (s == null || (s = s.trim()).equals("")) //$NON-NLS-1$
-			return;
-
-		int loc = s.lastIndexOf(ID_SEPARATOR);
-		if (loc != -1) {
-			this.identifier = s.substring(0, loc);
-			version = s.substring(loc + 1);
-			if(version==null)
-				version = "0.0.0";
-			parseVersion(version);
-		} else
-			this.identifier = s;
-	}
-	
-	public VersionedIdentifier(String id, String version) {
-		this(id+ID_SEPARATOR+ (version==null?"0.0.0":version) );
-		this.version = version;
-	}
-	
-	public String getVersion() {
-		return version;
-	}
-	
-	public String getIdentifier() {
-		return identifier;
-	}
-
-	public boolean equalIdentifiers(VersionedIdentifier id) {
-		if (id == null)
-			return identifier == null;
-		else
-			return id.identifier.equals(identifier);
-	}
-
-	public int compareVersion(VersionedIdentifier id) {
-
-		if (id == null) {
-			if (major == 0 && minor == 0 && service == 0)
-				return -1;
-			else
-				return 1;
-		}
-
-		if (major > id.major)
-			return GREATER_THAN;
-		if (major < id.major)
-			return LESS_THAN;
-		if (minor > id.minor)
-			return COMPATIBLE;
-		if (minor < id.minor)
-			return LESS_THAN;
-		if (service > id.service)
-			return EQUIVALENT;
-		if (service < id.service)
-			return LESS_THAN;
-		return compareQualifiers(qualifier, id.qualifier);
-	}
-
-	private int compareQualifiers(String q1, String q2) {
-		int result = q1.compareTo(q2);
-		if (result < 0)
-			return LESS_THAN;
-		else if (result > 0)
-			return EQUIVALENT;
-		else
-			return EQUAL;
-	}
-
-	private void parseVersion(String v) {
-		if (v == null || (v = v.trim()).equals("")) //$NON-NLS-1$
-			return;
-
-		try {
-			StringTokenizer st = new StringTokenizer(v, VER_SEPARATOR);
-			ArrayList elements = new ArrayList(4);
-
-			while (st.hasMoreTokens()) {
-				elements.add(st.nextToken());
-			}
-
-			if (elements.size() >= 1)
-				this.major = (new Integer((String) elements.get(0))).intValue();
-			if (elements.size() >= 2)
-				this.minor = (new Integer((String) elements.get(1))).intValue();
-			if (elements.size() >= 3)
-				this.service = (new Integer((String) elements.get(2))).intValue();
-			if (elements.size() >= 4)
-				this.qualifier = removeWhiteSpace((String) elements.get(3));
-
-		} catch (Exception e) {
-			// use what we got so far ...
-		}
-	}
-
-	private String removeWhiteSpace(String s) {
-		char[] chars = s.trim().toCharArray();
-		boolean whitespace = false;
-		for (int i = 0; i < chars.length; i++) {
-			if (Character.isWhitespace(chars[i])) {
-				chars[i] = '_';
-				whitespace = true;
-			}
-		}
-		return whitespace ? new String(chars) : s;
-	}
-	/* (non-Javadoc)
-	 * @see java.lang.Object#equals(java.lang.Object)
-	 */
-	public boolean equals(Object obj) {
-		if (this == obj)
-			return true;
-		if (!(obj instanceof VersionedIdentifier))
-			return false;
-		
-		VersionedIdentifier other = (VersionedIdentifier)obj;
-		return equalIdentifiers(other) &&
-			this.major == other.major &&
-			this.minor == other.minor &&
-			this.service == other.service &&
-			compareQualifiers(this.qualifier, other.qualifier) == EQUAL;
-	}
-	
-	/* (non-Javadoc)
-	 * @see java.lang.Object#hashCode()
-	 */
-	public int hashCode() {
-		return (identifier + "_" + version).hashCode();
-	}
-	/* (non-Javadoc)
-	 * @see java.lang.Object#toString()
-	 */
-	public String toString() {
-		return identifier + "_" + version;
-	}
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/XMLPrintHandler.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/XMLPrintHandler.java
deleted file mode 100644
index 5356367..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/XMLPrintHandler.java
+++ /dev/null
@@ -1,146 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-
-package org.eclipse.update.internal.configurator;
-
-import java.io.*;
-
-import org.w3c.dom.*;
-
-
-public class XMLPrintHandler {
-	//	used to print XML file
-	public static final String XML_COMMENT_END_TAG = "-->";
-	public static final String XML_COMMENT_BEGIN_TAG = "<!--";
-	public static final String XML_HEAD = "<?xml version=\"1.0\" encoding=\"";
-	public static final String XML_HEAD_END_TAG = "?>";
-	public static final String XML_DBL_QUOTES = "\"";
-	public static final String XML_SPACE = " ";
-	public static final String XML_BEGIN_TAG = "<";
-	public static final String XML_END_TAG = ">";
-	public static final String XML_EQUAL = "=";
-	public static final String XML_SLASH = "/";
-
-	public static void printBeginElement(Writer xmlWriter, String elementString) throws IOException{
-		StringBuffer temp = new StringBuffer(XML_BEGIN_TAG);
-		temp.append(elementString).append(XML_END_TAG).append("\n");
-		xmlWriter.write(temp.toString());
-
-	}
-
-	public static void printEndElement(Writer xmlWriter, String elementString) throws IOException{
-		StringBuffer temp = new StringBuffer(XML_BEGIN_TAG);
-		temp.append(XML_SLASH).append(elementString).append(XML_END_TAG).append("\n");
-		xmlWriter.write(temp.toString());
-
-	}
-
-	
-	public static void printText(Writer xmlWriter, String text) throws IOException{
-		xmlWriter.write(encode(text).toString());
-	}
-
-	public static void printComment(Writer xmlWriter, String comment)throws IOException {
-		StringBuffer temp = new StringBuffer(XML_COMMENT_BEGIN_TAG);
-		temp.append(encode(comment).toString()).append(XML_COMMENT_END_TAG).append("\n");
-		xmlWriter.write(temp.toString());
-	}
-
-	public static void printHead(Writer xmlWriter, String encoding) throws IOException {
-		StringBuffer temp = new StringBuffer(XML_HEAD);
-		temp.append(encoding).append(XML_DBL_QUOTES).append(XML_HEAD_END_TAG).append("\n");
-		xmlWriter.write(temp.toString());
-	}
-
-	public static String wrapAttributeForPrint(String attribute, String value) throws IOException {
-		StringBuffer temp = new StringBuffer(XML_SPACE);
-		temp.append(attribute).append(XML_EQUAL).append(XML_DBL_QUOTES)
-				.append(encode(value).toString()).append(XML_DBL_QUOTES);
-		return temp.toString();
-
-	}
-
-	public static void printNode(Writer xmlWriter, Node node,String encoding)  throws Exception{
-		if (node == null) {
-			return;
-		}
-
-		switch (node.getNodeType()) {
-		case Node.DOCUMENT_NODE: {
-			printHead(xmlWriter,encoding);
-			printNode(xmlWriter, ((Document) node).getDocumentElement(),encoding);
-			break;
-		}
-		case Node.ELEMENT_NODE: {
-			//get the attribute list for this node.
-			StringBuffer tempElementString = new StringBuffer(node.getNodeName());
-			NamedNodeMap attributeList = node.getAttributes();
-			if ( attributeList != null ) {
-				for(int i= 0; i <attributeList.getLength();i++){
-					Node attribute = attributeList.item(i);
-					tempElementString.append(wrapAttributeForPrint(attribute.getNodeName(),attribute.getNodeValue()));
-				}
-			}
-			printBeginElement(xmlWriter,tempElementString.toString());
-			
-			// do this recursively for the child nodes.
-			NodeList childNodes = node.getChildNodes();
-			if (childNodes != null) {
-				int length = childNodes.getLength();
-				for (int i = 0; i < length; i++) {
-					printNode(xmlWriter, childNodes.item(i),encoding);
-				}
-			}
-			
-			printEndElement(xmlWriter,node.getNodeName());
-			break;
-		}
-		
-		case Node.TEXT_NODE: {
-			xmlWriter.write(encode(node.getNodeValue()).toString());
-			break;
-		}
-		default: {
-			throw new UnsupportedOperationException("Unsupported XML Node Type.");
-			
-		}
-		}
-
-	}
-
-	public static StringBuffer encode(String value) {
-		StringBuffer buf = new StringBuffer();
-		for (int i = 0; i < value.length(); i++) {
-			char c = value.charAt(i);
-			switch (c) {
-				case '&' :
-					buf.append("&amp;"); //$NON-NLS-1$
-					break;
-				case '<' :
-					buf.append("&lt;"); //$NON-NLS-1$
-					break;
-				case '>' :
-					buf.append("&gt;"); //$NON-NLS-1$
-					break;
-				case '\'' :
-					buf.append("&apos;"); //$NON-NLS-1$
-					break;
-				case '\"' :
-					buf.append("&quot;"); //$NON-NLS-1$
-					break;
-				default :
-					buf.append(c);
-					break;
-			}
-		}
-		return buf;
-	}
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/branding/AboutInfo.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/branding/AboutInfo.java
deleted file mode 100644
index dd2b59f..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/branding/AboutInfo.java
+++ /dev/null
@@ -1,254 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator.branding;
-
-import java.net.*;
-import java.util.*;
-
-import org.eclipse.core.runtime.*;
-
-
-/**
- * The information within this object is obtained from the about INI file.
- * This file resides within an install configurations directory and must be a 
- * standard java property file.  
- * <p>
- * This class is not intended to be instantiated or subclassed by clients.
- * </p>
- */
-public final class AboutInfo {
-	private final static String INI_FILENAME = "about.ini"; //$NON-NLS-1$
-	private final static String PROPERTIES_FILENAME = "about.properties"; //$NON-NLS-1$
-	private final static String MAPPINGS_FILENAME = "about.mappings"; //$NON-NLS-1$
-
-	private String featureId;
-	private String versionId = ""; //$NON-NLS-1$
-	private String featurePluginLabel;
-	private String providerName;
-	private String appName;
-	private URL windowImageURL;
-	private URL[] windowImagesURLs;
-	private URL aboutImageURL;
-	private URL featureImageURL;
-	private URL welcomePageURL;
-	private String aboutText;
-	private String welcomePerspective;
-	private String tipsAndTricksHref;
-
-
-	/*
-	 * Create a new about info for a feature with the given id.
-	 */
-	/* package */ AboutInfo(String featureId) {
-		super();
-		this.featureId = featureId;
-	}
-
-	/**
-	 * Returns the configuration information for the feature with the 
-	 * given id.
-	 * 
-	 * @param featureId the feature id
-	 * @param versionId the version id (of the feature)
-	 * @param pluginId the plug-in id
-	 * @return the configuration information for the feature
-	 */
-	public static AboutInfo readFeatureInfo(String featureId, String versionId, String pluginId) {
-//		Assert.isNotNull(featureId);
-//		Assert.isNotNull(versionId);
-//		Assert.isNotNull(pluginId);
-		IniFileReader reader = new IniFileReader(featureId, pluginId, INI_FILENAME, PROPERTIES_FILENAME, MAPPINGS_FILENAME);
-		IStatus status = reader.load();
-// bug 78031
-//		if (!status.isOK()) {
-//			//return null;
-//			return new AboutInfo(featureId); // dummy about info
-//		}
-		
-		AboutInfo info = new AboutInfo(featureId);
-		Hashtable runtimeMappings  = new Hashtable();
-		runtimeMappings.put("{featureVersion}", versionId); //$NON-NLS-1$
-		info.versionId = versionId;
-		info.featurePluginLabel = reader.getFeaturePluginLabel();
-		info.providerName = reader.getProviderName();
-		info.appName = reader.getString("appName", true, runtimeMappings); //$NON-NLS-1$
-		info.aboutText = reader.getString("aboutText", true, runtimeMappings); //$NON-NLS-1$
-		info.windowImageURL = reader.getURL("windowImage"); //$NON-NLS-1$
-		// look for the newer array, but if its not there then use the older,
-		// single image definition
-		info.windowImagesURLs = reader.getURLs("windowImages"); //$NON-NLS-1$
-		info.aboutImageURL = reader.getURL("aboutImage"); //$NON-NLS-1$
-		info.featureImageURL = reader.getURL("featureImage"); //$NON-NLS-1$
-		info.welcomePageURL = reader.getURL("welcomePage"); //$NON-NLS-1$
-		info.welcomePerspective = reader.getString("welcomePerspective", false, runtimeMappings); //$NON-NLS-1$
-		info.tipsAndTricksHref = reader.getString("tipsAndTricksHref", false, runtimeMappings); //$NON-NLS-1$
-		return info;
-	}
-	
-	/**
-	 * Returns the URL for an image which can be shown in an "about" dialog 
-	 * for this product. Products designed to run "headless" typically would not 
-	 * have such an image.
-	 * 
-	 * @return the URL for an about image, or <code>null</code> if none
-	 */
-	public URL getAboutImageURL() {
-		return aboutImageURL;
-	}
-
-	/**
-	 * Returns the URL for an image which can be shown in an "about features" 
-	 * dialog. Products designed to run "headless" typically would not have such an image.
-	 * 
-	 * @return the URL for a feature image, or <code>null</code> if none
-	 */
-	public URL getFeatureImageURL() {
-		return featureImageURL;
-	}
-
-	/**
-	 * Returns the simple name of the feature image file.
-	 * 
-	 * @return the simple name of the feature image file,
-	 * or <code>null</code> if none
-	 */
-	public String getFeatureImageName() {
-		if (featureImageURL != null) {
-			IPath path = new Path(featureImageURL.getPath());
-			return path.lastSegment();
-		} else {
-			return null;
-		}
-	}
-
-		
-	/**
-	 * Returns a label for the feature plugn, or <code>null</code>.
-	 */
-	public String getFeatureLabel() {
-		return featurePluginLabel;
-	}
-
-	/**
-	 * Returns the id for this feature.
-	 * 
-	 * @return the feature id
-	 */
-	public String getFeatureId() {
-		return featureId;
-	}
-	
-	/**
-	 * Returns the text to show in an "about" dialog for this product.
-	 * Products designed to run "headless" typically would not have such text.
-	 * 
-	 * @return the about text, or <code>null</code> if none
-	 */
-	public String getAboutText() {
-		return aboutText;
-	}
-
-	/**
-	 * Returns the application name or <code>null</code>.
-	 * Note this is never shown to the user.
-	 * It is used to initialize the SWT Display.
-	 * <p>
-	 * On Motif, for example, this can be used
-	 * to set the name used for resource lookup.
-	 * </p>
-	 *
-	 * @return the application name, or <code>null</code>
-	 */
-	public String getAppName() {
-		return appName;
-	}
-
-	/**
-	 * Returns the product name or <code>null</code>.
-	 * This is shown in the window title and the About action.
-	 *
-	 * @return the product name, or <code>null</code>
-	 */
-	public String getProductName() {
-		return featurePluginLabel;
-	}
-
-	/**
-	 * Returns the provider name or <code>null</code>.
-	 *
-	 * @return the provider name, or <code>null</code>
-	 */
-	public String getProviderName() {
-		return providerName;
-	}
-
-	/**
-	 * Returns the feature version id.
-	 *
-	 * @return the version id of the feature
-	 */
-	public String getVersionId() {
-		return versionId;
-	}
-
-	/**
-	 * Returns a <code>URL</code> for the welcome page.
-	 * Products designed to run "headless" typically would not have such an page.
-	 * 
-	 * @return the welcome page, or <code>null</code> if none
-	 */
-	public URL getWelcomePageURL() {
-		return welcomePageURL;
-	}
-
-	/**
-	 * Returns the ID of a perspective in which to show the welcome page.
-	 * May be <code>null</code>.
-	 * 
-	 * @return the welcome page perspective id, or <code>null</code> if none
-	 */
-	public String getWelcomePerspectiveId() {
-		return welcomePerspective;
-	}
-
-	/**
-	 * Returns a <code>String</code> for the tips and trick href.
-	 * 
-	 * @return the tips and tricks href, or <code>null</code> if none
-	 */
-	public String getTipsAndTricksHref() {
-		return tipsAndTricksHref;
-	}
-
-	/**
-	 * Returns the image url for the window image to use for this product.
-	 * Products designed to run "headless" typically would not have such an image.
-	 * 
-	 * @return the image url for the window image, or <code>null</code> if none
-	 */
-	public URL getWindowImageURL() {
-		return windowImageURL;
-	}
-	
-	/**
-	 * Return an array of image URLs for the window images to use for
-	 * this product. The expectations is that the elements will be the same
-	 * image rendered at different sizes. Products designed to run "headless"
-	 * typically would not have such images.
-	 * 
-	 * @return an array of the image descriptors for the window images, or
-	 *         <code>null</code> if none
-	 * @since 3.0
-	 */
-	public URL[] getWindowImagesURLs() {
-		return windowImagesURLs;
-	}
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/branding/IBundleGroupConstants.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/branding/IBundleGroupConstants.java
deleted file mode 100644
index 45179c0..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/branding/IBundleGroupConstants.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator.branding;
-
-/**
- * These constants define the set of properties that the UI expects to
- * be available via <code>IBundleGroup.getProperty(String)</code>.
- * 
- * @since 3.0
- * @see org.eclipse.core.runtime.IBundleGroup#getProperty(String)
- */
-public interface IBundleGroupConstants {
-	/**
-	 * An image which can be shown in an "about features" dialog (32x32).
-	 */
-	public static final String FEATURE_IMAGE = "featureImage"; //$NON-NLS-1$
-
-	/**
-	 * A help reference for the feature's tips and tricks page (optional).
-	 */
-	public static final String TIPS_AND_TRICKS_HREF = "tipsAndTricksHref"; //$NON-NLS-1$
-
-	/**
-	 * A URL for the feature's welcome page (special XML-based format)
-     * ($nl$/ prefix to permit locale-specific translations of entire file).
-	 * Products designed to run "headless" typically would not have such a page.
-	 */
-	public static final String WELCOME_PAGE = "welcomePage"; //$NON-NLS-1$
-
-	/**
-	 * The id of a perspective in which to show the welcome page
-	 * (optional).
-	 */
-	public static final String WELCOME_PERSPECTIVE = "welcomePerspective"; //$NON-NLS-1$
-	
-	/**
-	 * The URL of the license page for the feature
-	 * (optional).
-	 */
-	public static final String LICENSE_HREF = "licenseHref"; //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/branding/IProductConstants.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/branding/IProductConstants.java
deleted file mode 100644
index 179ef52..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/branding/IProductConstants.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator.branding;
-
-/**
- * These constants define the set of properties that the UI expects to
- * be available via <code>IProduct.getProperty(String)</code>.
- * 
- * @since 3.0
- * @see org.eclipse.core.runtime.IProduct#getProperty(String)
- */
-public interface IProductConstants {
-	/**
-	 * The application name, used to initialize the SWT Display.  This
-	 * value is distinct from the string displayed in the application
-	 * title bar.
-	 * <p>
-	 * E.g., On motif, this can be used to set the name used for
-	 * resource lookup.
-	 * </p>
-	 */
-	public static final String APP_NAME = "appName"; //$NON-NLS-1$
-
-	/**
-	 * The text to show in an "about" dialog for this product.
-	 * Products designed to run "headless" typically would not
-	 * have such text.
-	 */
-	public static final String ABOUT_TEXT = "aboutText"; //$NON-NLS-1$
-
-	/**
-	 * An image which can be shown in an "about" dialog for this
-	 * product. Products designed to run "headless" typically would not 
-	 * have such an image.
-	 * <p>
-     * A full-sized product image (no larger than 500x330 pixels) is
-     * shown without the "aboutText" blurb.  A half-sized product image
-     * (no larger than 250x330 pixels) is shown with the "aboutText"
-     * blurb beside it.
-     */
-	public static final String ABOUT_IMAGE = "aboutImage"; //$NON-NLS-1$
-
-	/**
-	 * An image to be used as the window icon for this product (16x16).  
-	 * Products designed to run "headless" typically would not have such an image.
-	 * <p>
-	 * If the <code>WINDOW_IMAGES</code> property is given, then it supercedes
-	 * this one.
-	 * </p>
-	 */
-	public static final String WINDOW_IMAGE = "windowImage"; //$NON-NLS-1$
-
-	/**
-	 * An array of one or more images to be used for this product.  The
-	 * expectation is that the array will contain the same image rendered
-	 * at different sizes (16x16 and 32x32).  
-	 * Products designed to run "headless" typically would not have such images.
-	 * <p>
-	 * If this property is given, then it supercedes <code>WINDOW_IMAGE</code>.
-	 * </p>
-	 */
-	public static final String WINDOW_IMAGES = "windowImages"; //$NON-NLS-1$
-	/**
-	 * A URL for the products's welcome page (special XML-based format)
-	 * ($nl$/ prefix to permit locale-specific translations of entire file).
-	 * Products designed to run "headless" typically would not have such a page.
-	 */
-	public static final String WELCOME_PAGE = "welcomePage";  //$NON-NLS-1$
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/branding/IniFileReader.java b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/branding/IniFileReader.java
deleted file mode 100644
index 72e2235..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/branding/IniFileReader.java
+++ /dev/null
@@ -1,378 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.configurator.branding;
-
-import java.io.*;
-import java.net.*;
-import java.text.*;
-import java.util.*;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.update.internal.configurator.*;
-import org.osgi.framework.*;
-
-/**
- * Reads the information found in an "INI" file. This file must be in a
- * standard Java properties format. A properties file may also be provided
- * to NL values in the INI file - values must start with the % prefix. A
- * mapping file may also be provided that contains "fill-ins" for the
- * properties file - format being "n = some text", where n is a number.
- */
-public class IniFileReader {
-	private static final String PID = "org.eclipse.update.configurator"; //$NON-NLS-1$
-	private static final Status OK_STATUS = new Status(IStatus.OK, PID, 0, "", null); //$NON-NLS-1$
-	private static final String KEY_PREFIX = "%"; //$NON-NLS-1$
-	private static final String KEY_DOUBLE_PREFIX = "%%"; //$NON-NLS-1$
-	private static final String NLS_TAG = "$nl$"; //$NON-NLS-1$
-
-	private String featureId;
-	private String pluginId;
-	private String iniFilename;
-	private String propertiesFilename;
-	private String mappingsFilename;
-	private Properties ini = null;
-	private PropertyResourceBundle properties = null;
-	private String[] mappings = null;
-	private Bundle bundle;
-
-	/**
-	 * Creates an INI file reader that can parse the contents into key,value pairs.
-	 * 
-	 * @param featureId the unique identifier of the feature, must not be <code>null</code>
-	 * @param pluginId the unique identifier of the feature plug-in, must not be <code>null</code>
-	 * @param iniFilename the INI file name, must not be <code>null</code>
-	 * @param propertiesFilename the properties filename, can be <code>null</code> if not required
-	 * @param mappingsFilename the mappings filename, can be <code>null</code> if not required
-	 */
-	public IniFileReader(String featureId, String pluginId, String iniFilename, String propertiesFilename, String mappingsFilename) {
-		super();
-		
-		if (featureId == null || pluginId == null || iniFilename == null) {
-			throw new IllegalArgumentException();
-		}
-			
-		this.featureId = featureId;
-		this.pluginId = pluginId;
-		this.iniFilename = iniFilename;
-		this.propertiesFilename = propertiesFilename;
-		this.mappingsFilename = mappingsFilename;
-	}
-
-	/**
-	 * Read the contents of the INI, properties, and mappings files.
-	 * Does nothing if the content has already been read and parsed.
-	 * 
-	 * @return an <code>IStatus</code> indicating the success or failure
-	 * 	of reading and parsing the INI file content
-	 */
-	public IStatus load() {
-		if (ini != null)
-			return OK_STATUS;
-			
-		// attempt to locate the corresponding plugin
-		bundle = Platform.getBundle(pluginId);
-		if (bundle == null || bundle.getState() == Bundle.UNINSTALLED || bundle.getState() == Bundle.INSTALLED) {
-			bundle = null; // make it null for other test down the road
-			String message = Messages.getString("IniFileReader.MissingDesc", featureId);  //$NON-NLS-1$
-			return new Status(IStatus.ERROR, PID, 0, message, null);
-		}
-
-		// Determine the ini file location
-		URL iniURL = null;
-		IOException ioe = null;
-		try {
-			iniURL = Platform.find(bundle, new Path(NLS_TAG).append(iniFilename));
-			if (iniURL != null)
-				iniURL = Platform.resolve(iniURL);
-		} catch (IOException e) {
-			ioe = e;
-		}
-		if (iniURL == null) {
-			String message = Messages.getString("IniFileReader.OpenINIError", iniFilename);  //$NON-NLS-1$
-			return new Status(IStatus.ERROR, PID, 0, message, ioe);
-		}
-		
-		// Determine the properties file location
-		URL propertiesURL = null;
-		if (propertiesFilename != null & propertiesFilename.length() > 0) {
-			try {
-				propertiesURL = Platform.find(bundle, new Path(NLS_TAG).append(propertiesFilename));
-				if (propertiesURL != null)
-					propertiesURL = Platform.resolve(propertiesURL);
-			} catch (IOException e) {
-				String message = Messages.getString("IniFileReader.OpenPropError", propertiesFilename); //$NON-NLS-1$
-				return new Status(IStatus.ERROR, PID, 0, message, e);
-			}
-		}
-
-		// Determine the mappings file location
-		URL mappingsURL = null;
-		if (mappingsFilename != null && mappingsFilename.length() > 0) {
-			try {
-				mappingsURL = Platform.find(bundle, new Path(NLS_TAG).append(mappingsFilename));
-				if (mappingsURL != null)
-					mappingsURL = Platform.resolve(mappingsURL);
-			} catch (IOException e) {
-				String message = Messages.getString("IniFileReader.OpenMapError", mappingsFilename); //$NON-NLS-1$
-				return new Status(IStatus.ERROR, PID, 0, message, e);
-			}
-		}
-
-		// OK to pass null properties and/or mapping file
-		return load(iniURL, propertiesURL, mappingsURL);
-	}
-		
-	/**
-	 * Returns the string value for the given key, or <code>null</code>.
-	 * The string value is NLS if requested.
-	 * 
-	 * @return the string value for the given key, or <code>null</code>
-	 */
-	public String getString(String key, boolean doNls, Hashtable runtimeMappings) {
-		if (ini == null)
-			return null;
-		String value = ini.getProperty(key);
-		if (value != null && doNls)
-			return getResourceString(value, runtimeMappings);
-		return value;
-	}
-
-
-	/**
-	 * Returns a URL for the given key, or <code>null</code>.
-	 * 
-	 * @return a URL for the given key, or <code>null</code>
-	 */
-	public URL getURL(String key) {
-		if (ini == null)
-			return null;
-
-		URL url = null;
-		String fileName = ini.getProperty(key);
-		if (fileName != null) {
-			if (bundle == null)
-				return null;
-			url = Platform.find(bundle, new Path(fileName));
-		}
-		return url;
-	}
-	
-	/**
-	 * Returns a array of URL for the given key, or <code>null</code>. The
-	 * property value should be a comma separated list of urls, tokens for
-	 * which bundle cannot build an url will have a null entry.
-	 * 
-	 * @param key name of the property containing the requested urls
-	 * @return a URL for the given key, or <code>null</code>
-	 * @since 3.0
-	 */
-	public URL[] getURLs(String key) {
-		if (ini == null || bundle == null)
-			return null;
-
-		String value = ini.getProperty(key);
-		if (value == null)
-			return null;
-
-		StringTokenizer tokens = new StringTokenizer(value, ","); //$NON-NLS-1$
-		ArrayList array = new ArrayList(10);
-		while (tokens.hasMoreTokens()) {
-			String str = tokens.nextToken().trim();
-			array.add(Platform.find(bundle, new Path(str)));
-		}
-
-		URL[] urls = new URL[array.size()];
-		array.toArray(urls);
-		return urls;
-	}
-
-	/**
-	 * Returns the feature plugin label, or <code>null</code>.
-	 * 
-	 * @return the feature plugin lable, or <code>null</code> if none.
-	 */
-	public String getFeaturePluginLabel() {
-		if (bundle == null)
-			return null;
-		else {
-			return (String)bundle.getHeaders().get(Constants.BUNDLE_NAME);
-		}
-	}
-	
-	/**
-	 * Returns the provider name for this feature, or <code>null</code>.
-	 * 
-	 * @return the provider name for this feature, or <code>null</code>
-	 */
-	public String getProviderName() {
-		if (bundle == null)
-			return null;
-		else {
-			return (String)bundle.getHeaders().get(Constants.BUNDLE_VENDOR);
-		}
-	}
-	
-	/*
-	 * Returns a resource string corresponding to the given argument 
-	 * value and bundle.
-	 * If the argument value specifies a resource key, the string
-	 * is looked up in the given resource bundle. If the argument does not
-	 * specify a valid key, the argument itself is returned as the
-	 * resource string. The key lookup is performed against the
-	 * specified resource bundle. If a resource string 
-	 * corresponding to the key is not found in the resource bundle
-	 * the key value, or any default text following the key in the
-	 * argument value is returned as the resource string.
-	 * A key is identified as a string begining with the "%" character.
-	 * Note that the "%" character is stripped off prior to lookup
-	 * in the resource bundle.
-	 * <p>
-	 * For example, assume resource bundle plugin.properties contains
-	 * name = Project Name
-	 * <pre>
-	 *     <li>getResourceString("Hello World") returns "Hello World"</li>
-	 *     <li>getResourceString("%name") returns "Project Name"</li>
-	 *     <li>getResourceString("%name Hello World") returns "Project Name"</li>
-	 *     <li>getResourceString("%abcd Hello World") returns "Hello World"</li>
-	 *     <li>getResourceString("%abcd") returns "%abcd"</li>
-	 *     <li>getResourceString("%%name") returns "%name"</li>
-	 *     <li>getResourceString(<code>null</code>) returns <code>null</code></li>
-	 * </pre>
-	 * </p>
-	 *
-	 * @param value the value or <code>null</code>
-	 * @param runtimeMappings runtime mappings or <code>null</code>
-	 * @return the resource string
-	 */
-	 public String getResourceString(String value, Hashtable runtimeMappings) {
-		
-		if (value == null)
-			return null;
-		String s = value.trim();
-
-		if (!s.startsWith(KEY_PREFIX))
-			return s;
-
-		if (s.startsWith(KEY_DOUBLE_PREFIX))
-			return s.substring(1);
-
-		int ix = s.indexOf(" "); //$NON-NLS-1$
-		String key = ix == -1 ? s : s.substring(0, ix);
-		String dflt = ix == -1 ? s : s.substring(ix + 1);
-
-		if (properties == null)
-			return dflt;
-
-		String result = null;
-		try {
-			result = properties.getString(key.substring(1));
-		} catch (MissingResourceException e) {
-			return dflt;
-		}
-		if (runtimeMappings != null) {
-			for (Enumeration e = runtimeMappings.keys(); e.hasMoreElements();) {
-				String keyValue = (String) e.nextElement();
-				int i = result.indexOf(keyValue);
-				if (i != -1) {
-					String s1 = result.substring(0,i);
-					String s2 = (String) runtimeMappings.get(keyValue);
-					String s3 = result.substring(i+keyValue.length());
-					result = s1 + s2 + s3;
-				}
-			}
-		}
-	
-		if (result.indexOf('{') != -1) {
-			// We test for the curly braces since due to NL issues we do not
-			// want to use MessageFormat unless we have to.
-			result = MessageFormat.format(result, mappings);
-		}
-		
-		return result;	
-	}
-
-	/*
-	 * Read the contents of the ini, properties, and mappings files.
-	 */
-	private IStatus load(URL iniURL, URL propertiesURL, URL mappingsURL) {
-
-		InputStream is = null;
-		try {
-			is = iniURL.openStream();
-			ini = new Properties();
-			ini.load(is);
-		} catch (IOException e) {
-			ini = null;
-			String message = Messages.getString("IniFileReader.ReadIniError", iniURL.toExternalForm()); //$NON-NLS-1$
-			return new Status(IStatus.ERROR, PID, 0, message, e);
-		} finally {
-			try {
-				if (is != null)
-					is.close();
-			} catch (IOException e) {
-			}
-		}
-
-		if (propertiesURL != null) {
-			is = null;
-			try {
-				is = propertiesURL.openStream();
-				properties = new PropertyResourceBundle(is);
-			} catch (IOException e) {
-				properties = null;
-				String message = Messages.getString("IniFileReader.ReadPropError", propertiesURL.toExternalForm()); //$NON-NLS-1$
-				return new Status(IStatus.ERROR, PID, 0, message, e);
-			} finally {
-				try {
-					if (is != null)
-						is.close();
-				} catch (IOException e) {
-				}
-			}
-		}
-
-		PropertyResourceBundle bundle = null;
-		if (mappingsURL != null) {
-			is = null;
-			try {
-				is = mappingsURL.openStream();
-				bundle = new PropertyResourceBundle(is);
-			} catch (IOException e) {
-				bundle = null;
-				String message = Messages.getString("IniFileReader.ReadMapError", mappingsURL.toExternalForm()); //$NON-NLS-1$
-				return new Status(IStatus.ERROR, PID, 0, message, e);
-			} finally {
-				try {
-					if (is != null)
-						is.close();
-				} catch (IOException e) {
-				}
-			}
-		}
-
-		ArrayList mappingsList = new ArrayList();
-		if (bundle != null) {
-			boolean found = true;
-			int i = 0;
-			while (found) {
-				try {
-					mappingsList.add(bundle.getString(Integer.toString(i)));
-				} catch (MissingResourceException e) {
-					found = false;
-				}
-				i++;
-			}
-		}
-		mappings = (String[])mappingsList.toArray(new String[mappingsList.size()]);
-		
-		return OK_STATUS;
-	}
-}
diff --git a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/messages.properties b/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/messages.properties
deleted file mode 100644
index 639b480..0000000
--- a/update/org.eclipse.update.configurator/src/org/eclipse/update/internal/configurator/messages.properties
+++ /dev/null
@@ -1,93 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-### Boot plugin message catalog
-
-ok = OK
-
-### URL
-url.badVariant=Unsupported \"platform:\" protocol variation {0}
-url.invalidURL=Invalid "platform:" URL {0}
-url.createConnection=Unable to create connection {0}
-url.noaccess=Unable to access URL as local {0}.
-
-### Platform Configuration
-cfig.inUse=\nConfiguration file \"{0}\" is in use by another instance of the platform, \n\
-	or there was a failure in deleting the old lock file.  If no other platform instances are running, \n\
-	delete file \"{1}\" and try starting the platform again.
-cfig.failCreateLock=Failed to create lock for configuration file \"{0}\"
-cfig.badUrlArg=Bad -configuration argument \"{0}\"
-cfig.unableToLoad.incomplete=Unable to load {0}
-cfig.unableToLoad.noURL=Configuration file location not specified
-cfig.unableToSave.noURL=Configuration file save location not specified
-cfig.unableToSave=Unable to save configuration file \"{0}\"
-cfig.badVersion=Unsupported configuration version \"{0}\"
-cfg.unableToCreateConfig.ini = Unable to create config.ini
-
-platform.running=The Platform is already running.
-platform.mustNotBeRunning=The Platform must not be running.
-platform.notRunning=The Platform is not running.
-
-ignore.plugin=Ignoring invalid plug-in location: {0}.
-application.notFound=Application not found: {0}.
-error.fatal=Fatal Error: Unable to determine platform installation URL {0}.
-error.boot=Fatal Error: Unable to locate boot.xml file for executing org.eclipse.core.boot.
-error.runtime=Fatal Error: Unable to locate matching org.eclipse.core.runtime plug-in.
-error.xerces=Fatal Error: Unable to locate matching org.apache.xerces plug-in.
-error.badNL=Bad value: \"{0}\" for NL. Using system default.
-
-InstalledSiteParser.DirectoryDoesNotExist=The directory \"{0}\" does not exist on the file system.
-InstalledSiteParser.UnableToCreateURL= Internal Error. Unable to create URL from \"{0}\".
-InstalledSiteParser.FileDoesNotExist= The file \"{0}\" does not exist.
-InstalledSiteParser.UnableToCreateURLForFile= Unable to create URL from \"{0}\".
-InstalledSiteParser.ErrorParsingFile= Unable to parse file \"{0}\".
-InstalledSiteParser.ErrorAccessing= Unable to access file \"{0}\".
-InstalledSiteParser.date = Invalid date attribute {0}
-BundleManifest.noVersion = {0} attribute not found in manifest for bundle \"{1}\".  Bundle will be ignored.
-
-FeatureParser.IdOrVersionInvalid= Error parsing feature stream. The unique identifier or the version is null or empty: unique identifier=\"{0}\" version=\"{1}\".
-
-BundleGroupProvider=Update Manager Configurator
-ProductProvider=Update Manager Configurator
-
-AboutInfo.notSpecified=Unspecified
-ConfigurationActivator.initialize=Cannot initialize the Update Configurator
-ConfigurationActivator.createConfig=Cannot create configuration in {0}
-ConfigurationActivator.uninstallBundle=Could not uninstall unused bundle {0} 
-ConfigurationParser.cannotLoadSharedInstall=Could not load from shared install
-ConfigurationActivator.installBundle=Could not install bundle {0}
-PluginEntry.versionError=Unable to create versioned identifier: {0} {1}
-
-IniFileReader.MissingDesc = Cannot find plugin for feature {0}
-IniFileReader.OpenINIError = Cannot open branding file {0}
-IniFileReader.OpenPropError = Cannot open branding properties file {0}
-IniFileReader.OpenMapError = Cannot open mapping file {0}
-IniFileReader.ReadIniError = Error reading branding file {0}
-IniFileReader.ReadPropError = Error reading branding properties file {0}
-IniFileReader.ReadMapError = Error reading mapping files {0}
-
-SiteEntry.computePluginStamp = Cannot compute plugins change stamp for site {0} because it does not support plugin detection.
-SiteEntry.cannotFindFeatureInDir=Unable to find feature.xml in directory: {0}
-SiteEntry.duplicateFeature=Duplicate feature found on site {0} : {1}
-SiteEntry.pluginsDir = {0} is not a valid plugins directory.
-PlatformConfiguration.expectingPlatformXMLorDirectory=Either specify the configuration directory or a file named platform.xml 
-PlatformConfiguration.cannotBackupConfig=Cannot backup current configuration
-PlatformConfiguration.cannotCloseStream=Could not close output stream for 
-PlatformConfiguration.cannotCloseTempFile=Could not close output stream for temp file 
-PlatformConfiguration.cannotRenameTempFile=Could not rename configuration temp file
-PlatformConfiguration.cannotLoadConfig=Cannot load configuration from 
-PlatformConfiguration.cannotLoadDefaultSite=Cannot load default site 
-PlatformConfiguration.cannotFindConfigFile=Platform configuration file cannot be found
-PlatformConfiguration.cannotSaveNonExistingConfig=Configuration cannot be saved because it does not exist
-HttpResponse.rangeExpected=Server returned full content instead of a range.
-HttpResponse.wrongRange=Server returned wrong range
-
-PluginParser.plugin_no_id = Plugin does not have a valid identifier: {0}
-PluginParser.pluing_no_version = Plugin does not have a valid version: {0}
\ 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 4848249..0000000
--- a/update/org.eclipse.update.core.linux/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<classpath>

-	<classpathentry kind="src" path="src"/>

-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>

-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>

-	<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 178e2b7..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.eclipse.core.boot</project>

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

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

-		<project>org.eclipse.update.configurator</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 68d414f..0000000
--- a/update/org.eclipse.update.core.linux/build.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-bin.includes = fragment.xml,\
-               os/,\
-               fragment.properties,\
-               about.html
-src.includes = src/,\
-               fragment.xml,\
-               about.html
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 6740684..0000000
--- a/update/org.eclipse.update.core.linux/fragment.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<fragment
-   id="org.eclipse.update.core.linux"
-   name="%fragmentNameLinux"
-   version="3.0.0"
-   provider-name="%providerName"
-   plugin-id="org.eclipse.update.core"
-   plugin-version="3.0.0"
-   match="compatible">
-
-   <runtime>
-   </runtime>
-
-
-</fragment>
diff --git a/update/org.eclipse.update.core.linux/os/linux/x86/libupdate.so b/update/org.eclipse.update.core.linux/os/linux/x86/libupdate.so
deleted file mode 100644
index d70a9e9..0000000
--- a/update/org.eclipse.update.core.linux/os/linux/x86/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 cf44ead..0000000
--- a/update/org.eclipse.update.core.linux/src/build.xml
+++ /dev/null
@@ -1,70 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<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/x86/"/>
-  <property name="obj-path" value="${eclipse-home}/org.eclipse.update.core.linux/src/"/>
-  <property name="src-path" value="${eclipse-home}/org.eclipse.update.core.linux/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="*.c"/>
-      <mapper type="glob" from="*.c" 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.c b/update/org.eclipse.update.core.linux/src/update.c
deleted file mode 100644
index a4508d7..0000000
--- a/update/org.eclipse.update.core.linux/src/update.c
+++ /dev/null
@@ -1,164 +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 v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/cpl-v10.html

- * 

- * Contributors:

- *     IBM Corporation - initial API and implementation

- *******************************************************************************/

-

-/* bug 82520 : need to include stdlib.h */

-# include <stdlib.h>

-# 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;

-

-	cls = (*jnienv) -> GetObjectClass(jnienv, file);

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

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

-	lpDirectoryName = (*jnienv) -> GetStringUTFChars(jnienv, (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(jnienv, file);

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

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

-	lpDirectoryName = (*jnienv) -> GetStringUTFChars(jnienv, (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(jnienv, file);

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

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

-	lpDirectoryName = (*jnienv) -> GetStringUTFChars(jnienv, (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(jnienv, "java/lang/String");

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

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

-

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

-	returnArray = NULL;

-

-	int i;

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

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

-

-		str = (*jnienv) -> NewStringUTF(jnienv, driveName);

-		(*jnienv) -> SetObjectArrayElement(jnienv, 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 fef0347..0000000
--- a/update/org.eclipse.update.core.linux/src/update.h
+++ /dev/null
@@ -1,76 +0,0 @@
-/* DO NOT EDIT THIS FILE - it is machine generated */

-

-/*******************************************************************************

- * 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 v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/cpl-v10.html

- * 

- * Contributors:

- *     IBM Corporation - initial API and implementation

- *******************************************************************************/

- 

-#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.core.win32/.project b/update/org.eclipse.update.core.win32/.project
deleted file mode 100644
index 8c9b28f..0000000
--- a/update/org.eclipse.update.core.win32/.project
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<projectDescription>

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

-	<comment></comment>

-	<projects>

-	</projects>

-	<buildSpec>

-		<buildCommand>

-			<name>org.eclipse.pde.ManifestBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.SchemaBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-	</buildSpec>

-	<natures>

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

-	</natures>

-</projectDescription>

diff --git a/update/org.eclipse.update.core.win32/about.html b/update/org.eclipse.update.core.win32/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/update/org.eclipse.update.core.win32/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.win32/build.properties b/update/org.eclipse.update.core.win32/build.properties
deleted file mode 100644
index 99cd557..0000000
--- a/update/org.eclipse.update.core.win32/build.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-bin.includes = fragment.xml,\
-               os/,\
-               fragment.properties,\
-               about.html
-src.includes = fragment.xml,\
-               about.html,\
-               src/
diff --git a/update/org.eclipse.update.core.win32/fragment.xml b/update/org.eclipse.update.core.win32/fragment.xml
deleted file mode 100644
index 81d8e7b..0000000
--- a/update/org.eclipse.update.core.win32/fragment.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<fragment
-   id="org.eclipse.update.core.win32"
-   name="%fragmentNameWin"
-   version="3.0.0"
-   provider-name="%providerName"
-   plugin-id="org.eclipse.update.core"
-   plugin-version="3.0.0"
-   match="compatible">
-
-   <runtime>
-   </runtime>
-
-
-</fragment>
diff --git a/update/org.eclipse.update.core.win32/os/win32/x86/update.dll b/update/org.eclipse.update.core.win32/os/win32/x86/update.dll
deleted file mode 100644
index 428e60e..0000000
--- a/update/org.eclipse.update.core.win32/os/win32/x86/update.dll
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.core.win32/src/build.xml b/update/org.eclipse.update.core.win32/src/build.xml
deleted file mode 100644
index 92286b7..0000000
--- a/update/org.eclipse.update.core.win32/src/build.xml
+++ /dev/null
@@ -1,74 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project name="buildlibrary" default="run" basedir="."> 
-  
-  <!-- The properties ${eclipse-home} ${jdk-path} should be passed into this script -->
-  <!-- The Path should point to the bin directory of BCC55 -->
-  <!-- http://www.borland.com/products/downloads/download_cbuilder.html -->
-  
-  <!-- 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.win32/os/win32/x86/"/>
-  <property name="obj-path" value="${eclipse-home}/org.eclipse.update.core.win32/src"/>
-  <property name="src-path" value="${eclipse-home}/org.eclipse.update.core.win32/src/"/>  
-  
-  <!-- sets the properties -->
-  <property name="library-name" value="update"/>  
-  <property name="library-platform" value="dll"/>    
-  <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}.obj"/>
-      <fileset dir="${obj-path}" includes="${library-name}.tds"/>            
-    </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}.obj"/>
-      <fileset dir="${obj-path}" includes="${library-name}.tds"/>            
-    </delete>
-  </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,build,cleanup">
-  </target>
-  
-  <!-- This target build the dll -->
-  <target name="build">
-    <echo message="Building ${library-file}"/>
-
-    <property name="header-path" value="${jdk-path}/include"/>
-    <property name="header-windows-path" value="${header-path}/win32" />
-
-	<echo message="bcc32 -I${src-path} -I${header-windows-path} -WD"/>
-
-    <apply executable="bcc32" dest="${eclipse-home}/" parallel="false">
-      <arg value="-I${src-path}"/>
-      <arg value="-I${header-path}"/>      
-      <arg value="-I${header-windows-path}"/> 
-      <!-- arg value="-DUNICODE" --> 
-	  <arg value="-w-8057"/>           
-      <arg value="-WD"/>
-	  <srcfile/>
-      <fileset dir="${src-path}" includes="*.cpp"/>
-      <mapper type="glob" from="*.cpp" to="*.obj"/>
-    </apply>
-    
-	<move file="${library-file}" todir="${destination}"/>
-  </target>
-  
-  
-</project>
\ No newline at end of file
diff --git a/update/org.eclipse.update.core.win32/src/update.cpp b/update/org.eclipse.update.core.win32/src/update.cpp
deleted file mode 100644
index cb27fd5..0000000
--- a/update/org.eclipse.update.core.win32/src/update.cpp
+++ /dev/null
@@ -1,487 +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 v1.0

- * which accompanies this distribution, and is available at

- * http://www.eclipse.org/legal/cpl-v10.html

- * 

- * Contributors:

- *     IBM Corporation - initial API and implementation

- *******************************************************************************/

-

-# include <update.h>

-# include <windows.h>

-# include <winioctl.h> // IOCTL codes: MediaType

-

-// Windows Version

-int WIN98 = 0;

-int WINNT = 1;

-int WINME = 2;

-int WIN2000 = 3;

-int WINXP = 4;

-

-// set to 1 for DEBUG

-int DEBUG = 0;

-

-// set to 0 to run on Windows 95 *Unsupported*

-int NOWIN95 = 1;

-

-

-// GLOBAL METHODS

-// ---------------

-

-/*

- *

- */

-jstring WindowsTojstring( JNIEnv* jnienv, char* buf )

-{

-  jstring rtn = 0;

-  wchar_t* buffer = 0;

-  int bufferLen = strlen(buf);  

-  if( bufferLen == 0 ){

-    rtn = jnienv ->NewStringUTF(buf);

-	if (DEBUG)

-		printf("WindowsToJString Buffer is empty\n");    

-  } else {

-    int length = MultiByteToWideChar( CP_ACP, 0, (LPCSTR)buf, bufferLen, NULL, 0 );

-    buffer = (wchar_t*)malloc( length*2 + 1 );

-    if(int err=MultiByteToWideChar( CP_ACP, 0, (LPCSTR)buf, bufferLen, (LPWSTR)buffer, length ) >0 ){

-      rtn = jnienv->NewString((jchar*)buffer, length );

-    } else {

-		if (DEBUG)

-			printf("MultiByteToWideChar %i\n",err);    

-    }

-  }

-  if( buffer )

-   free( buffer );

-  return rtn;

-}

-

-

-

-/*

- * calls GetVolumeInformation to retrive the label of the volume

- * Returns NULL if an error occurs

- * @param driveLetter path to the drive "c:\\"

- * @prama jnienv JNIEnvironment

- */

-jstring getLabel(TCHAR driveLetter[],JNIEnv * jnienv){

-

-	jstring result = NULL;

-	TCHAR buf[128];	

-	

-	// always return null as UNICODE is not implemented

-	// how can we get the label of a volume as UNICODE char ?

-	return result;

-	

-	int err = GetVolumeInformation(

-		driveLetter,

-		buf,

-		sizeof(buf) - 1,

-		NULL,

-		NULL,

-		NULL,

-		NULL,

-		0);

-	if (err){

-		result = WindowsTojstring(jnienv, buf);

-	} else {

-		if (DEBUG)

-			printf("Error GetVolumeInformation %i\n",err);				

- 	}

-	return result;

-}

-

-/*

- * returns the Version of Windows

- * int 0 WIN98;

- * int 1 WINNT;

- * int 2 WINME;

- * int 3 WIN2000;

- * int 4 WINXP;

- * returns -1 otherwise

- */

-int getWindowsVersion(){

-	OSVERSIONINFOEX osvi;

-	int UNKNOWN = -1;

-	

-	ZeroMemory(&osvi, sizeof(OSVERSIONINFOEX));

-	osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX);

-	

-	if(!(GetVersionEx((OSVERSIONINFO *)&osvi))){

-		if (DEBUG)

-			printf("UNKNOWN VERSION: Cannot execute GetVersionEx\n");

-		// if OSVERSIONEX doesn't work, try OSVERSIONINFO

-		osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);			 	

-		if(!(GetVersionEx((OSVERSIONINFO *)&osvi))){

-		if (DEBUG)

-			printf("UNKNOWN VERSION: Cannot execute GetVersionEx\n");

-			return UNKNOWN;

-		}

-	}

-	

-	switch(osvi.dwPlatformId){

-		case VER_PLATFORM_WIN32_NT:

-			if (DEBUG)

-				printf("VERSION NT: Maj %i Min %i\n",osvi.dwMajorVersion,osvi.dwMinorVersion);				 	

-			if(osvi.dwMajorVersion<=4)

-				return WINNT;

-			if(osvi.dwMajorVersion==5){

-				if (osvi.dwMinorVersion==0)

-					return WIN2000;

-				if (osvi.dwMinorVersion==1)

-					return WINXP;

-			} else {

-				return UNKNOWN;

-			};

-			break;

-		case VER_PLATFORM_WIN32_WINDOWS:

-			if (DEBUG)

-				printf("VERSION Non NT: Maj %i Min %i\n",osvi.dwMajorVersion,osvi.dwMinorVersion);				 	

-			if(osvi.dwMajorVersion==4){

-				if (osvi.dwMinorVersion==10)

-					return WIN98;

-				if (osvi.dwMinorVersion==90)

-					return WINME;

-			} else {

-				return UNKNOWN;

-			}

-			break;

-		default:

-			if (DEBUG)

-				printf("VERSION UNKNOWN: Maj %i Min %i\n",osvi.dwMajorVersion,osvi.dwMinorVersion);				 	

-			return UNKNOWN;

-	}

-	return UNKNOWN;

-} 

-

-/*

- * Returns the type of Removable Drive 

- * Returns 

- * org_eclipse_update_configuration_LocalSystemInfo_VOLUME_FLOPPY_3

- * org_eclipse_update_configuration_LocalSystemInfo_VOLUME_FLOPPY_5

- * org_eclipse_update_configuration_LocalSystemInfo_VOLUME_REMOVABLE

- */

-jlong getFloppy(TCHAR driveLetter[]){

-

-	TCHAR floppyPath[8];

-	HANDLE handle;

-	DISK_GEOMETRY geometry[20];

-	DWORD dw;

-	jlong UNKNOWN = org_eclipse_update_configuration_LocalSystemInfo_VOLUME_REMOVABLE;

-

-	sprintf(floppyPath, "\\\\.\\%c:", driveLetter[0]);

-	if (DEBUG)

-		printf("Path %s\n",floppyPath);

-	// BUG 25719

-    SetErrorMode( SEM_FAILCRITICALERRORS ); 		

-	handle=CreateFile(floppyPath,0,FILE_SHARE_READ,NULL,OPEN_ALWAYS,0,NULL);

-	if (handle==INVALID_HANDLE_VALUE){

-		if (DEBUG)

-			printf("Invalid Handle %s\n",floppyPath);

-		return UNKNOWN;

-	} else {

-		if(DeviceIoControl(handle,

-			IOCTL_DISK_GET_MEDIA_TYPES,0,0,

-			geometry,sizeof(geometry),&dw,0) 

-			&& dw>0) {

-			switch(geometry[0].MediaType){

-			 case F5_160_512:

-			 case F5_180_512:

-			 case F5_320_512:

-			 case F5_320_1024:

-			 case F5_360_512:

-			 case F5_1Pt2_512:

-				if (DEBUG)

-					printf("Found 5 1/4 Drive\n");				 	

-			 	return org_eclipse_update_configuration_LocalSystemInfo_VOLUME_FLOPPY_5;

-			 case F3_720_512:			 				 				 				 				 

-			 case F3_1Pt44_512:

-			 case F3_2Pt88_512:

-			 case F3_20Pt8_512:				 				 				 

-				if (DEBUG)

-					printf("Found 3 1/2 Drive\n");				 	

-			 	return org_eclipse_update_configuration_LocalSystemInfo_VOLUME_FLOPPY_3;

-			 default:

-			 	return UNKNOWN;

-			}

-		}

-	}

-	return UNKNOWN;	

-}

-

-/*

- * Returns the UNC name of a remote drive

- * (\\Machine\path\path1\path2$)

- * returns NULL if an error occurs

- */

- jstring getRemoteNetworkName(TCHAR driveLetter[],JNIEnv * jnienv){

- 	

- 	unsigned long size =256;

- 	TCHAR buf[256];	

- 	TCHAR drivePath[2];

- 	DWORD err;

- 	jstring result = NULL;

- 	

- 	// always return NULL as UNICODE not implemented

-	// how can we get the label of a remote network name as UNICODE char ? 	

- 	return result;

- 	

-	sprintf(drivePath, "%c:", driveLetter[0]); 	

- 	err = WNetGetConnection(drivePath,buf,&size);

- 	

- 	if (err==WN_SUCCESS){

-		result = WindowsTojstring(jnienv,buf);

-	} else {

-		if (DEBUG)

-			printf("Error WNEtGetConnection %i",err);				

- 	}

-	return result;

- }

-

-

-// JNI METHODS

-// ---------------

-

-/*

- * 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 TCHAR * lpDirectoryName;

-

-	// Windows Parameters

-	__int64 i64FreeBytesAvailableToCaller;

-	__int64 i64TotalNumberOfBytes;

-	__int64 i64TotalNumberOfFreeBytes;

-

-	// 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);

-	if (DEBUG)

-		printf("Directory: [%s]\n",lpDirectoryName);

-

-	if (int win = (int)getWindowsVersion()<0 && NOWIN95){

-		// windows 95 or other

-		if (DEBUG)

-			printf("Unsupported Windows: %i\n",win);		

-		return result;

-	}

-

-	int err = GetDiskFreeSpaceEx(

-				lpDirectoryName,

-				(PULARGE_INTEGER) & i64FreeBytesAvailableToCaller,

-				(PULARGE_INTEGER) & i64TotalNumberOfBytes,

-				(PULARGE_INTEGER) & i64TotalNumberOfFreeBytes);

-			

-	if (err) {

-		result = (jlong) i64FreeBytesAvailableToCaller;

-	}

-

-	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 TCHAR * 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);

-	if (DEBUG)

-		printf("Directory: [%s]\n",lpDirectoryName);

-

-	//

-	jstring result = NULL;

-	int floppy;

-	

-	if (int win = (int)getWindowsVersion()<0 && NOWIN95){

-		// windows 95 or other

-		if (DEBUG)

-			printf("Unsupported Windows: %i\n",win);		

-		return result;

-	}

-		

-	// Make sure we have a String of the Form: <letter>:

-	if (':' == lpDirectoryName[1]) {

-		TCHAR driveLetter[4]; // i.e. -> C:\\

-		memcpy(driveLetter, lpDirectoryName, 2);

-		strcpy(driveLetter + 2, "\\");

-		switch (GetDriveType(driveLetter)) {

-			case DRIVE_REMOTE :

-				// check name of machine and path of remote

-				if (DEBUG)

-					printf("Remote Drive");

-				result = getRemoteNetworkName(driveLetter,jnienv);				

-				break;

-			default :

-				if (DEBUG)

-					printf("Another Drive at %s", driveLetter);

-				result = getLabel(driveLetter,jnienv);

-				break;

-		} 

-	} 

-

-	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 TCHAR * 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);

-	if (DEBUG)

-		printf("Directory: [%s]\n",lpDirectoryName);

-

-	int result = org_eclipse_update_configuration_LocalSystemInfo_VOLUME_UNKNOWN;

-	if (int win = (int)getWindowsVersion()<0 && NOWIN95){

-		// windows 95 or other

-		if (DEBUG)

-			printf("Unsupported Windows: %i\n",win);		

-		return result;

-	}

-	

-	// Make sure we have a String of the Form: <letter>:

-	if (':' == lpDirectoryName[1]) {

-		TCHAR driveLetter[4]; //C:\\

-		memcpy(driveLetter, lpDirectoryName, 2);

-		strcpy(driveLetter + 2, "\\");

-

-		switch (GetDriveType(driveLetter)) {

-			case DRIVE_REMOVABLE :

-				// check if floppy 3.5, floppy 5.25	

-				// or other removable device (USB,PCMCIA ...)

-				if (DEBUG)

-					printf("Removable Device");

-				result = getFloppy(driveLetter);					

-				break;

-			case DRIVE_CDROM :

-				result = org_eclipse_update_configuration_LocalSystemInfo_VOLUME_CDROM;

-				break;

-			case DRIVE_FIXED :

-				result = org_eclipse_update_configuration_LocalSystemInfo_VOLUME_FIXED;

-				break;

-			case DRIVE_REMOTE :

-				result = org_eclipse_update_configuration_LocalSystemInfo_VOLUME_REMOTE;

-				break;

-			case DRIVE_NO_ROOT_DIR :

-				result = org_eclipse_update_configuration_LocalSystemInfo_VOLUME_INVALID_PATH;

-				break;

-			case DRIVE_RAMDISK :

-				result = org_eclipse_update_configuration_LocalSystemInfo_VOLUME_RAMDISK;

-				break;			

-			case DRIVE_UNKNOWN :

-			default :

-				result = org_eclipse_update_configuration_LocalSystemInfo_VOLUME_UNKNOWN;

-				break;

-		}

-	} else {

-		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) {

-

-	//

-	DWORD logDrives;

-	UINT drive;

-	TCHAR driveName[100];

-	jobjectArray returnArray;

-	int nDrive = 0;

-

-	// 

-	jclass stringClass;

-	jobject empty;

-	int index = 0;

-	jobject str;

-

-

-	logDrives = GetLogicalDrives();

-	for (drive = 0; drive < 32; drive++) {

-		if (logDrives & (1 << drive)) {

-			nDrive++;

-		}

-	}

-

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

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

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

-

-	if (int win = (int)getWindowsVersion()<0 && NOWIN95){

-		// windows 95 or other

-		if (DEBUG)

-			printf("Unsupported Windows: %i\n",win);	

-		return NULL;

-	}

-

-	for (drive = 0; drive < 32; drive++) {

-		if (logDrives & (1 << drive)) {

-			sprintf(driveName, "%c:\\", drive + 'A');

-			str = jnienv -> NewStringUTF(driveName);

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

-			index++;

-		}

-	}

-

-	return returnArray;

-}

-

diff --git a/update/org.eclipse.update.core.win32/src/update.h b/update/org.eclipse.update.core.win32/src/update.h
deleted file mode 100644
index 35673d1..0000000
--- a/update/org.eclipse.update.core.win32/src/update.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/* DO NOT EDIT THIS FILE - it is machine generated */
-
-/*******************************************************************************
- * 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 v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-#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
-#undef org_eclipse_update_configuration_LocalSystemInfo_VOLUME_FLOPPY_5
-#define org_eclipse_update_configuration_LocalSystemInfo_VOLUME_FLOPPY_5 6L
-#undef org_eclipse_update_configuration_LocalSystemInfo_VOLUME_FLOPPY_3
-#define org_eclipse_update_configuration_LocalSystemInfo_VOLUME_FLOPPY_3 7L

-/* 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/.classpath b/update/org.eclipse.update.examples/.classpath
deleted file mode 100644
index b48fe2a..0000000
--- a/update/org.eclipse.update.examples/.classpath
+++ /dev/null
@@ -1,10 +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.apache.xerces"/>
-    <classpathentry kind="src" path="/org.eclipse.core.boot"/>
-    <classpathentry kind="src" path="/org.eclipse.update.core"/>
-    <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.examples/.cvsignore b/update/org.eclipse.update.examples/.cvsignore
deleted file mode 100644
index c5e82d7..0000000
--- a/update/org.eclipse.update.examples/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
\ No newline at end of file
diff --git a/update/org.eclipse.update.examples/.project b/update/org.eclipse.update.examples/.project
deleted file mode 100644
index 39cb54a..0000000
--- a/update/org.eclipse.update.examples/.project
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<projectDescription>

-	<name>org.eclipse.update.examples</name>

-	<comment></comment>

-	<projects>

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

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

-		<project>org.eclipse.core.runtime</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.ui.ManifestBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.ui.SchemaBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-	</buildSpec>

-	<natures>

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

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

-		<nature>org.eclipse.team.cvs.core.cvsnature</nature>

-	</natures>

-</projectDescription>

diff --git a/update/org.eclipse.update.examples/Scrapbook2.jpage b/update/org.eclipse.update.examples/Scrapbook2.jpage
deleted file mode 100644
index b5da99a..0000000
--- a/update/org.eclipse.update.examples/Scrapbook2.jpage
+++ /dev/null
@@ -1,111 +0,0 @@
-SiteManager.getSite(URL)throws CoreException

-  String type = getTypeForprotocol(URL.getprotocol);

-  try {

-    if (type != null){

-	attemptCreationSite(type,URL);

-    } else {

-	attemptCreationSite("http",URL);

-    }

-  } catch (CoreException e){

-    throw new CoreException("Cannot create site",e.getMessage());

-  }

-

-SiteManager.attemptCreationSite(type,URL)throws CoreException

-  try {

-    createSite(type,URL);

-  } catch (InvalidTypeException e){

-    try {

-      createSite(e.getRealType(),URL);

-    } catch (InvalidSiteExeption e){

-      throw new CoreException("Wrong site type");

-    }

-  }

-

-SiteManager.createSite(type,URL) throws CoreExeption, InvalidSiteTypeException

-

-

-try {

-			

-	factory.createSite(url, forceCreation);

-	

-} catch (IOException e) {

-	// if the URL is pointing to either a file 

-// or a directory, without reference			

-if (url.getRef() != null) {

-	// 4 nothing we can do

-	throw newCoreException("Error accessing url:"+url.toExternalForm()+"\r\n"+e.getMessage(),e);

-} else if (url.getFile().endsWith("/")) {

-	// 1 try to add site.xml

-	try {

-		url = new URL(url,Site.SITE_XML);

-	} catch (MalformedURLException e1){

-		throw newCoreException("Cannot create URL:"+url.toExternalForm()+"+"+Site.SITE_XML,e1);

-	}

-	try {

-		site = factory.createSite(url, forceCreation);

-	} catch (ParsingException e1){

-		throw newCoreException("Error parsing URL:"+url.toExternalForm()+"\r\n"+e1.getMessage(),e1);					

-	} catch (IOException e1){

-		throw newCoreException("Error accessing url:"+url.toExternalForm()+"\r\n"+e1.getMessage(),e1);					

-	}

-} else if (url.getFile().endsWith(Site.SITE_XML)) {

-	// 3 nothing we can do

-	throw newCoreException("Error accessing url:"+url.toExternalForm()+"\r\n"+e.getMessage(),e);

-} else {

-	// 2 try to add /site.xml

-	try {

-		url = new URL(url.getProtocol(),url.getHost(), url.getPort(), url.getFile()+"/"+Site.SITE_XML);

-	} catch (MalformedURLException e1){

-		throw newCoreException("Cannot create URL:"+url.toExternalForm()+"+"+Site.SITE_XML,e1);

-	}

-	

-	try {

-		site = factory.createSite(url, forceCreation);

-	} catch (ParsingException e1){

-		throw newCoreException("Error parsing URL:"+url.toExternalForm()+"\r\n"+e1.getMessage()+"\r\nPrevious Input/Output Error:"+e.getMessage(),e1);					

-	} catch (IOException e1){

-		throw newCoreException("Error accessing url:"+url.toExternalForm()+"\r\n"+e1.getMessage()+"\r\nPrevious Input/Output Error:"+e.getMessage(),e1);					

-				}				

-			}

-

-		} catch (ParsingException e) {

-			

-			// if the URL is pointing to either a file 

-// or a directory, without reference			

-if (url.getRef() != null) {

-	// 4 nothing we can do

-	throw newCoreException("Error parsing URL:"+url.toExternalForm()+"\r\n"+e.getMessage(),e);

-} else if (url.getFile().endsWith("/")) {

-	// 1 try to add site.xml

-	try {

-		url = new URL(url,Site.SITE_XML);

-	} catch (MalformedURLException e1){

-		throw newCoreException("Cannot create URL:"+url.toExternalForm()+"+"+Site.SITE_XML,e1);

-	}

-	try {

-		site = factory.createSite(url, forceCreation);

-	} catch (ParsingException e1){

-		throw newCoreException("Error parsing URL:"+url.toExternalForm()+"\r\n"+e1.getMessage(),e1);					

-	} catch (IOException e1){

-		throw newCoreException("Error accessing url:"+url.toExternalForm()+"\r\n"+e1.getMessage(),e1);

-				}				

-

-			} else if (url.getFile().endsWith(Site.SITE_XML)) {

-				// 3 nothing we can do

-	throw newCoreException("Error parsing URL:"+url.toExternalForm()+"\r\n"+e.getMessage(),e);					

-} else {

-	// 2 try to add /site.xml

-	

-	try {

-		url = new URL(url.getProtocol(),url.getHost(), url.getPort(), url.getFile()+"/"+Site.SITE_XML);

-	} catch (MalformedURLException e1){

-		throw newCoreException("Cannot create URL:"+url.toExternalForm()+"+"+Site.SITE_XML,e1);

-	}

-	try {

-		site = factory.createSite(url, forceCreation);

-	} catch (ParsingException e1){

-		throw newCoreException("Error parsing URL:"+url.toExternalForm()+"\r\n"+e1.getMessage()+"\r\nPrevious Parsing error:"+e.getMessage(),e1);					

-	} catch (IOException e1){

-		throw newCoreException("Error accessing url:"+url.toExternalForm()+"\r\n"+e1.getMessage()+"\r\nPrevious Parsing error:"+e.getMessage(),e1);

-	

-

diff --git a/update/org.eclipse.update.examples/about.html b/update/org.eclipse.update.examples/about.html
deleted file mode 100644
index 768324e..0000000
--- a/update/org.eclipse.update.examples/about.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<html>

-<head>

-<title>About</title>

-<style type="text/css">

-p, table, td, th { font-family: arial, helvetica, geneva; font-size: 10pt}

-pre { font-family: "Courier New", Courier, mono; font-size: 10pt}

-h2 { font-family: arial, helvetica, geneva; font-size: 18pt; font-weight: bold ; line-height: 14px}

-code { font-family: "Courier New", Courier, mono; font-size: 10pt}

-sup { font-family: arial,helvetica,geneva; font-size: 10px}

-h3 { font-family: arial, helvetica, geneva; font-size: 14pt; font-weight: bold}

-li { font-family: arial, helvetica, geneva; font-size: 10pt}

-h1 { font-family: arial, helvetica, geneva; font-size: 28px; font-weight: bold}

-body { font-family: arial, helvetica, geneva; font-size: 10pt; clip: rect(   ); margin-top: 5mm; margin-left: 3mm}

-</style>

-</head>

-<body lang="EN-US" link="blue" vlink="purple">

-<table border="0" cellspacing="5" cellpadding="2" width="100%" >

-  <tr> 

-    <td align="LEFT" valign="TOP" colspan="2" bgcolor="#0080C0"><b><font color="#FFFFFF">About This Content</font></b></td>

-  </tr>

-  <tr> 

-    <td> 

-<p>11th December, 2001</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

-<a href="http://www.eclipse.org/legal/cpl-v05.html">Common Public License Version 0.5</a> &quot;CPL&quot;.  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>

-</td></tr></table>

-</body>

-</html>
\ No newline at end of file
diff --git a/update/org.eclipse.update.examples/build.properties b/update/org.eclipse.update.examples/build.properties
deleted file mode 100644
index fda21a6..0000000
--- a/update/org.eclipse.update.examples/build.properties
+++ /dev/null
@@ -1,3 +0,0 @@
-source.updateexamplescore.jar = src/

-src.includes=about.html

-bin.includes=plugin.xml,plugin.properties,*.jar,about.html

diff --git a/update/org.eclipse.update.examples/plugin.properties b/update/org.eclipse.update.examples/plugin.properties
deleted file mode 100644
index 9a31f8c..0000000
--- a/update/org.eclipse.update.examples/plugin.properties
+++ /dev/null
@@ -1,3 +0,0 @@
-

-name = Install/Update BuildZip Example

-provider-name = Eclipse.org
\ No newline at end of file
diff --git a/update/org.eclipse.update.examples/plugin.xml b/update/org.eclipse.update.examples/plugin.xml
deleted file mode 100644
index e8b4092..0000000
--- a/update/org.eclipse.update.examples/plugin.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<plugin

-   id="org.eclipse.update.examples"

-   name="%name"

-   version="2.0.0"

-   provider-name="%provider-name">

-

-   <runtime>

-      <library name="updateexamples.jar">

-         <export name="*"/>

-      </library>

-   </runtime>

-   <requires>

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

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

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

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

-   </requires>

-

-

-   <extension

-         id="zip"

-         point="org.eclipse.update.core.featureTypes">

-      <feature-factory

-            class="org.eclipse.update.examples.buildzip.BuildZipFeatureFactory">

-      </feature-factory>

-   </extension>

-   <extension

-         id="site.zip"

-         point="org.eclipse.update.core.siteTypes">

-      <site-factory

-            class="org.eclipse.update.examples.buildzip.BuildZipSiteFactory">

-      </site-factory>

-   </extension>

-   <extension

-         id="site.freeform"

-         point="org.eclipse.update.core.siteTypes">

-      <site-factory

-            class="org.eclipse.update.examples.freeform.FreeFormSiteFactory">

-      </site-factory>

-   </extension>

-

-</plugin>

diff --git a/update/org.eclipse.update.examples/site/features/com.reddot.reddot_1.0.0.jar b/update/org.eclipse.update.examples/site/features/com.reddot.reddot_1.0.0.jar
deleted file mode 100644
index 06507a7..0000000
--- a/update/org.eclipse.update.examples/site/features/com.reddot.reddot_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.examples/site/features/com.reddot.reddot_2.0.0.jar b/update/org.eclipse.update.examples/site/features/com.reddot.reddot_2.0.0.jar
deleted file mode 100644
index 7236815..0000000
--- a/update/org.eclipse.update.examples/site/features/com.reddot.reddot_2.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.examples/site/info/images/redDot.jpg b/update/org.eclipse.update.examples/site/info/images/redDot.jpg
deleted file mode 100644
index f0fb5c3..0000000
--- a/update/org.eclipse.update.examples/site/info/images/redDot.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.examples/site/info/siteInfo.html b/update/org.eclipse.update.examples/site/info/siteInfo.html
deleted file mode 100644
index ceca97d..0000000
--- a/update/org.eclipse.update.examples/site/info/siteInfo.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
-<!-- saved from url=(0040)http://dejan/testSite/info/siteInfo.html -->
-<HTML><HEAD>
-<META http-equiv=Content-Type content="text/html; charset=windows-1252">
-<META content="MSHTML 5.50.4807.2300" name=GENERATOR></HEAD>
-<BODY>
-<H1 align=left><IMG height=55 src="images/redDot.jpg" width=56 
-align=center border=0> <FONT color=#c0c0c0>Follow the Red Dot&nbsp;</FONT></H1>
-<P>Welcome to the <B><FONT color=#800000>Red Dot</FONT> </B>update site. Use 
-your Eclipse <B>Update Sites</B> view to locate the feature version you want to 
-install or update to.</P>
-<H2>About Red Dot Feature</H2>
-<P>Our revolutionary Red Dot Eclipse feature changed all preconceptions about 
-what Eclipse features can and cannot do. Using our strikingly simple concept of 
-adding buttons to the Eclipse tool bar, we allow you to open dialogs that show 
-you the version of the Red Dot feature. The beauty of the concept stems from its 
-simplicity, ease of use, high performance and small footprint. Never before was 
-it so easy to press a button on the tool bar to get some text shown in the 
-dialog.</P>
-<H2>News</H2>
-<UL>
-  <LI><B>November 2001</B> - version 2.0.0 of the Red Dot feature is available 
-  for download. This version brings improvements across the board, further 
-  strengthening an already established Eclipse feature classic. Improvements 
-  will be visible the moment you update your feature - our famous red dot tool 
-  bar button is now <B>25% more red</B>, making it even easier to spot among 
-  other buttons. 
-  <LI><B>October 2001</B> - version 1.0.0 of the Red Dot feature is available 
-  for download. Select it in the 'Sites' view of the Update Manager and press 
-  'Install' button. </LI></UL>
-<HR>
-<I>Copyright 2001 Red Dot Corporation Ltd. All rights reserved.</I> 
-</BODY></HTML>
diff --git a/update/org.eclipse.update.examples/site/plugins/com.reddot.reddot_1.0.0.jar b/update/org.eclipse.update.examples/site/plugins/com.reddot.reddot_1.0.0.jar
deleted file mode 100644
index c88b793..0000000
--- a/update/org.eclipse.update.examples/site/plugins/com.reddot.reddot_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.examples/site/plugins/com.reddot.reddot_2.0.0.jar b/update/org.eclipse.update.examples/site/plugins/com.reddot.reddot_2.0.0.jar
deleted file mode 100644
index da31ad3..0000000
--- a/update/org.eclipse.update.examples/site/plugins/com.reddot.reddot_2.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.examples/site/site.xml b/update/org.eclipse.update.examples/site/site.xml
deleted file mode 100644
index b091324..0000000
--- a/update/org.eclipse.update.examples/site/site.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<site>
-   <description url="info/siteInfo.html"/>
-
-   <feature url="features/com.reddot.reddot_1.0.0.jar">
-      <category name="reddot"/>
-   </feature>
-
-   <feature url="features/com.reddot.reddot_2.0.0.jar">
-      <category name="reddot"/>
-   </feature>
-
-   <category-def label="Red Dot Versions" name="reddot">
-      <description url="info/RedDotVersions.html">
-         This category contains all of the currently available versions of Red Dot feature.
-      </description>
-   </category-def>
-
-</site>   
\ No newline at end of file
diff --git a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipConverter.java b/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipConverter.java
deleted file mode 100644
index e81ec2a..0000000
--- a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipConverter.java
+++ /dev/null
@@ -1,157 +0,0 @@
-package org.eclipse.update.examples.buildzip;

-

-/*

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

- * All Rights Reserved.

- */ 

- 

-import java.io.File;

-import java.io.FileOutputStream;

-import java.io.IOException;

-import java.io.InputStream;

-import java.io.StringBufferInputStream;

-import java.net.URL;

-import java.util.Properties;

-import java.util.jar.JarEntry;

-import java.util.jar.JarOutputStream;

-

-import org.eclipse.update.core.*;

-import org.eclipse.update.core.ContentReference;

-import org.eclipse.update.core.IFeature;

-import org.eclipse.update.core.IFeatureContentProvider;

-import org.eclipse.update.core.IPluginEntry;

-import org.eclipse.update.core.JarContentReference;

-import org.eclipse.update.core.model.InstallAbortedException;

-

-/**

- * Converts eclipse build .zip files into packaged feature

- */

-public class BuildZipConverter {

-

-	public static void main(String[] args) {

-		if (args.length <=0) {

-			System.out.println("Usage:     BuildZipConverter <path to the zip file>.\r\nExample: BuildZipConverter d:/download/integration-eclipse-SDK-20020109-win32.zip");

-			return;

-		}

-		try {

-			URL buildzip = new URL(("file:"+args[0]).replace(File.separatorChar, '/'));

-			BuildZipFeatureFactory factory = new BuildZipFeatureFactory();

-			IFeature feature = factory.createFeature(buildzip, null);

-			IFeatureContentProvider provider = feature.getFeatureContentProvider();

-			

-			ContentReference[] refs = provider.getFeatureEntryContentReferences(null);

-			

-			File site = new File((args[0]+".packaged/").replace('/',File.separatorChar));

-			site.mkdirs();

-			File featuresDir = new File(site,"features");

-			featuresDir.mkdirs();

-			File pluginsDir = new File(site, "plugins");

-			pluginsDir.mkdirs();

-			

-			File jarFile = new File(featuresDir,feature.getVersionedIdentifier()+".jar");

-			System.out.println("writing feature archive: "+feature.getVersionedIdentifier()+".jar");

-			writeJar(jarFile, refs, feature, null, null);

-			JarContentReference jar = new JarContentReference("build.zip",buildzip);

-			Properties manifest = getBuildManifest(jar);

-			

-			IPluginEntry[] plugins = feature.getPluginEntries();

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

-				refs = provider.getPluginEntryContentReferences(plugins[i], null);

-				jarFile = new File(pluginsDir,plugins[i].getVersionedIdentifier()+".jar");

-				System.out.println("writing plugin archive: "+plugins[i].getVersionedIdentifier()+".jar");

-				writeJar(jarFile, refs, feature, plugins[i].getVersionedIdentifier().getIdentifier(), manifest);

-			}

-			

-			writeSiteManifest(site, feature);

-		} catch(Exception e) {

-			e.printStackTrace();

-		}

-	}

-	

-	public static void writeJar(File jarFile,ContentReference[] refs, IFeature feature, String pluginId, Properties manifest) {

-			

-		JarOutputStream jos = null;

-		FileOutputStream os = null;

-		InputStream is = null;

-		

-		try {

-			os = new FileOutputStream(jarFile);

-			jos = new JarOutputStream(os);

-			JarEntry entry = null;

-			String buf = null;

-			StringBufferInputStream sbis = null;

-			

-			// write jar manifest (first entry in output stream)

-			buf = "Manifest-Version: 1.0\nCreated-By: 2.0.0 (www.eclipse.org Feature Packager)\n";

-			sbis = new StringBufferInputStream(buf);

-			entry = new JarEntry("META-INF/MANIFEST.MF");

-			jos.putNextEntry(entry);

-			Utilities.copy(sbis,jos,null);

-			sbis.close();

-			

-			// jar up the references

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

-				String id = refs[i].getIdentifier();

-				entry = new JarEntry(id);

-				jos.putNextEntry(entry);

-				is = refs[i].getInputStream();

-				Utilities.copy(is,jos,null);

-				is.close(); is = null;

-			}

-			

-			// for plugin jars, write build manifest

-			if (pluginId != null && manifest != null) {

-				String key = "plugin@"+pluginId;

-				String value = manifest.getProperty(key);

-				if (value != null) {

-					if (value.equals("HEAD")) {

-						value += "-" + feature.getVersionedIdentifier().getVersion().getMajorComponent();

-					}

-					buf = key + "=" + value;

-					sbis = new StringBufferInputStream(buf);

-					entry = new JarEntry("buildmanifest.properties");

-					jos.putNextEntry(entry);

-					Utilities.copy(sbis,jos,null);

-					sbis.close();

-				}

-			}

-			

-			// close jar

-			jos.close(); jos = null; os = null;

-		} catch(Exception e) {

-			e.printStackTrace();

-		} finally {

-			if (is != null) 

-				try {is.close();} catch(IOException e) {}

-				

-			if (jos != null) 

-				try {jos.close();} catch(IOException e) {}

-			else if (os != null)

-				try {os.close();} catch(IOException e) {}

-		}		

-	}

-	

-	public static void writeSiteManifest(File site, IFeature feature) throws IOException, InstallAbortedException {

-		File manifest = new File(site, "site.xml");

-		FileOutputStream os = new FileOutputStream(manifest);

-		String siteXML = "<site>\n   <feature url=\"features/"+feature.getVersionedIdentifier().toString()+".jar\"/>\n</site>";

-		StringBufferInputStream sbis = new StringBufferInputStream(siteXML);

-		Utilities.copy(sbis,os,null);

-		os.close();

-		sbis.close();

-	}

-	

-	public static Properties getBuildManifest(JarContentReference jar) throws IOException {

-		ContentReference manifestEntry = jar.peek("eclipse/buildmanifest.properties",null/*ContentSelector*/, null/*ProgressMonitor*/);

-		InputStream is = null;

-		Properties props = null;

-		try {

-			props = new Properties();

-			is = manifestEntry.getInputStream();

-			props.load(is);

-		} finally {

-			if (is != null) try{ is.close(); } catch(IOException e) {}

-		}

-		return props;

-	}

-}

diff --git a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipFeatureContentProvider.java b/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipFeatureContentProvider.java
deleted file mode 100644
index a0f1c0e..0000000
--- a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipFeatureContentProvider.java
+++ /dev/null
@@ -1,256 +0,0 @@
-package org.eclipse.update.examples.buildzip;

-

-/*

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

- * All Rights Reserved.

- */ 

-

-import java.io.File;

-import java.io.FileOutputStream;

-import java.io.IOException;

-import java.net.URL;

-import java.util.jar.JarEntry;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.core.runtime.IStatus;

-import org.eclipse.core.runtime.Status;

-import org.eclipse.update.core.*;

-import org.eclipse.update.core.ContentReference;

-import org.eclipse.update.core.FeatureContentProvider;

-import org.eclipse.update.core.IFeatureContentProvider;

-import org.eclipse.update.core.INonPluginEntry;

-import org.eclipse.update.core.IPluginEntry;

-import org.eclipse.update.core.IVerifier;

-import org.eclipse.update.core.InstallMonitor;

-import org.eclipse.update.core.JarContentReference;

-import org.eclipse.update.core.JarContentReference.ContentSelector;

-import org.eclipse.update.core.model.FeatureModel;

-import org.eclipse.update.core.model.InstallAbortedException;

-

-/**

- * An example feature content provider. It handles features packaged as

- * build zip's using the format used for integration and stable builds

- * posted on the downloads pages at www.eclipse.org

- * </p>

- * @since 2.0

- */

-

-public class BuildZipFeatureContentProvider extends FeatureContentProvider implements IFeatureContentProvider {

-

-	private JarContentReference baseReference;

-	private ContentReference generatedFeatureManifest;	

-	private ContentReference[] featureEntryContentReferences;

-	private IPluginEntry currentPluginEntry;

-	private INonPluginEntry currentNonPluginEntry;

-	

-	public BuildZipFeatureContentProvider(URL base) {

-		super(base);

-		this.baseReference = new JarContentReference("build.zip",base);

-	}

-	

-	/*

-	 * @see IFeatureContentProvider#getFeatureManifest()

-	 */

-	public ContentReference getFeatureManifestReference(InstallMonitor monitor) throws CoreException {

-		if (generatedFeatureManifest == null) {

-			throw newCoreException("Feature manifest is not available",null);

-		}

-		else

-			return generatedFeatureManifest;

-	}

-

-	/*

-	 * @see IFeatureContentProvider#getArchiveReferences()

-	 */

-	public ContentReference[] getArchiveReferences(InstallMonitor monitor) {

-		// the feature and all its plugins files are packaged in a single archive

-		return new ContentReference[] { baseReference };

-	}

-

-	/*

-	 * @see IFeatureContentProvider#getFeatureEntryArchiveReferences()

-	 */

-	public ContentReference[] getFeatureEntryArchiveReferences(InstallMonitor monitor) {

-		// the feature and all its plugins files are packaged in a single archive

-		return new ContentReference[] { baseReference };

-	}

-

-	/*

-	 * @see IFeatureContentProvider#getPluginEntryArchiveReferences(IPluginEntry)

-	 */

-	public ContentReference[] getPluginEntryArchiveReferences(IPluginEntry pluginEntry, InstallMonitor monitor) {

-		// the feature and all its plugins files are packaged in a single archive

-		return new ContentReference[] { baseReference };

-	}

-

-	/*

-	 * @see IFeatureContentProvider#getNonPluginEntryArchiveReferences(INonPluginEntry)

-	 */

-	public ContentReference[] getNonPluginEntryArchiveReferences(INonPluginEntry nonPluginEntry, InstallMonitor monitor) 

-		throws CoreException {

-		try {

-			return peekNonPluginEntryContent(nonPluginEntry,monitor);

-		} catch(IOException e) {

-			throw newCoreException("Unable to return content for non plugin entry "+nonPluginEntry.getIdentifier(),e);

-		}

-	}

-

-	/*

-	 * @see IFeatureContentProvider#getFeatureEntryContentReferences()

-	 */

-	public ContentReference[] getFeatureEntryContentReferences(InstallMonitor monitor) {

-		if (featureEntryContentReferences == null)

-			return new ContentReference[0];

-		else

-			return  featureEntryContentReferences;

-	}

-

-	/*

-	 * @see IFeatureContentProvider#getPluginEntryContentReferences(IPluginEntry)

-	 */

-	public ContentReference[] getPluginEntryContentReferences(IPluginEntry pluginEntry, InstallMonitor monitor)

-		throws CoreException {

-		try {

-			return peekPluginEntryContent(pluginEntry, monitor);

-		} catch(IOException e) {

-			throw newCoreException("Unable to return content for plugin entry "+pluginEntry.getVersionedIdentifier(),e);

-		}

-	}

-	

-	public URL getFeatureBaseURL() throws IOException {

-		return getWorkingDirectory().toURL();

-			

-	}

-

-	ContentReference getFeatureBuildManifest() throws Exception {

-		return baseReference.peek("eclipse/buildmanifest.properties",null/*ContentSelector*/, null/*ProgressMonitor*/);

-	}

-

-	ContentReference getPluginManifest(String pluginId, boolean isFragment) throws Exception {			

-		String manifestName = "eclipse/plugins/" + pluginId + "/" + (isFragment ? "fragment.xml" : "plugin.xml");

-		return baseReference.peek(manifestName, null/*ContentSelector*/, null/*ProgressMonitor*/);

-	}

-	

-	void unpackFeatureEntryContent(FeatureModel feature, InstallMonitor monitor) throws IOException, InstallAbortedException {

-			

-		// define selector for feature entry files

-		ContentSelector selector = new ContentSelector() {

-			public boolean include(JarEntry jarEntry) {

-				if (jarEntry.isDirectory())

-					return false;					

-				String entry = jarEntry.getName();

-				if (entry.startsWith("eclipse/readme/"))

-					return true;

-				else if (entry.startsWith("eclipse/splash/"))

-					return true;

-				else if (entry.startsWith("eclipse/") && entry.indexOf("/",8)==-1 && entry.endsWith(".html"))

-					return true;

-				else

-					return false;	

-			}

-			public String defineIdentifier(JarEntry jarEntry) {

-				String entry = jarEntry.getName();

-				if (entry.startsWith("eclipse/"))

-					return entry.substring(8);

-				else

-					return entry;

-			}

-		};

-		

-		// unpack feature entry files

-		File tmpDir = getWorkingDirectory();

-		ContentReference[] refs = baseReference.unpack(tmpDir, selector, monitor);

-		

-		// write out feature manifest (feature.xml);

-		File manifest = Utilities.createLocalFile(tmpDir,"feature.xml");

-		ContentReference manifestReference = new ContentReference("feature.xml", manifest);

-		DefaultModelWriter w = new DefaultModelWriter(feature);

-		FileOutputStream os = null;

-		try {

-			os = new FileOutputStream(manifest);

-			w.writeFeatureManifest(os);

-		} finally {

-			if (os != null) try { os.close(); } catch(IOException e) {}

-		}

-		this.generatedFeatureManifest = manifestReference;

-		

-		// save references (newly-written feature.xml plus rest of selected feature files)

-		ContentReference[] allRefs = new ContentReference[refs.length+1];

-		allRefs[0] = manifestReference;

-		System.arraycopy(refs,0,allRefs,1,refs.length);

-		featureEntryContentReferences = allRefs;

-	}

-		

-	ContentReference[] peekPluginEntryContent(IPluginEntry plugin, InstallMonitor monitor) throws IOException {

-		

-		// define selector for plugin entry files

-		ContentSelector selector = new ContentSelector() {

-			public boolean include(JarEntry jarEntry) {

-				if (jarEntry.isDirectory())

-					return false;

-				String entry = jarEntry.getName();

-				String id = currentPluginEntry.getVersionedIdentifier().getIdentifier();

-				if (id==null)

-					return false;

-				else if (entry.startsWith("eclipse/plugins/"+id+"/"))

-					return true;

-				else

-					return false;	

-			}

-			public String defineIdentifier(JarEntry jarEntry) {

-				String entry = jarEntry.getName();

-				int ix = entry.indexOf("/",16);

-				if (ix != -1) {

-					return entry.substring(ix+1);

-				} else {

-					return entry;

-				}

-			}

-		};

-		

-		// unpack plugin entry files

-		currentPluginEntry = plugin;

-		return baseReference.peek(selector, monitor);

-	}

-		

-	ContentReference[] peekNonPluginEntryContent(INonPluginEntry data, InstallMonitor monitor) throws IOException {

-		

-		// define selector for non plugin entry files

-		ContentSelector selector = new ContentSelector() {

-			public boolean include(JarEntry jarEntry) {

-				if (jarEntry.isDirectory())

-					return false;

-				String entry = jarEntry.getName();

-				String id = currentNonPluginEntry.getIdentifier();

-				if (!id.equals("root"))

-					return false;

-				else if (!entry.startsWith("eclipse/plugins/"))

-					return true;

-				else

-					return false;	

-			}

-			public String defineIdentifier(JarEntry jarEntry) {

-				String entry = jarEntry.getName();

-				if (entry.startsWith("eclipse/"))

-					return entry.substring(8);

-				else

-					return entry;

-			}

-		};

-		

-		// unpack non plugin entry files

-		currentNonPluginEntry = data;

-		return baseReference.peek(selector, monitor);

-	}

-	

-	private CoreException newCoreException(String s, Throwable e) throws CoreException {

-		return new CoreException(new Status(IStatus.ERROR,"org.eclipse.update.examples",0,s,e));

-	}

-	/*

-	 * @see IFeatureContentProvider#getVerifier()

-	 */

-	public IVerifier getVerifier() throws CoreException {

-		return null;

-	}

-

-}

diff --git a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipFeatureFactory.java b/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipFeatureFactory.java
deleted file mode 100644
index d6150b7..0000000
--- a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipFeatureFactory.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package org.eclipse.update.examples.buildzip;

-

-/*

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

- * All Rights Reserved.

- */ 

-

-import java.net.URL;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.core.runtime.IProgressMonitor;

-import org.eclipse.core.runtime.IStatus;

-import org.eclipse.core.runtime.Status;

-import org.eclipse.update.core.BaseFeatureFactory;

-import org.eclipse.update.core.Feature;

-import org.eclipse.update.core.IFeature;

-import org.eclipse.update.core.IFeatureFactory;

-import org.eclipse.update.core.ISite;

-import org.eclipse.update.core.model.FeatureModel;

-

-/**

- * An example feature factory based on the packaging 

- * format used for integration and stable builds

- * posted on the downloads pages at www.eclipse.org

- * </p>

- * @since 2.0

- */

-

-public class BuildZipFeatureFactory

-	extends BaseFeatureFactory

-	implements IFeatureFactory {

-

-	/*

-	 * @see IFeatureFactory#createFeature(URL, ISite, IProgressMonitor)

-	 */

-	public IFeature createFeature(URL url, ISite site, IProgressMonitor monitor) throws CoreException {

-		try {

-			// create content provider for feature

-			BuildZipFeatureContentProvider cp = new BuildZipFeatureContentProvider(url);

-			Feature feature = null;

-			

-			// parse the feature

-			feature = (Feature) parseFeature(cp);

-			

-			// initialize feature

-			feature.setFeatureContentProvider(cp);

-			feature.setSite(site);

-			feature.resolve(cp.getFeatureBaseURL(), null); 

-			feature.markReadOnly();

-			return feature;

-		} catch (Exception e) {

-			throw new CoreException(new Status(IStatus.ERROR,"org.eclipse.update.examples.buildzip",0,"Unable to create feature",e));

-		}

-	}

-

-	/*

-	 * parse the build zip to reconstruct a feature model

-	 */

-	public FeatureModel parseFeature(BuildZipFeatureContentProvider cp) throws Exception {

-		return (new BuildZipFeatureParser(this)).parse(cp);

-	}

-

-}

diff --git a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipFeatureParser.java b/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipFeatureParser.java
deleted file mode 100644
index 6748ded..0000000
--- a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipFeatureParser.java
+++ /dev/null
@@ -1,203 +0,0 @@
-package org.eclipse.update.examples.buildzip;

-

-/*

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

- * All Rights Reserved.

- */ 

- 

-import java.io.IOException;

-import java.io.InputStream;

-import java.net.URLDecoder;

-import java.util.Enumeration;

-import java.util.Properties;

-import java.util.StringTokenizer;

-

-import org.eclipse.core.runtime.PluginVersionIdentifier;

-import org.eclipse.update.core.ContentReference;

-import org.eclipse.update.core.model.FeatureModel;

-import org.eclipse.update.core.model.PluginEntryModel;

-import org.eclipse.update.core.model.URLEntryModel;

-

-/**

- * An example feature parser. It handles features packaged as

- * build zip's using the format used for integration and stable builds

- * posted on the downloads pages at www.eclipse.org

- * </p>

- * @since 2.0

- */

-

-public class BuildZipFeatureParser {	

-	

-	private BuildZipFeatureFactory factory;

-	private BuildZipPluginParser pluginParser;

-	

-	public BuildZipFeatureParser(BuildZipFeatureFactory factory) {

-		this.factory = factory;

-	}

-	

-	public FeatureModel parse(BuildZipFeatureContentProvider cp) throws Exception {				

-		return parseFeature(cp);

-	}

-	

-	private FeatureModel parseFeature(BuildZipFeatureContentProvider cp) throws Exception {		

-		

-		// get reference to the build manifest

-		ContentReference manifestRef = cp.getFeatureBuildManifest();

-		InputStream is = manifestRef.getInputStream();		

-		

-		// load buildmanifest.properties

-		Properties manifest = new Properties();

-		try {

-			manifest.load(is);

-		} finally {

-			if (is!=null) try { is.close(); } catch(IOException e) {}

-		}

-		

-		// populate feature model

-		FeatureModel feature = factory.createFeatureModel();

-		parseFeatureEntry(cp, feature, manifest);

-		

-		// parse plugin entries

-		parsePluginEntries(cp, feature, manifest); 

-		

-		// parse non-plugin entries

-		parseNonPluginEntries(cp, feature, manifest);

-		

-		// unpack feature entry content

-		cp.unpackFeatureEntryContent(feature, null/*IProgressMonitor*/);

-		

-		return feature;

-	}

-	

-	private void parseFeatureEntry(BuildZipFeatureContentProvider cp, FeatureModel feature, Properties manifest) throws Exception {

-		

-		// parse out build zip file name. It is assumed to be in the

-		// form <package identifier>-<build date>-<target platform>.zip,

-		// where

-		//		<package identifier> is hyphen (-) separaterd token list

-		//		<build date> is single all-numeric token

-		//		<target platform> is hyphen (-) separaterd token list

-		

-		String pkgId = "";

-		String target = "";

-		String build = "";

-		String state = "ID";

-		boolean firstToken = true;

-		String zipName = URLDecoder.decode(cp.getURL().getFile());

-		int ix = zipName.lastIndexOf("/");

-		if (ix != -1)

-			zipName = zipName.substring(ix+1);

-		if (zipName.endsWith(".zip")) {

-			zipName = zipName.substring(0,zipName.length()-4);

-		}

-		StringTokenizer tokenizer = new StringTokenizer(zipName,"-",false);

-		String token;

-		while(tokenizer.hasMoreTokens()) {

-			token = tokenizer.nextToken();

-			try {

-				Long.parseLong(token);

-				state = "TARGET";

-				target = "";

-				firstToken = true;

-				build = token+".0.0";

-			} catch (NumberFormatException e) {

-				if (state.equals("ID")) {

-					pkgId += (firstToken ? "" : " ") + token;

-				} else {

-					target += (firstToken ? "" : " ") + token;

-				}

-				firstToken = false;

-			}

-		}

-		

-		// generate base feature attributes

-		feature.setFeatureIdentifier(pkgId.replace(' ','.'));

-		feature.setFeatureVersion(build);

-		feature.setLabel(pkgId.substring(0,1).toUpperCase() + pkgId.substring(1) + " for " + target);

-		feature.setProvider("www.eclipse.org");

-		feature.setImageURLString("splash/splash_full.bmp");

-		feature.setOS(target.replace(' ','-'));	

-		

-		// add description

-		URLEntryModel description = factory.createURLEntryModel();

-		description.setURLString("readme/readme.html");

-		description.setAnnotation("x");

-		feature.setDescriptionModel(description);

-		

-		// add license

-		URLEntryModel license = factory.createURLEntryModel();

-		license.setURLString("about.html");

-		license.setAnnotation("You must view the full license by following the \"License\" link in the feature preview.\nSelecting \"Accept\" indicates that you have viewed and accepted the feature license.");

-		feature.setLicenseModel(license);

-		

-		// add copyright

-		URLEntryModel copyright = factory.createURLEntryModel();

-		copyright.setURLString("notice.html");

-		copyright.setAnnotation("x");

-		feature.setCopyrightModel(copyright);

-	}	

-	

-	private void parsePluginEntries(BuildZipFeatureContentProvider cp, FeatureModel feature, Properties manifest) throws Exception {

-		

-		Enumeration entries = manifest.keys();

-		String plugin;

-		String pluginId;

-		String pluginVersion;

-		String pluginBuildVersion;

-		PluginEntryModel pluginEntry;

-		while(entries.hasMoreElements()) {

-			plugin = (String) entries.nextElement();

-			if (plugin.startsWith("plugin@")) {

-				pluginId = plugin.substring(7);

-				pluginBuildVersion = manifest.getProperty(plugin);

-				if (pluginBuildVersion.equals("HEAD")) {

-					String featureVersion = feature.getFeatureVersion();

-					int ix = featureVersion.indexOf(".");

-					String featureMajor = ix==-1 ? featureVersion : featureVersion.substring(0,ix);

-					pluginBuildVersion += "-" + featureMajor;

-				}

-				pluginEntry = factory.createPluginEntryModel();

-				pluginVersion = parsePluginVersionInManifest(cp, pluginId, pluginEntry);

-				if (pluginVersion != null) {

-					pluginEntry.setPluginIdentifier(pluginId);

-					pluginEntry.setPluginVersion((new PluginVersionIdentifier(pluginVersion)).toString()+"."+pluginBuildVersion);

-					feature.addPluginEntryModel(pluginEntry);

-				}

-			}

-		}		

-	}

-	

-	private void parseNonPluginEntries(BuildZipFeatureContentProvider cp, FeatureModel feature, Properties manifest) throws Exception {

-	//	NonPluginEntryModel nonPluginEntry = factory.createNonPluginEntryModel();

-	//	nonPluginEntry.setIdentifier("root");

-	//	feature.addNonPluginEntryModel(nonPluginEntry);

-	}

-	

-	private String parsePluginVersionInManifest(BuildZipFeatureContentProvider cp, String pluginId, PluginEntryModel pluginEntry) {

-

-		if (pluginParser == null)

-			pluginParser = new BuildZipPluginParser();

-				

-		InputStream is = null;				

-		ContentReference pluginManifest;

-		try {

-			// try plugin.xml

-			pluginManifest  = cp.getPluginManifest(pluginId, false);

-			is = pluginManifest.getInputStream();

-			return pluginParser.parse(is);

-		} catch (Exception e) {

-			try {

-				// retry with feature.xml

-				pluginManifest  = cp.getPluginManifest(pluginId, true);

-				is = pluginManifest.getInputStream();

-				String result = pluginParser.parse(is);

-				pluginEntry.isFragment(true);

-				return result;

-			} catch (Exception e2) {

-				return null;

-			}

-		} finally {

-			if (is != null) try { is.close(); } catch (IOException e) {}

-		}

-	}

-}

diff --git a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipPluginParser.java b/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipPluginParser.java
deleted file mode 100644
index 90e1d1f..0000000
--- a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipPluginParser.java
+++ /dev/null
@@ -1,85 +0,0 @@
-package org.eclipse.update.examples.buildzip;

-

-/*

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

- * All Rights Reserved.

- */

-

-import java.io.IOException;

-import java.io.InputStream;

-

-import org.apache.xerces.parsers.SAXParser;

-import org.xml.sax.Attributes;

-import org.xml.sax.InputSource;

-import org.xml.sax.SAXException;

-import org.xml.sax.helpers.DefaultHandler;

-

-/**

- * Parse default feature.xml

- */

-

-public class BuildZipPluginParser extends DefaultHandler {

-

-	private SAXParser parser;

-	private String version;

-	

-	private static final String PLUGIN = "plugin";

-	private static final String FRAGMENT = "fragment";

-	private static final String ID = "id";

-	private static final String VERSION = "version";	

-	

-	private class ParseCompleteException extends SAXException {

-		public ParseCompleteException(String arg0) {

-			super(arg0);

-		}

-	}

-

-	/**

-	 * Constructor for DefaultFeatureParser

-	 */

-	public BuildZipPluginParser() {

-		super();

-		this.parser = new SAXParser();

-		this.parser.setContentHandler(this);

-	}

-	

-	/**

-	 * @since 2.0

-	 */

-	public synchronized String parse(InputStream in) throws SAXException, IOException {

-		try {

-			version = null;

-			parser.parse(new InputSource(in));

-		} catch(ParseCompleteException e) {

-		}

-		return version;

-	}

-	

-	/**

-	 * @see DefaultHandler#startElement(String, String, String, Attributes)

-	 */

-	public void startElement(String uri, String localName,String qName, Attributes attributes) throws SAXException {

-		

-		String tag = localName.trim();

-	

-		if (tag.equalsIgnoreCase(PLUGIN)) {

-			processPlugin(attributes);

-			return;

-		}

-	

-		if (tag.equalsIgnoreCase(FRAGMENT)) {

-			processPlugin(attributes);

-			return;

-		}

-	}

-	

-	/** 

-	 * process plugin entry info

-	 */

-	private void processPlugin(Attributes attributes) throws ParseCompleteException {

-		version = attributes.getValue("version");

-		throw new ParseCompleteException("");

-	}

-}

-

-

diff --git a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipSiteContentProvider.java b/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipSiteContentProvider.java
deleted file mode 100644
index 05ec032..0000000
--- a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipSiteContentProvider.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package org.eclipse.update.examples.buildzip;

-

-/*

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

- * All Rights Reserved.

- */

-

-import java.net.URL;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.update.core.SiteContentProvider;

-

-public class BuildZipSiteContentProvider extends SiteContentProvider {

-

-	/**

-	 * Constructor for SiteContentProvider.

-	 */

-	public BuildZipSiteContentProvider(URL url) {

-		super(url);

-	}

-	

-	/*

-	 * @see ISiteContentProvider#getArchiveReference(String)

-	 */

-	public URL getArchiveReference(String id) throws CoreException {

-		// build zip features do not have associated archives

-		// the zip file also contains the archives files

-		return null;

-	}

-

-}

diff --git a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipSiteFactory.java b/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipSiteFactory.java
deleted file mode 100644
index df9196b..0000000
--- a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/BuildZipSiteFactory.java
+++ /dev/null
@@ -1,85 +0,0 @@
-package org.eclipse.update.examples.buildzip;

-

-/*

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

- * All Rights Reserved.

- */

-

-import java.io.File;

-import java.io.FileFilter;

-import java.io.IOException;

-import java.net.MalformedURLException;

-import java.net.URL;

-import java.net.URLDecoder;

-import java.util.zip.ZipEntry;

-import java.util.zip.ZipFile;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.update.core.*;

-import org.eclipse.update.core.BaseSiteFactory;

-import org.eclipse.update.core.ISite;

-import org.eclipse.update.core.Site;

-import org.eclipse.update.core.model.InvalidSiteTypeException;

-import org.eclipse.update.core.model.CategoryModel;

-

-public class BuildZipSiteFactory extends BaseSiteFactory {

-

-	/*

-	 * @see ISiteFactory#createSite(URL)

-	 */

-	public ISite createSite(URL url) throws CoreException,InvalidSiteTypeException {

-

-		Site site = null;

-

-		// create site and add category

-		site = (Site) createSiteMapModel();

-		CategoryModel category = createSiteCategoryModel();

-		category.setName("eclipse-builds");

-		category.setLabel("Eclipse Builds");

-		site.addCategoryModel(category);

-

-		// set content provider

-		BuildZipSiteContentProvider contentProvider = new BuildZipSiteContentProvider(url);

-		site.setSiteContentProvider(contentProvider);

-

-		// get all matching zip files on the site

-		FileFilter filter = new FileFilter() {

-			public boolean accept(File file) {

-				if (file.getName().endsWith(".zip")) {

-					try {

-						ZipFile zip = new ZipFile(file);

-						ZipEntry entry = zip.getEntry("eclipse/buildmanifest.properties");

-						if (entry == null)

-							return false;

-						else

-							return true;

-					} catch (IOException e) {

-						return false;

-					}

-				} else

-					return false;

-			}

-		};

-		File file = new File(URLDecoder.decode(url.getFile()));

-		File[] zips = file.listFiles(filter);

-

-		// create a reference for each matching zip

-		SiteFeatureReferenceModel ref = null;

-		for (int i = 0; zips != null && i < zips.length; i++) {

-			ref = createFeatureReferenceModel();

-			ref.setType("org.eclipse.update.examples.zip");

-			ref.setSiteModel(site);

-			ref.setURLString("file:" + zips[i].getAbsolutePath());

-			ref.setCategoryNames(new String[] { "eclipse-builds" });

-			site.addFeatureReferenceModel(ref);

-		}

-		try {

-			site.resolve(url, null); // resolve any URLs relative to the site

-		} catch (MalformedURLException e){

-			throw Utilities.newCoreException("",e);

-		}

-

-		return site;

-	}

-

-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/DefaultModelWriter.java b/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/DefaultModelWriter.java
deleted file mode 100644
index 9ca8bc4..0000000
--- a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/DefaultModelWriter.java
+++ /dev/null
@@ -1,228 +0,0 @@
-package org.eclipse.update.examples.buildzip;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2002.
- * All Rights Reserved.
- */ 
- 
-import java.io.OutputStream;
-import java.io.PrintWriter;
-
-import org.eclipse.update.core.model.*;
-
-/**
- * Write standard feature manifest (feature.xml) from model.
- * </p>
- * @since 2.0
- */
-
-public class DefaultModelWriter {
-	
-	private FeatureModel feature;
-	
-	/**
-	 * @since 2.0
-	 */
-	public DefaultModelWriter(FeatureModel feature) {
-		this.feature = feature;
-	}
-	
-	/**
-	 * @since 2.0
-	 */
-	public void writeFeatureManifest(OutputStream os) {
-		PrintWriter w = new PrintWriter(os);
-		writeFeature(w,0,feature);
-		w.flush();
-	}
-	
-	private void writeFeature(PrintWriter w, int level, FeatureModel feature) {
-		if (feature == null) return;
-		
-		String in = getIndent(level);
-		w.println(in+"<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
-		
-		w.println(in+"<feature");
-		if (feature.getFeatureIdentifier()!=null)
-			w.println(in+"   "+"id=\""+feature.getFeatureIdentifier()+"\"");
-		if (feature.getFeatureVersion()!=null)
-			w.println(in+"   "+"version=\""+feature.getFeatureVersion()+"\"");
-		if (feature.getLabelNonLocalized()!=null)
-			w.println(in+"   "+"label=\""+feature.getLabelNonLocalized()+"\"");
-		if (feature.getProviderNonLocalized()!=null)
-			w.println(in+"   "+"provider-name=\""+feature.getProviderNonLocalized()+"\"");
-		if (feature.getImageURLString()!=null)
-			w.println(in+"   "+"image=\""+feature.getImageURLString()+"\"");
-		if (feature.getOS()!=null)
-			w.println(in+"   "+"os=\""+feature.getOS()+"\"");
-		if (feature.getWS()!=null)
-			w.println(in+"   "+"ws=\""+feature.getWS()+"\"");
-		if (feature.getNL()!=null)
-			w.println(in+"   "+"nl=\""+feature.getNL()+"\"");
-		if (feature.getApplication()!=null)
-			w.println(in+"   "+"application=\""+feature.getApplication()+"\"");
-		w.println(in+"   "+">");
-		
-		writeDescription(w, level+1, feature.getDescriptionModel());
-		writeCopyright(w, level+1, feature.getCopyrightModel());
-		writeLicense(w, level+1, feature.getLicenseModel());
-		writeURLs(w, level+1, feature);
-		writePrereqs(w, level+1, feature);
-		writePluginEntries(w, level+1, feature);
-		writeNonPluginEntries(w, level+1, feature);
-         
-        w.println("");
-        w.println(in+"</feature>");
-	}
-	
-	private void writeDescription(PrintWriter w, int level, URLEntryModel ue) {
-		writeDescriptionEntry(w,level, ue, "description");
-	}
-	
-	private void writeCopyright(PrintWriter w, int level, URLEntryModel ue) {
-		writeDescriptionEntry(w,level, ue, "copyright");
-	}
-	
-	private void writeLicense(PrintWriter w, int level, URLEntryModel ue) {
-		writeDescriptionEntry(w,level, ue, "license");
-	}
-	
-	private void writeDescriptionEntry(PrintWriter w, int level, URLEntryModel ue, String tag) {
-		if (ue == null) return;
-		String url = ue.getURLString();
-		String txt = ue.getAnnotationNonLocalized();
-		if (url==null && txt==null) return;
-		
-		String in = getIndent(level);
-		w.println("");
-		if (url==null)
-			w.println(in+"<"+tag+">");
-		else {
-			w.print(in+"<"+tag+" url=\""+ue.getURLString()+"\"");
-			if (txt==null)
-				w.println("/>");
-			else
-				w.println(">");
-		}
-		if (txt!=null) {
-			w.println(in + txt);
-			w.println(in+"</"+tag+">");
-		}
-	}
-	
-	private void writeURLs(PrintWriter w, int level, FeatureModel feature) {	
-		URLEntryModel update = feature.getUpdateSiteEntryModel();
-		URLEntryModel[] discovery = feature.getDiscoverySiteEntryModels();		
-		if (update == null && (discovery == null || discovery.length==0)) return;
-		
-		String in = getIndent(level);
-		String in2 = getIndent(level+1);		
-		w.println("");
-		w.println(in+"<url>");
-		
-		if (update != null) {
-			w.println(in2+"<update");
-			if (update.getURLString()!=null)
-				w.println(in2+"   "+"url=\""+update.getURLString()+"\"");
-			if (update.getAnnotationNonLocalized()!=null)
-				w.println(in2+"   "+"label=\""+update.getAnnotationNonLocalized()+"\"");
-			w.println(in2+"   "+"/>");
-		}
-		
-		for (int i=0; discovery!=null && i<discovery.length; i++) {
-			w.println(in2+"<discovery");
-			if (discovery[i].getURLString()!=null)	
-				w.println(in2+"   "+"url=\""+discovery[i].getURLString()+"\"");
-			if (discovery[i].getAnnotationNonLocalized()!=null)
-				w.println(in2+"   "+"label=\""+discovery[i].getAnnotationNonLocalized()+"\"");
-			w.println(in2+"   "+"/>");
-		}
-		
-		w.println(in+"</url>");
-	}
-	
-	private void writePrereqs(PrintWriter w, int level, FeatureModel feature) {	
-		ImportModel[] imp = feature.getImportModels();	
-		if (imp == null || imp.length == 0) return;
-		
-		String in = getIndent(level);
-		String in2 = getIndent(level+1);
-		w.println("");
-		w.println(in+"<requires>");
-		
-		for (int i=0; imp!=null && i<imp.length; i++) {
-			w.println(in2+"<import");
-			if (imp[i].getIdentifier()!=null)
-				w.println(in2+"   "+"plugin=\""+imp[i].getIdentifier()+"\"");
-			if (imp[i].getVersion()!=null)
-				w.println(in2+"   "+"version=\""+imp[i].getVersion()+"\"");
-			if (imp[i].getMatchingRuleName()!=null)
-				w.println(in2+"   "+"match=\""+imp[i].getMatchingRuleName()+"\"");
-			w.println(in2+"   "+"/>");
-		}
-		
-		w.println(in+"</requires>");
-	}
-	
-	private void writePluginEntries(PrintWriter w, int level, FeatureModel feature) {
-		PluginEntryModel[] plugin = feature.getPluginEntryModels();
-		if (plugin == null || plugin.length == 0) return;
-		
-		String in = getIndent(level);
-		w.println("");
-		
-		for (int i=0; i<plugin.length; i++) {
-			w.println(in+"<plugin");
-			if (plugin[i].getPluginIdentifier()!=null)
-				w.println(in+"   "+"id=\""+plugin[i].getPluginIdentifier()+"\"");
-			if (plugin[i].getPluginVersion()!=null)
-				w.println(in+"   "+"version=\""+plugin[i].getPluginVersion()+"\"");
-			if (plugin[i].isFragment())
-				w.println(in+"   "+"fragment=\""+plugin[i].isFragment()+"\"");
-			if (plugin[i].getOS()!=null)
-				w.println(in+"   "+"os=\""+plugin[i].getOS()+"\"");
-			if (plugin[i].getWS()!=null)
-				w.println(in+"   "+"ws=\""+plugin[i].getWS()+"\"");
-			if (plugin[i].getNL()!=null)
-				w.println(in+"   "+"nl=\""+plugin[i].getNL()+"\"");
-			if (plugin[i].getDownloadSize()!=ContentEntryModel.UNKNOWN_SIZE)
-				w.println(in+"   "+"download-size=\""+plugin[i].getDownloadSize()+"\"");
-			if (plugin[i].getInstallSize()!=ContentEntryModel.UNKNOWN_SIZE)
-				w.println(in+"   "+"install-size=\""+plugin[i].getInstallSize()+"\"");
-			w.println(in+"   "+"/>");
-		}
-	}
-	
-	private void writeNonPluginEntries(PrintWriter w, int level, FeatureModel feature) {
-		NonPluginEntryModel[] data = feature.getNonPluginEntryModels();
-		if (data == null || data.length == 0) return;
-		
-		String in = getIndent(level);
-		w.println("");
-		
-		for (int i=0; i<data.length; i++) {
-			w.println(in+"<data");
-			if (data[i].getIdentifier()!=null)
-				w.println(in+"   "+"id=\""+data[i].getIdentifier()+"\"");
-			if (data[i].getOS()!=null)
-				w.println(in+"   "+"os=\""+data[i].getOS()+"\"");
-			if (data[i].getWS()!=null)
-				w.println(in+"   "+"ws=\""+data[i].getWS()+"\"");
-			if (data[i].getNL()!=null)
-				w.println(in+"   "+"nl=\""+data[i].getNL()+"\"");
-			if (data[i].getDownloadSize()!=ContentEntryModel.UNKNOWN_SIZE)
-				w.println(in+"   "+"download-size=\""+data[i].getDownloadSize()+"\"");
-			if (data[i].getInstallSize()!=ContentEntryModel.UNKNOWN_SIZE)
-				w.println(in+"   "+"install-size=\""+data[i].getInstallSize()+"\"");
-			w.println(in+"   "+"/>");
-		}
-	}
-	
-	
-	private String getIndent(int level) {
-		String indent = "";
-		for (int i=0; i<level; i++) 
-			indent += "   ";
-		return indent;
-	}
-}
diff --git a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/Test.java b/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/Test.java
deleted file mode 100644
index 1e189df..0000000
--- a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/Test.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package org.eclipse.update.examples.buildzip;

-

-/*

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

- * All Rights Reserved.

- */ 

-

-import java.net.URL;

-

-import org.eclipse.update.core.*;

- 

-/**

- * unit test harness

- */

-

-public class Test {

-

-	public static void main(String[] args) {

-		

-		try {

-			URL url = new URL("file:d:/downloads/eclipse 2.0/integration-eclipse-SDK-20020109-win32.zip");

-			BuildZipFeatureFactory factory = new BuildZipFeatureFactory();

-			Feature feature = (Feature) factory.createFeature(url,null/*ISite*/);

-			DefaultModelWriter w = new DefaultModelWriter(feature);

-			w.writeFeatureManifest(System.out);

-			

-			System.out.println("");

-			System.out.println("Feature entry references");

-			ContentReference[] refs = feature.getFeatureContentProvider().getFeatureEntryContentReferences(null);

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

-				System.out.println("   "+refs[i].getIdentifier());

-			}

-			

-			System.out.println("");

-			System.out.println("Plug-in entry references");

-			IPluginEntry[] entry = feature.getPluginEntries();

-			refs = feature.getFeatureContentProvider().getPluginEntryContentReferences(entry[0], null);

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

-				System.out.println("   "+refs[i].getIdentifier());

-			}			

-			

-			System.out.println("");

-			System.out.println("Non-plug-in entry references");

-			INonPluginEntry[] data = feature.getNonPluginEntries();

-			refs = feature.getFeatureContentProvider().getNonPluginEntryArchiveReferences(data[0], null);

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

-				System.out.println("   "+refs[i].getIdentifier());

-			}			

-			

-			System.out.println("Done ...");

-		} catch (Exception e) {

-			e.printStackTrace();

-		}		

-	}

-}

diff --git a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/java.page.jpage b/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/java.page.jpage
deleted file mode 100644
index 6cb24bd..0000000
--- a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/buildzip/java.page.jpage
+++ /dev/null
@@ -1,45 +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.examples/src/org/eclipse/update/examples/freeform/FreeFormSiteContentProvider.java b/update/org.eclipse.update.examples/src/org/eclipse/update/examples/freeform/FreeFormSiteContentProvider.java
deleted file mode 100644
index 2cbeab4..0000000
--- a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/freeform/FreeFormSiteContentProvider.java
+++ /dev/null
@@ -1,34 +0,0 @@
-package org.eclipse.update.examples.freeform;

-import java.net.MalformedURLException;

-import java.net.URL;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.core.runtime.IStatus;

-import org.eclipse.core.runtime.Status;

-import org.eclipse.update.core.SiteContentProvider;

-

-public class FreeFormSiteContentProvider extends SiteContentProvider {

-

-	/**

-	 * Constructor for SiteContentProvider.

-	 */

-	public FreeFormSiteContentProvider(URL url) {

-		super(url);

-	}

-	

-	/*

-	 * @see ISiteContentProvider#getArchiveReference(String)

-	 */

-	public URL getArchiveReference(String id) throws CoreException {

-		try {

-			return new URL(getURL(),id);

-		} catch(MalformedURLException e) {

-			throw newCoreException("Unable to return archive URL",e);

-		}

-	}

-	

-	private CoreException newCoreException(String s, Throwable e) throws CoreException {

-		return new CoreException(new Status(IStatus.ERROR,"org.eclipse.update.examples",0,s,e));

-	}

-

-}

diff --git a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/freeform/FreeFormSiteFactory.java b/update/org.eclipse.update.examples/src/org/eclipse/update/examples/freeform/FreeFormSiteFactory.java
deleted file mode 100644
index cb3c7fc..0000000
--- a/update/org.eclipse.update.examples/src/org/eclipse/update/examples/freeform/FreeFormSiteFactory.java
+++ /dev/null
@@ -1,69 +0,0 @@
-package org.eclipse.update.examples.freeform;

-import java.io.IOException;

-import java.io.InputStream;

-import java.net.MalformedURLException;

-import java.net.URL;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.update.core.*;

-import org.eclipse.update.core.BaseSiteFactory;

-import org.eclipse.update.core.ISite;

-import org.eclipse.update.core.Site;

-import org.eclipse.update.core.model.InvalidSiteTypeException;

-import org.eclipse.update.core.model.URLEntryModel;

-

-public class FreeFormSiteFactory extends BaseSiteFactory {

-

-	/*

-	 * @see ISiteFactory#createSite(URL)

-	 */

-	public ISite createSite(URL url)

-		throws CoreException, InvalidSiteTypeException {

-

-		// Create site

-		Site site = null;

-		InputStream is = null;

-		try {

-			is = url.openStream();

-			site = (Site) parseSite(is);

-

-			URLEntryModel realSiteRef = site.getDescriptionModel();

-			if (realSiteRef == null)

-				throw Utilities.newCoreException(

-					"Unable to obtain update site reference",

-					null);

-			String siteURLString = realSiteRef.getURLString();

-			if (siteURLString == null)

-				throw Utilities.newCoreException(

-					"Unable to obtain update site reference",

-					null);

-			URL siteURL = new URL(siteURLString);

-			FreeFormSiteContentProvider contentProvider =

-				new FreeFormSiteContentProvider(siteURL);

-			site.setSiteContentProvider(contentProvider);

-			site.resolve(siteURL, null); // resolve any URLs relative to the site

-

-		} catch (MalformedURLException e){

-			throw Utilities.newCoreException("Unable to create URL",e);

-		} catch (IOException e){

-			throw Utilities.newCoreException("Unable to access URL",e);

-		} finally {

-			if (is != null)

-				try {

-					is.close();

-				} catch (IOException e) {

-				}

-		}

-

-		return site;

-	}

-

-	/*

-	 * @see SiteModelFactory#canParseSiteType(String)

-	 */

-	public boolean canParseSiteType(String type) {

-		return type != null

-			&& type.equals("org.eclipse.update.examples.site.freeform");

-	}

-

-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.scheduler/.classpath b/update/org.eclipse.update.scheduler/.classpath
deleted file mode 100644
index 065ac06..0000000
--- a/update/org.eclipse.update.scheduler/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/update/org.eclipse.update.scheduler/.cvsignore b/update/org.eclipse.update.scheduler/.cvsignore
deleted file mode 100644
index ba077a4..0000000
--- a/update/org.eclipse.update.scheduler/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/update/org.eclipse.update.scheduler/.project b/update/org.eclipse.update.scheduler/.project
deleted file mode 100644
index 2321d8c..0000000
--- a/update/org.eclipse.update.scheduler/.project
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.update.scheduler</name>
-	<comment></comment>
-	<projects>
-		<project>org.eclipse.core.boot</project>
-		<project>org.eclipse.core.runtime</project>
-		<project>org.eclipse.jface.text</project>
-		<project>org.eclipse.ui</project>
-		<project>org.eclipse.ui.editors</project>
-		<project>org.eclipse.ui.ide</project>
-		<project>org.eclipse.ui.views</project>
-		<project>org.eclipse.ui.workbench.texteditor</project>
-		<project>org.eclipse.update.core</project>
-		<project>org.eclipse.update.core.linux</project>
-		<project>org.eclipse.update.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.scheduler/about.html b/update/org.eclipse.update.scheduler/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/update/org.eclipse.update.scheduler/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.scheduler/build.properties b/update/org.eclipse.update.scheduler/build.properties
deleted file mode 100644
index c0f5125..0000000
--- a/update/org.eclipse.update.scheduler/build.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-bin.includes = plugin.properties,\
-               *.jar,\
-               plugin.xml,\
-               about.html
-src.includes = about.html
-source.scheduler.jar = src/
diff --git a/update/org.eclipse.update.scheduler/plugin.properties b/update/org.eclipse.update.scheduler/plugin.properties
deleted file mode 100644
index 5469fc3..0000000
--- a/update/org.eclipse.update.scheduler/plugin.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
-###############################################################################
-#
-# Update Scheduler plugin.xml resources
-#
-pluginName = Automatic Updates Scheduler
-providerName = Eclipse.org
-automaticUpdatesPrefPage = Automatic Updates
\ No newline at end of file
diff --git a/update/org.eclipse.update.scheduler/plugin.xml b/update/org.eclipse.update.scheduler/plugin.xml
deleted file mode 100644
index f73f003..0000000
--- a/update/org.eclipse.update.scheduler/plugin.xml
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.update.scheduler"
-   name="%pluginName"
-   version="3.0.0"
-   provider-name="%providerName"
-   class="org.eclipse.update.internal.scheduler.UpdateScheduler">
-
-   <runtime>
-      <library name="scheduler.jar">
-         <export name="*"/>
-      </library>
-   </runtime>
-   <requires>
-      <import plugin="org.eclipse.core.runtime"/>
-      <import plugin="org.eclipse.ui.ide" optional="true"/>
-      <import plugin="org.eclipse.ui.views" optional="true"/>
-      <import plugin="org.eclipse.jface.text" optional="true"/>
-      <import plugin="org.eclipse.ui.workbench.texteditor" optional="true"/>
-      <import plugin="org.eclipse.ui.editors" optional="true"/>
-      <import plugin="org.eclipse.update.core"/>
-      <import plugin="org.eclipse.update.ui"/>
-      <import plugin="org.eclipse.ui"/>
-   </requires>
-
-	<extension id="preferences" point="org.eclipse.core.runtime.preferences" name="preferences">
-		<initializer class="org.eclipse.update.internal.scheduler.preferences.PreferenceInitializer"/>
-	</extension>
-   <extension
-         point="org.eclipse.ui.startup">
-      <startup class="org.eclipse.update.internal.scheduler.SchedulerStartup">
-      </startup>
-   </extension>
-   <extension
-         point="org.eclipse.ui.preferencePages">
-      <page
-            name="%automaticUpdatesPrefPage"
-            category="org.eclipse.update.internal.ui.preferences.MainPreferencePage"
-            class="org.eclipse.update.internal.scheduler.preferences.AutomaticUpdatesPreferencePage"
-            id="org.eclipse.update.scheduler.AutomaticUpdatesPreferencePage">
-      </page>
-   </extension>
-
-</plugin>
diff --git a/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/AutomaticUpdatesJob.java b/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/AutomaticUpdatesJob.java
deleted file mode 100644
index a5bc048..0000000
--- a/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/AutomaticUpdatesJob.java
+++ /dev/null
@@ -1,188 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.scheduler;
-
-import java.util.ArrayList;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.wizard.WizardDialog;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.update.core.IFeature;
-import org.eclipse.update.internal.core.*;
-import org.eclipse.update.internal.operations.UpdateUtils;
-import org.eclipse.update.internal.ui.wizards.*;
-import org.eclipse.update.operations.*;
-import org.eclipse.update.search.*;
-
-public class AutomaticUpdatesJob extends Job {
-	
-	private class AutomaticSearchResultCollector implements IUpdateSearchResultCollector {
-		public void accept(IFeature feature) {
-			IInstallFeatureOperation operation =
-				OperationsManager
-					.getOperationFactory()
-					.createInstallOperation(null, feature, null, null, null);
-			updates.add(operation);
-		}
-	}
-	
-	// job family	
-	public static final Object family = new Object();
-	private IUpdateSearchResultCollector resultCollector;
-	
-	private static final IStatus OK_STATUS =
-		new Status(
-			IStatus.OK,
-			UpdateScheduler.getPluginId(),
-			IStatus.OK,
-			"", //$NON-NLS-1$
-			null);
-	private UpdateSearchRequest searchRequest;
-	private ArrayList updates;
-
-	public AutomaticUpdatesJob() {
-		super(UpdateScheduler.getString("AutomaticUpdatesJob.AutomaticUpdateSearch")); //$NON-NLS-1$
-		updates = new ArrayList();
-		setPriority(Job.DECORATE);
-	}
-
-
-	/**
-	 * Returns the standard display to be used. The method first checks, if
-	 * the thread calling this method has an associated disaply. If so, this
-	 * display is returned. Otherwise the method returns the default display.
-	 */
-	public static Display getStandardDisplay() {
-		Display display;
-		display = Display.getCurrent();
-		if (display == null)
-			display = Display.getDefault();
-		return display;
-	}
-
-	public boolean belongsTo(Object family) {
-		return AutomaticUpdatesJob.family == family;
-	}
-	
-	public IStatus run(IProgressMonitor monitor) {
-		if (UpdateCore.DEBUG) {
-			UpdateCore.debug("Automatic update search started."); //$NON-NLS-1$
-		}
-		searchRequest = UpdateUtils.createNewUpdatesRequest(null);
-		try {
-			if (resultCollector == null)
-				resultCollector = new AutomaticSearchResultCollector();
-			searchRequest.performSearch(resultCollector, monitor);
-			if (UpdateCore.DEBUG) {
-				UpdateCore.debug("Automatic update search finished - " //$NON-NLS-1$
-				+ updates.size()
-				+ " results."); //$NON-NLS-1$
-			}
-			if (updates.size() > 0) {
-				boolean download = UpdateScheduler.getDefault().getPluginPreferences().getBoolean(UpdateScheduler.P_DOWNLOAD);
-				// silently download if download enabled 
-				if (download)
-				{
-					if (UpdateCore.DEBUG) {
-						UpdateCore.debug("Automatic download of updates started."); //$NON-NLS-1$
-					}
-					for (int i=0; i<updates.size(); i++) {
-						IInstallFeatureOperation op = (IInstallFeatureOperation)updates.get(i);
-						IFeature feature = op.getFeature();
-						UpdateUtils.downloadFeatureContent(op.getTargetSite(), feature, null, monitor);
-					}
-					if (UpdateCore.DEBUG) {
-						UpdateCore.debug("Automatic download of updates finished."); //$NON-NLS-1$
-					}
-				}
-				// prompt the user
-				if (!InstallWizard.isRunning()) {
-					if (download) {
-						getStandardDisplay().asyncExec(new Runnable() {
-							public void run() {
-								asyncNotifyDownloadUser();
-							}
-						});
-					} else {
-						getStandardDisplay().asyncExec(new Runnable() {
-							public void run() {
-								asyncNotifyUser();
-							}
-						});	
-					}
-				}
-				return Job.ASYNC_FINISH;
-			}
-		} catch (CoreException e) {
-			return e.getStatus();
-		}
-		return OK_STATUS;
-	}
-
-	private void asyncNotifyUser() {
-		// ask the user to install updates
-		getStandardDisplay().beep();
-		if (MessageDialog
-			.openQuestion(
-				UpdateScheduler.getActiveWorkbenchShell(),
-				UpdateScheduler.getString("AutomaticUpdatesJob.EclipseUpdates1"), //$NON-NLS-1$
-				UpdateScheduler.getString("AutomaticUpdatesJob.UpdatesAvailable"))) { //$NON-NLS-1$
-			BusyIndicator.showWhile(getStandardDisplay(), new Runnable() {
-				public void run() {
-					openInstallWizard();
-				}
-			});
-		}
-		// notify the manager that the job is done
-		done(OK_STATUS);
-	}
-	
-	private void asyncNotifyDownloadUser() {
-		// ask the user to install updates
-		getStandardDisplay().beep();
-		if (MessageDialog
-			.openQuestion(
-				UpdateScheduler.getActiveWorkbenchShell(),
-				UpdateScheduler.getString("AutomaticUpdatesJob.EclipseUpdates2"), //$NON-NLS-1$
-				UpdateScheduler.getString("AutomaticUpdatesJob.UpdatesDownloaded"))) { //$NON-NLS-1$
-			BusyIndicator.showWhile(getStandardDisplay(), new Runnable() {
-				public void run() {
-					openInstallWizard();
-				}
-			});
-		} else {
-			// Don't discard downloaded data, as next time we compare timestamps.
-			
-			// discard all the downloaded data from cache (may include old data as well)
-			//Utilities.flushLocalFile();
-		}
-		// notify the manager that the job is done
-		done(OK_STATUS);
-	}
-
-	private void openInstallWizard() {
-		if (InstallWizard.isRunning())
-			// job ends and a new one is rescheduled
-			return;
-			
-		InstallWizard wizard = new InstallWizard(searchRequest, updates);
-		WizardDialog dialog =
-			new ResizableInstallWizardDialog(
-				UpdateScheduler.getActiveWorkbenchShell(),
-				wizard,
-				UpdateScheduler.getString("AutomaticUpdatesJob.Updates")); //$NON-NLS-1$
-		dialog.create();
-		dialog.open();
-	}
-}
diff --git a/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/SchedulerStartup.java b/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/SchedulerStartup.java
deleted file mode 100644
index f764f4c..0000000
--- a/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/SchedulerStartup.java
+++ /dev/null
@@ -1,225 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.scheduler;
-
-import java.util.*;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.core.runtime.jobs.*;
-import org.eclipse.ui.*;
-
-
-/**
- * This plug-in is loaded on startup to fork a job that
- * searches for new plug-ins.
- */
-public class SchedulerStartup implements IStartup {
-	// Preferences
-	public static final String P_ENABLED = "enabled"; //$NON-NLS-1$
-
-	public static final String P_SCHEDULE = "schedule"; //$NON-NLS-1$
-	public static final String VALUE_ON_STARTUP = "on-startup"; //$NON-NLS-1$
-	public static final String VALUE_ON_SCHEDULE = "on-schedule"; //$NON-NLS-1$
-	
-	public static final String P_DOWNLOAD = "download"; // value is true or false, default is false //$NON-NLS-1$
-
-	// values are to be picked up from the arryas DAYS and HOURS 
-	public static final String P_DAY = "day"; //$NON-NLS-1$
-	public static final String P_HOUR = "hour"; //$NON-NLS-1$
-
-	// Keeps track of running job
-	private Job job;
-	// Listener for job changes
-	private UpdateJobChangeAdapter jobListener;
-
-	public static final String[] DAYS =
-		{
-			UpdateScheduler.getString("SchedulerStartup.day"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.Monday"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.Tuesday"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.Wednesday"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.Thursday"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.Friday"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.Saturday"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.Sunday") }; //$NON-NLS-1$
-
-	public static final String[] HOURS =
-		{
-			UpdateScheduler.getString("SchedulerStartup.1AM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.2AM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.3AM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.4AM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.5AM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.6AM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.7AM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.8AM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.9AM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.10AM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.11AM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.12PM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.1PM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.2PM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.3PM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.4PM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.5PM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.6PM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.7PM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.8PM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.9PM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.10PM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.11PM"), //$NON-NLS-1$
-			UpdateScheduler.getString("SchedulerStartup.12AM"), //$NON-NLS-1$
-			};
-
-	private class UpdateJobChangeAdapter extends JobChangeAdapter {
-		public void done(IJobChangeEvent event) {
-			if (event.getJob() == SchedulerStartup.this.job) {
-				scheduleUpdateJob();
-			}
-		}
-	}
-	
-	/**
-	 * The constructor.
-	 */
-	public SchedulerStartup() {
-		UpdateScheduler.setScheduler(this);
-		jobListener = new UpdateJobChangeAdapter();
-		Platform.getJobManager().addJobChangeListener(jobListener);
-	}
-
-	public void earlyStartup() {
-		scheduleUpdateJob();
-	}
-
-	public void scheduleUpdateJob() {
-		Preferences pref = UpdateScheduler.getDefault().getPluginPreferences();
-		// See if automatic search is enabled at all
-		if (pref.getBoolean(P_ENABLED) == false)
-			return;
-
-		String schedule = pref.getString(P_SCHEDULE);
-		long delay = -1L;
-		if (schedule.equals(VALUE_ON_STARTUP))
-			// have we already started a job ?
-			if (job == null)
-				delay = 0L;
-			else
-				delay = -1L;
-		else
-			delay = computeDelay(pref);
-		if (delay == -1L)
-			return;
-		startSearch(delay);
-	}
-
-	private int getDay(Preferences pref) {
-		String day = pref.getString(P_DAY);
-		for (int d = 0; d < DAYS.length; d++)
-			if (DAYS[d].equals(day))
-				switch (d) {
-					case 0 :
-						return -1;
-					case 1 :
-						return Calendar.MONDAY;
-					case 2 :
-						return Calendar.TUESDAY;
-					case 3 :
-						return Calendar.WEDNESDAY;
-					case 4 :
-						return Calendar.THURSDAY;
-					case 5 :
-						return Calendar.FRIDAY;
-					case 6 :
-						return Calendar.SATURDAY;
-					case 7 :
-						return Calendar.SUNDAY;
-				}
-		return -1;
-	}
-
-	private int getHour(Preferences pref) {
-		String hour = pref.getString(P_HOUR);
-		for (int h = 0; h < HOURS.length; h++)
-			if (HOURS[h].equals(hour))
-				return h + 1;
-		return 1;
-	}
-	/*
-	 * Computes the number of milliseconds from this moment
-	 * to the next scheduled search. If that moment has
-	 * already passed, returns 0L (start immediately).
-	 */
-	private long computeDelay(Preferences pref) {
-
-		int target_d = getDay(pref);
-		int target_h = getHour(pref);
-
-		Calendar calendar = Calendar.getInstance();
-		// may need to use the BootLoader locale
-		int current_d = calendar.get(Calendar.DAY_OF_WEEK);
-		// starts with SUNDAY
-		int current_h = calendar.get(Calendar.HOUR_OF_DAY);
-		int current_m = calendar.get(Calendar.MINUTE);
-		int current_s = calendar.get(Calendar.SECOND);
-		int current_ms = calendar.get(Calendar.MILLISECOND);
-
-		long delay = 0L; // milliseconds
-
-		if (target_d == -1) {
-			// Compute the delay for "every day at x o'clock"
-			// Is it now ?
-			if (target_h == current_h && current_m == 0 && current_s == 0)
-				return delay;
-
-			int delta_h = target_h - current_h;
-			if (target_h <= current_h)
-				delta_h += 24;
-			delay =
-				((delta_h * 60 - current_m) * 60 - current_s) * 1000 - current_ms;
-			return delay;
-		} else {
-			// Compute the delay for "every Xday at x o'clock"
-			// Is it now ?
-			if (target_d == current_d
-				&& target_h == current_h
-				&& current_m == 0
-				&& current_s == 0)
-				return delay;
-
-			int delta_d = target_d - current_d;
-			if (target_d < current_d
-				|| target_d == current_d
-				&& (target_h < current_h
-					|| target_h == current_h
-					&& current_m > 0))
-				delta_d += 7;
-
-			delay =
-				(((delta_d * 24 + target_h - current_h) * 60 - current_m) * 60 - current_s)* 1000 - current_ms;
-
-			return delay;
-		}
-		//return -1L;
-	}
-
-	private void startSearch(long delay) {
-		if (job != null) {
-			// cancel old job.
-			// We need to deregister the listener first,so we won't automatically start another job
-			Platform.getJobManager().removeJobChangeListener(jobListener);
-			Platform.getJobManager().cancel(AutomaticUpdatesJob.family);
-			Platform.getJobManager().addJobChangeListener(jobListener);
-		}
-		job = new AutomaticUpdatesJob();
-		job.schedule(delay);
-	}
-}
diff --git a/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/UpdateScheduler.java b/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/UpdateScheduler.java
deleted file mode 100644
index b44d5d6..0000000
--- a/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/UpdateScheduler.java
+++ /dev/null
@@ -1,178 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.scheduler;
-
-import java.lang.reflect.*;
-import java.util.*;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.jface.dialogs.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.ui.*;
-import org.eclipse.ui.plugin.*;
-import org.osgi.framework.*;
-
-/**
- * This plug-in is loaded on startup to fork a job that
- * searches for new plug-ins.
- */
-public class UpdateScheduler extends AbstractUIPlugin{
-	// Preferences
-	public static final String P_ENABLED = "enabled"; //$NON-NLS-1$
-	public static final String P_SCHEDULE = "schedule"; //$NON-NLS-1$
-	public static final String VALUE_ON_STARTUP = "on-startup"; //$NON-NLS-1$
-	public static final String VALUE_ON_SCHEDULE = "on-schedule"; //$NON-NLS-1$
-	public static final String P_DOWNLOAD = "download"; // value is true or false, default is false //$NON-NLS-1$
-
-	//The shared instance.
-	private static UpdateScheduler plugin;
-	//Resource bundle.
-	private ResourceBundle resourceBundle;
-	
-	// singleton
-	private static SchedulerStartup scheduler;
-
-	/**
-	 * The constructor.
-	 */
-	public UpdateScheduler() {
-		plugin = this;
-	}
-
-
-	public ResourceBundle getResourceBundle() {
-		if (resourceBundle == null)
-			try {
-				resourceBundle = ResourceBundle.getBundle("org.eclipse.update.internal.scheduler.UpdateSchedulerResources"); //$NON-NLS-1$
-			} catch (MissingResourceException x) {
-				resourceBundle = null;
-			}
-		return resourceBundle;
-	}
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static UpdateScheduler getDefault() {
-		return plugin;
-	}
-
-	/**
-	 * Returns the string from the plugin's resource bundle,
-	 * or 'key' if not found.
-	 */
-	public static String getString(String key) {
-		ResourceBundle bundle =
-			UpdateScheduler.getDefault().getResourceBundle();
-		try {
-			return bundle.getString(key);
-		} catch (MissingResourceException e) {
-			return key;
-		}
-	}
-
-	public static String getFormattedMessage(String key, String[] args) {
-		String text = getString(key);
-		return java.text.MessageFormat.format(text, args);
-	}
-
-	public static String getFormattedMessage(String key, String arg) {
-		String text = getString(key);
-		return java.text.MessageFormat.format(text, new String[] { arg });
-	}
-
-	public static String getPluginId() {
-		return getDefault().getBundle().getSymbolicName();
-	}
-
-	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 (status.getSeverity() != IStatus.INFO) {
-			if (showErrorDialog)
-				ErrorDialog.openError(
-					getActiveWorkbenchShell(),
-					null,
-					null,
-					status);
-//			 Should log on the update plugin's log
-//			Platform.getPlugin("org.eclipse.core.runtime").getLog().log(status); //$NON-NLS-1$
-			Bundle bundle = Platform.getBundle("org.eclipse.update.scheduler");  //$NON-NLS-1$
-			Platform.getLog(bundle).log(status);
-		} else {
-			MessageDialog.openInformation(
-				getActiveWorkbenchShell(),
-				null,
-				status.getMessage());
-		}
-	}
-
-	public static IWorkbenchPage getActivePage() {
-		UpdateScheduler plugin = getDefault();
-		IWorkbenchWindow window =
-			plugin.getWorkbench().getActiveWorkbenchWindow();
-		if (window != null)
-			return window.getActivePage();
-		return null;
-	}
-
-	public static Shell getActiveWorkbenchShell() {
-		IWorkbenchWindow window = getActiveWorkbenchWindow();
-		return window != null ? window.getShell() : null;
-	}
-
-	public static IWorkbenchWindow getActiveWorkbenchWindow() {
-		return getDefault().getWorkbench().getActiveWorkbenchWindow();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
-	 */
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-	}
-	
-	public static SchedulerStartup getScheduler() {
-		// If the scheduler was disabled, it does not get initialized
-		if (scheduler == null)
-			scheduler = new SchedulerStartup();
-		return scheduler;
-	}
-	
-	static void setScheduler(SchedulerStartup scheduler) {
-		UpdateScheduler.scheduler = scheduler;
-	}
-}
diff --git a/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/UpdateSchedulerResources.properties b/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/UpdateSchedulerResources.properties
deleted file mode 100644
index 3680cd4..0000000
--- a/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/UpdateSchedulerResources.properties
+++ /dev/null
@@ -1,58 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-#Messages for Update Scheduler plug-in
-
-SchedulerStartup.day=Every day
-SchedulerStartup.Monday=Every Monday
-SchedulerStartup.Tuesday=Every Tuesday
-SchedulerStartup.Wednesday=Every Wednesday
-SchedulerStartup.Thursday=Every Thursday
-SchedulerStartup.Friday=Every Friday
-SchedulerStartup.Saturday=Every Saturday
-SchedulerStartup.Sunday=Every Sunday
-SchedulerStartup.1AM=1:00 AM
-SchedulerStartup.2AM=2:00 AM
-SchedulerStartup.3AM=3:00 AM
-SchedulerStartup.4AM=4:00 AM
-SchedulerStartup.5AM=5:00 AM
-SchedulerStartup.6AM=6:00 AM
-SchedulerStartup.7AM=7:00 AM
-SchedulerStartup.8AM=8:00 AM
-SchedulerStartup.9AM=9:00 AM
-SchedulerStartup.10AM=10:00 AM
-SchedulerStartup.11AM=11:00 AM
-SchedulerStartup.12PM=12:00 PM
-SchedulerStartup.1PM=1:00 PM
-SchedulerStartup.2PM=2:00 PM
-SchedulerStartup.3PM=3:00 PM
-SchedulerStartup.4PM=4:00 PM
-SchedulerStartup.5PM=5:00 PM
-SchedulerStartup.6PM=6:00 PM
-SchedulerStartup.7PM=7:00 PM
-SchedulerStartup.8PM=8:00 PM
-SchedulerStartup.9PM=9:00 PM
-SchedulerStartup.10PM=10:00 PM
-SchedulerStartup.11PM=11:00 PM
-SchedulerStartup.12AM=12:00 AM
-AutomaticUpdatesJob.AutomaticUpdateSearch=Automatic Update Search
-AutomaticUpdatesPreferencePage.findUpdates=Automatically &find new updates and notify me
-AutomaticUpdatesPreferencePage.UpdateSchedule=Update &Schedule
-AutomaticUpdatesPreferencePage.findOnStart=Look for updates each time platform is started
-AutomaticUpdatesPreferencePage.findOnSchedule=Look for updates on the following schedule:
-AutomaticUpdatesPreferencePage.downloadOptions=&Download Options
-AutomaticUpdatesPreferencePage.searchAndNotify=Search for updates and notify me when they are available
-AutomaticUpdatesPreferencePage.downloadAndNotify=Download new updates automatically and notify me when ready to install them
-AutomaticUpdatesJob.EclipseUpdates1=Eclipse Updates
-AutomaticUpdatesJob.UpdatesAvailable=New updates are available. Do you want to review and install them now?
-AutomaticUpdatesJob.EclipseUpdates2=Eclipse Updates
-AutomaticUpdatesPreferencePage.at=at
-AutomaticUpdatesJob.UpdatesDownloaded=New updates are available and downloaded. Do you want to review and install them now?
-AutomaticUpdatesJob.Updates=Updates
diff --git a/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/preferences/AutomaticUpdatesPreferencePage.java b/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/preferences/AutomaticUpdatesPreferencePage.java
deleted file mode 100644
index 55236bd..0000000
--- a/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/preferences/AutomaticUpdatesPreferencePage.java
+++ /dev/null
@@ -1,229 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.scheduler.preferences;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.preference.PreferencePage;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.ui.*;
-import org.eclipse.update.internal.scheduler.*;
-import org.eclipse.update.internal.scheduler.UpdateScheduler;
-
-public class AutomaticUpdatesPreferencePage
-	extends PreferencePage
-	implements IWorkbenchPreferencePage {
-
-	private Button enabledCheck;
-	private Button onStartupRadio;
-	private Button onScheduleRadio;
-	private Combo dayCombo;
-	private Combo hourCombo;
-	private Button searchOnlyRadio;
-	private Button searchAndDownloadRadio;
-	private Group updateScheduleGroup;
-	private Group downloadGroup;
-
-	public void init(IWorkbench workbench) {
-	}
-
-	protected Control createContents(Composite parent) {
-		Composite container = new Composite(parent, SWT.NULL);
-		GridLayout layout = new GridLayout();
-		layout.marginWidth = layout.marginHeight = 0;
-		container.setLayout(layout);
-
-		enabledCheck = new Button(container, SWT.CHECK);
-		enabledCheck.setText(UpdateScheduler.getString("AutomaticUpdatesPreferencePage.findUpdates")); //$NON-NLS-1$
-
-		createSpacer(container, 1);
-
-		updateScheduleGroup = new Group(container, SWT.NONE);
-		updateScheduleGroup.setText(UpdateScheduler.getString("AutomaticUpdatesPreferencePage.UpdateSchedule")); //$NON-NLS-1$
-		layout = new GridLayout();
-		layout.numColumns = 3;
-		updateScheduleGroup.setLayout(layout);
-		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
-		updateScheduleGroup.setLayoutData(gd);
-
-		onStartupRadio = new Button(updateScheduleGroup, SWT.RADIO);
-		onStartupRadio.setText(
-			UpdateScheduler.getString("AutomaticUpdatesPreferencePage.findOnStart")); //$NON-NLS-1$
-		gd = new GridData();
-		gd.horizontalSpan = 3;
-		onStartupRadio.setLayoutData(gd);
-		onStartupRadio.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				pageChanged();
-			}
-		});
-
-		onScheduleRadio = new Button(updateScheduleGroup, SWT.RADIO);
-		onScheduleRadio.setText(UpdateScheduler.getString("AutomaticUpdatesPreferencePage.findOnSchedule")); //$NON-NLS-1$
-		gd = new GridData();
-		gd.horizontalSpan = 3;
-		onScheduleRadio.setLayoutData(gd);
-		onScheduleRadio.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				pageChanged();
-			}
-		});
-
-		dayCombo = new Combo(updateScheduleGroup, SWT.READ_ONLY);
-		dayCombo.setItems(SchedulerStartup.DAYS);
-		gd = new GridData();
-		gd.widthHint = 200;
-		gd.horizontalIndent = 30;
-		dayCombo.setLayoutData(gd);
-		
-		Label label = new Label(updateScheduleGroup, SWT.NULL);
-		label.setText(UpdateScheduler.getString("AutomaticUpdatesPreferencePage.at")); //$NON-NLS-1$
-		
-		hourCombo = new Combo(updateScheduleGroup, SWT.READ_ONLY);
-		hourCombo.setItems(SchedulerStartup.HOURS);
-		gd = new GridData();
-		gd.widthHint = 100;
-		hourCombo.setLayoutData(gd);
-	
-		createSpacer(container, 1);
-		
-		downloadGroup = new Group(container, SWT.NONE);
-		downloadGroup.setText(UpdateScheduler.getString("AutomaticUpdatesPreferencePage.downloadOptions")); //$NON-NLS-1$
-		layout = new GridLayout();
-		layout.numColumns = 3;
-		downloadGroup.setLayout(layout);
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		downloadGroup.setLayoutData(gd);
-
-		searchOnlyRadio = new Button(downloadGroup, SWT.RADIO);
-		searchOnlyRadio.setText(
-			UpdateScheduler.getString("AutomaticUpdatesPreferencePage.searchAndNotify")); //$NON-NLS-1$
-		gd = new GridData();
-		gd.horizontalSpan = 3;
-		searchOnlyRadio.setLayoutData(gd);
-		searchOnlyRadio.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				pageChanged();
-			}
-		});
-
-		searchAndDownloadRadio = new Button(downloadGroup, SWT.RADIO);
-		searchAndDownloadRadio.setText(UpdateScheduler.getString("AutomaticUpdatesPreferencePage.downloadAndNotify")); //$NON-NLS-1$
-		gd = new GridData();
-		gd.horizontalSpan = 3;
-		searchAndDownloadRadio.setLayoutData(gd);
-		searchAndDownloadRadio.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				pageChanged();
-			}
-		});
-			
-		initialize();
-
-		enabledCheck.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				pageChanged();
-			}
-		});
-
-		Dialog.applyDialogFont(container);
-		return container;
-	}
-
-	protected void createSpacer(Composite composite, int columnSpan) {
-		Label label = new Label(composite, SWT.NONE);
-		GridData gd = new GridData();
-		gd.horizontalSpan = columnSpan;
-		label.setLayoutData(gd);
-	}
-
-	private void initialize() {
-		Preferences pref = UpdateScheduler.getDefault().getPluginPreferences();
-		enabledCheck.setSelection(pref.getBoolean(UpdateScheduler.P_ENABLED));
-		setSchedule(pref.getString(UpdateScheduler.P_SCHEDULE));
-
-		dayCombo.setText(SchedulerStartup.DAYS[getDay(pref)]);
-		hourCombo.setText(SchedulerStartup.HOURS[getHour(pref)]);
-		
-		searchOnlyRadio.setSelection(!pref.getBoolean(UpdateScheduler.P_DOWNLOAD));
-		searchAndDownloadRadio.setSelection(pref.getBoolean(UpdateScheduler.P_DOWNLOAD));
-
-		pageChanged();
-	}
-
-	private void setSchedule(String value) {
-		if (value.equals(UpdateScheduler.VALUE_ON_STARTUP))
-			onStartupRadio.setSelection(true);
-		else
-			onScheduleRadio.setSelection(true);
-	}
-
-	private void pageChanged() {
-		boolean master = enabledCheck.getSelection();
-		updateScheduleGroup.setEnabled(master);
-		onStartupRadio.setEnabled(master);
-		onScheduleRadio.setEnabled(master);
-		dayCombo.setEnabled(master && onScheduleRadio.getSelection());
-		hourCombo.setEnabled(master && onScheduleRadio.getSelection());
-		downloadGroup.setEnabled(master);
-		searchOnlyRadio.setEnabled(master);
-		searchAndDownloadRadio.setEnabled(master);
-	}
-
-	protected void performDefaults() {
-		super.performDefaults();
-		Preferences pref = UpdateScheduler.getDefault().getPluginPreferences();
-		enabledCheck.setSelection(
-			pref.getDefaultBoolean(UpdateScheduler.P_ENABLED));
-	}
-
-	/** 
-	 * Method declared on IPreferencePage.
-	 * Subclasses should override
-	 */
-	public boolean performOk() {
-		Preferences pref = UpdateScheduler.getDefault().getPluginPreferences();
-		pref.setValue(UpdateScheduler.P_ENABLED, enabledCheck.getSelection());
-		if (onStartupRadio.getSelection())
-			pref.setValue(UpdateScheduler.P_SCHEDULE, UpdateScheduler.VALUE_ON_STARTUP);
-		else 
-			pref.setValue(UpdateScheduler.P_SCHEDULE, UpdateScheduler.VALUE_ON_SCHEDULE);
-			
-		pref.setValue(SchedulerStartup.P_DAY, dayCombo.getText());
-		pref.setValue(SchedulerStartup.P_HOUR, hourCombo.getText());
-		
-		pref.setValue(UpdateScheduler.P_DOWNLOAD, searchAndDownloadRadio.getSelection());
-		
-		UpdateScheduler.getDefault().savePluginPreferences();
-		
-		UpdateScheduler.getScheduler().scheduleUpdateJob();
-		return true;
-	}
-	
-	private int getDay(Preferences pref) {
-		String day = pref.getString(SchedulerStartup.P_DAY);
-		for (int i=0; i<SchedulerStartup.DAYS.length; i++)
-			if (SchedulerStartup.DAYS[i].equals(day))
-				return i;
-		return 0;
-	}
-	
-	private int getHour(Preferences pref) {
-		String hour = pref.getString(SchedulerStartup.P_HOUR);
-		for (int i=0; i<SchedulerStartup.HOURS.length; i++)
-			if (SchedulerStartup.HOURS[i].equals(hour))
-				return i;
-		return 0;
-	}
-}
diff --git a/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/preferences/PreferenceInitializer.java b/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/preferences/PreferenceInitializer.java
deleted file mode 100644
index 42a9708..0000000
--- a/update/org.eclipse.update.scheduler/src/org/eclipse/update/internal/scheduler/preferences/PreferenceInitializer.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.internal.scheduler.preferences;
-
-import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
-import org.eclipse.core.runtime.preferences.DefaultScope;
-import org.eclipse.update.internal.scheduler.UpdateScheduler;
-import org.osgi.service.prefs.Preferences;
-
-
-/**
- * @since 3.1
- */
-public class PreferenceInitializer extends AbstractPreferenceInitializer {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer#initializeDefaultPreferences()
-	 */
-	public void initializeDefaultPreferences() {
-		Preferences node = new DefaultScope().getNode("org.eclipse.update.scheduler");
-		node.putBoolean(UpdateScheduler.P_ENABLED, false);
-		node.put(UpdateScheduler.P_SCHEDULE, UpdateScheduler.VALUE_ON_STARTUP);
-		node.putBoolean(UpdateScheduler.P_DOWNLOAD, false);
-	}
-
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/.classpath b/update/org.eclipse.update.tests.core/.classpath
deleted file mode 100644
index 4848249..0000000
--- a/update/org.eclipse.update.tests.core/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<classpath>

-	<classpathentry kind="src" path="src"/>

-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>

-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>

-	<classpathentry kind="output" path="bin"/>

-</classpath>

diff --git a/update/org.eclipse.update.tests.core/.cvsignore b/update/org.eclipse.update.tests.core/.cvsignore
deleted file mode 100644
index c5e82d7..0000000
--- a/update/org.eclipse.update.tests.core/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/.project b/update/org.eclipse.update.tests.core/.project
deleted file mode 100644
index fc1ca7f..0000000
--- a/update/org.eclipse.update.tests.core/.project
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<projectDescription>

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

-	<comment></comment>

-	<projects>

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

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

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

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

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

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

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

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

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

-		<project>org.junit</project>

-	</projects>

-	<buildSpec>

-		<buildCommand>

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

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.ui.ManifestBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-		<buildCommand>

-			<name>org.eclipse.pde.ui.SchemaBuilder</name>

-			<arguments>

-			</arguments>

-		</buildCommand>

-	</buildSpec>

-	<natures>

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

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

-	</natures>

-</projectDescription>

diff --git a/update/org.eclipse.update.tests.core/about.html b/update/org.eclipse.update.tests.core/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/update/org.eclipse.update.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>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.tests.core/build.properties b/update/org.eclipse.update.tests.core/build.properties
deleted file mode 100644
index 2861d65..0000000
--- a/update/org.eclipse.update.tests.core/build.properties
+++ /dev/null
@@ -1,12 +0,0 @@
-###############################################################################

-# Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

-###############################################################################

-source.updatetests.jar=src/

-bin.includes=*.jar,about.html,test.xml,plugin.xml,data/,webserver/
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/features/feature3/feature.xml b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/features/feature3/feature.xml
deleted file mode 100644
index 361c287..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/features/feature3/feature.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature id="org.eclipse.update.core.tests.feature3" image="feature1.gif" label="Third Feature" provider-name="Smart Company" version="1.0.0" >
-  <description>Description</description>
-  <copyright>copyright</copyright>
-  <license>license</license>
-  <url>
-    <update label="URL to update the feature" url="http://www.eclipse.org/path/feature1/"/>
-    <discovery label="Discovery 1" url="http://www.eclipse.org"/>
-    <discovery label="Discovery 2" url="http://www.eclipse.org"/>
-  </url>
-  <plugin download-size="1500" id="org.eclipse.update.core.tests.feature1.plugin1" install-size="1000" fragment="false" nl="en" os="WIN32,LINUX,HPUX" version="3.5.6" ws="WIN32,MOTIF,GTK"/>
-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/Pde_core.jar b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/Pde_core.jar
deleted file mode 100644
index f107217..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/Pde_core.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/help.jar b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/help.jar
deleted file mode 100644
index 7584f66..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/help.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/junit_3.7.jar b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/junit_3.7.jar
deleted file mode 100644
index 67587b2..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/junit_3.7.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml
deleted file mode 100644
index 7f05d82..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<plugin name="JUnit Test Framework" id="org.eclipse.update.core.tests.feature1.plugin1" version="3.5.6" vendor-name="junit.org">

-  <runtime>

-    <library name="junit.jar">

-      <export name="*"/>

-    </library>

-  </runtime>

-</plugin>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/org.eclipse.update.plugin1_1.1.1/src.jar b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/org.eclipse.update.plugin1_1.1.1/src.jar
deleted file mode 100644
index 2d4d609..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data/plugins/org.eclipse.update.plugin1_1.1.1/src.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/features/feature3/feature.xml b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/features/feature3/feature.xml
deleted file mode 100644
index c0634a4..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/features/feature3/feature.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature id="org.eclipse.update.core.tests.feature3" image="feature1.gif" label="Third Feature" provider-name="Smart Company" version="1.0.0" >
-  <description>Description</description>
-  <copyright>copyright</copyright>
-  <license>license</license>
-  <url>
-    <update label="URL to update the feature" url="http://www.eclipse.org/path/feature1/"/>
-    <discovery label="Discovery 1" url="http://www.eclipse.org"/>
-    <discovery label="Discovery 2" url="http://www.eclipse.org"/>
-  </url>
-  <plugin download-size="1500" id="org.eclipse.update.plugin1" install-size="1000" fragment="false" nl="en,fr" os="WIN32,LINUX,HPUX" version="1.1.1" ws="WIN32,GTK,MOTIF"/>
-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/features/helpFeature.jar b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/features/helpFeature.jar
deleted file mode 100644
index 0213585..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/features/helpFeature.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/features/org.eclipse.pde.feature_1.0.0.jar b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/features/org.eclipse.pde.feature_1.0.0.jar
deleted file mode 100644
index 7e23cab..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/features/org.eclipse.pde.feature_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/info/img/top_titlsm.gif b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/info/img/top_titlsm.gif
deleted file mode 100644
index 3917bb6..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/info/img/top_titlsm.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/info/img/wel_ml.jpg b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/info/img/wel_ml.jpg
deleted file mode 100644
index 01e33df..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/info/img/wel_ml.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/info/siteInfo.html b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/info/siteInfo.html
deleted file mode 100644
index b065aa3..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/info/siteInfo.html
+++ /dev/null
@@ -1,63 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

-<html>

-<head>

-</head>

-  <body>

-<img src="img/top_titlsm.gif" alt="" width="460" height="50">

-<br>

-<br>

-     It started with Smalltalk<br>

-    OTI has been building tools for platform-independent OO development since

-  1988. Our ENVY&reg; technology first brought collaborative software development,

-  version management and shared repositories to Smalltalk. IBM is one of

-many   companies to license ENVY, which continues to be the foundation of

-VisualAge&reg;   Smalltalk.<br>

-<br>

-<br>

-<br>

-      Next came Java&#8482;<br>

-    Because of our expertise in OO technology, IBM turned to OTI for a next-generation

-  development environment for Java. The result is VisualAge for Java, which

-  continues to win awards for its innovative IDE and team support. InfoWorld

-  has chosen VisualAge for Java as development tool of the year - year after

-  year after year!<br>

-<br>

-<br>

-<br>

-      Then pervasive computing<br>

-    OTI continues its development of IBM's VisualAge Micro Edition, a state-of-the-art

-  platform for collaborative development of embedded applications and systems

-  that are very lean. As the steady stream of press releases attests, VisualAge

-  Micro Edition is already licensed to the leading microchip manufacturers,

-  microkernel developers, and producers of handheld and consumer devices.<br>

-<br>

-<br>

-<br>

-      Now it's Eclipse<br>

-    OTI has built the next generation IBM application development tools platform.

-  Eclipse is a kind of universal tool platform - an open extensible IDE for

-  anything and nothing in particular. The real value comes from tool plug-ins

-  that "teach" Eclipse how to work with things - java files, web content,

-graphics,  video - almost anything you can imagine. Eclipse allows you to

-independently  develop tools that integrate with other people's tools so

-seamlessly you won't know where one tool ends and another starts. The IBM

-supported version of this technology, WebSphere Studio Workbench, will be

-the core of the next  generation of IBM and IBM Business Partner e-business

-tools optimized for  the WebSphere software platform.<br>

-<br>

-<br>

-<br>

-      So what's next?<br>

-    OTI continues to deliver object-oriented technology that scales across

- platforms,  across teams and across project size. From a mainframe to a

-watch  - we're  closing in on that vision.<br>

-<br>

-<img src="img/wel_ml.jpg" width="460" height="460" alt="">

-<br>

-<br>

-<br>

-<br>

-<br>

-<br>

-</body>

-</html>

diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/Pde_core.jar b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/Pde_core.jar
deleted file mode 100644
index f107217..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/Pde_core.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/help.jar b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/help.jar
deleted file mode 100644
index 7584f66..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/help.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/junit_3.7.jar b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/junit_3.7.jar
deleted file mode 100644
index 67587b2..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/junit_3.7.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml
deleted file mode 100644
index 7f05d82..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<plugin name="JUnit Test Framework" id="org.eclipse.update.core.tests.feature1.plugin1" version="3.5.6" vendor-name="junit.org">

-  <runtime>

-    <library name="junit.jar">

-      <export name="*"/>

-    </library>

-  </runtime>

-</plugin>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/org.eclipse.update.plugin1_1.1.1/src.jar b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/org.eclipse.update.plugin1_1.1.1/src.jar
deleted file mode 100644
index 2d4d609..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/plugins/org.eclipse.update.plugin1_1.1.1/src.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/site.xml b/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/site.xml
deleted file mode 100644
index b6211a8..0000000
--- a/update/org.eclipse.update.tests.core/data/ExecutableFeaturePackagedSite/data2/site.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<site type="org.eclipse.update.core.file">

-<description url="info/siteInfo.html"/>

-  <feature url="features/helpFeature.jar" type="org.eclipse.update.core.packaged">

-    <category name="eclipse/UML"/>

-  </feature>

-  <feature url="features/org.eclipse.pde.feature_1.0.0.jar" type="org.eclipse.update.core.packaged">

-    <category name="eclipse/J2EE"/>

-  </feature>

-  <feature url="features/feature3/" os="LINUX">

-    <category name="eclipse"/>

-  </feature>

-  <archive path="plugins/org.eclipse.help_1.0.0.jar" url="plugins/help.jar"/>

-  <archive path="plugins/org.eclipse.pde.core_1.0.0.jar" url="plugins/Pde_core.jar"/>

-  <archive path="plugins/org.junit_3.5.0.jar" url="plugins/junit_3.7.jar"/>

-  <archive path="plugins/org.eclipse.update.plugin1_1.1.1.jar" url="plugins/org.eclipse.update.plugin1_1.1.1"/>  

-  <category-def label="IBM WSAD Tools" name="eclipse"/>

-  <category-def label="J2EE tools" name="eclipse/J2EE"/>

-  <category-def label="EJB Tools" name="eclipse/J2EE/EJB"/>

-  <category-def label="UML tools" name="eclipse/UML"/>

-  <category-def label="Messaging Tools" name="B2B"/>  

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/FTPLikeSite/site.xml b/update/org.eclipse.update.tests.core/data/FTPLikeSite/site.xml
deleted file mode 100644
index da62e2e..0000000
--- a/update/org.eclipse.update.tests.core/data/FTPLikeSite/site.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<site type="org.eclipse.update.tests.core.ftp">

-  <feature url="features/feature3/features2.jarfile"/>

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site1/features/feature3/feature.xml b/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site1/features/feature3/feature.xml
deleted file mode 100644
index 2c98f42..0000000
--- a/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site1/features/feature3/feature.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<feature id="org.eclipse.update.core.tests.feature3" image="feature1.gif" label="Third Feature" provider-name="Smart Company" version="1.0.0">

-  <description>Description</description>

-  <copyright>copyright</copyright>

-  <license>license</license>

-  <url>

-    <update label="URL to update the feature" url="http://www.eclipse.org/path/feature1/"/>

-    <discovery label="Discovery 1" url="http://www.eclipse.org"/>

-    <discovery label="Discovery 2" url="http://www.eclipse.org"/>

-  </url>

-  <plugin download-size="1500" id="org.eclipse.update.plugin1" install-size="1000" fragment="false" os="WIN32,LINUX" version="1.1.1" ws="WIN32,MOTIF,GTK"/>

-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site1/site.xml b/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site1/site.xml
deleted file mode 100644
index 486d119..0000000
--- a/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site1/site.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<site type="org.eclipse.update.core.file">

-  <feature url="features/feature3" type="org.eclipse.update.tests.core.feature1"/>

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site2/features/feature3/features2.jarfile b/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site2/features/feature3/features2.jarfile
deleted file mode 100644
index 240ab4f..0000000
--- a/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site2/features/feature3/features2.jarfile
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site2/site.xml b/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site2/site.xml
deleted file mode 100644
index fb5fe0e..0000000
--- a/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site2/site.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<site type="org.eclipse.update.core.file">

-  <feature url="features/feature3/features2.jarfile" type="org.eclipse.update.core.packaged"/>

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site3/features/feature3/features2.jarfile b/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site3/features/feature3/features2.jarfile
deleted file mode 100644
index 240ab4f..0000000
--- a/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site3/features/feature3/features2.jarfile
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site3/site.xml b/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site3/site.xml
deleted file mode 100644
index daf372d..0000000
--- a/update/org.eclipse.update.tests.core/data/FeatureTypeExamples/site3/site.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<site type="org.eclipse.update.core.file">

-  <feature url="features/feature3/features2.jarfile" type="org.eclipse.update.core.unknowntype.jar"/>

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/Site with space/features space/helpFeature.jar b/update/org.eclipse.update.tests.core/data/Site with space/features space/helpFeature.jar
deleted file mode 100644
index 4b83c7e..0000000
--- a/update/org.eclipse.update.tests.core/data/Site with space/features space/helpFeature.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/Site with space/features space/space feature.jar b/update/org.eclipse.update.tests.core/data/Site with space/features space/space feature.jar
deleted file mode 100644
index 4f1e991..0000000
--- a/update/org.eclipse.update.tests.core/data/Site with space/features space/space feature.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/Site with space/info/img/top_titlsm.gif b/update/org.eclipse.update.tests.core/data/Site with space/info/img/top_titlsm.gif
deleted file mode 100644
index 3917bb6..0000000
--- a/update/org.eclipse.update.tests.core/data/Site with space/info/img/top_titlsm.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/Site with space/info/img/wel_ml.jpg b/update/org.eclipse.update.tests.core/data/Site with space/info/img/wel_ml.jpg
deleted file mode 100644
index 01e33df..0000000
--- a/update/org.eclipse.update.tests.core/data/Site with space/info/img/wel_ml.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/Site with space/info/siteInfo.html b/update/org.eclipse.update.tests.core/data/Site with space/info/siteInfo.html
deleted file mode 100644
index b065aa3..0000000
--- a/update/org.eclipse.update.tests.core/data/Site with space/info/siteInfo.html
+++ /dev/null
@@ -1,63 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

-<html>

-<head>

-</head>

-  <body>

-<img src="img/top_titlsm.gif" alt="" width="460" height="50">

-<br>

-<br>

-     It started with Smalltalk<br>

-    OTI has been building tools for platform-independent OO development since

-  1988. Our ENVY&reg; technology first brought collaborative software development,

-  version management and shared repositories to Smalltalk. IBM is one of

-many   companies to license ENVY, which continues to be the foundation of

-VisualAge&reg;   Smalltalk.<br>

-<br>

-<br>

-<br>

-      Next came Java&#8482;<br>

-    Because of our expertise in OO technology, IBM turned to OTI for a next-generation

-  development environment for Java. The result is VisualAge for Java, which

-  continues to win awards for its innovative IDE and team support. InfoWorld

-  has chosen VisualAge for Java as development tool of the year - year after

-  year after year!<br>

-<br>

-<br>

-<br>

-      Then pervasive computing<br>

-    OTI continues its development of IBM's VisualAge Micro Edition, a state-of-the-art

-  platform for collaborative development of embedded applications and systems

-  that are very lean. As the steady stream of press releases attests, VisualAge

-  Micro Edition is already licensed to the leading microchip manufacturers,

-  microkernel developers, and producers of handheld and consumer devices.<br>

-<br>

-<br>

-<br>

-      Now it's Eclipse<br>

-    OTI has built the next generation IBM application development tools platform.

-  Eclipse is a kind of universal tool platform - an open extensible IDE for

-  anything and nothing in particular. The real value comes from tool plug-ins

-  that "teach" Eclipse how to work with things - java files, web content,

-graphics,  video - almost anything you can imagine. Eclipse allows you to

-independently  develop tools that integrate with other people's tools so

-seamlessly you won't know where one tool ends and another starts. The IBM

-supported version of this technology, WebSphere Studio Workbench, will be

-the core of the next  generation of IBM and IBM Business Partner e-business

-tools optimized for  the WebSphere software platform.<br>

-<br>

-<br>

-<br>

-      So what's next?<br>

-    OTI continues to deliver object-oriented technology that scales across

- platforms,  across teams and across project size. From a mainframe to a

-watch  - we're  closing in on that vision.<br>

-<br>

-<img src="img/wel_ml.jpg" width="460" height="460" alt="">

-<br>

-<br>

-<br>

-<br>

-<br>

-<br>

-</body>

-</html>

diff --git a/update/org.eclipse.update.tests.core/data/Site with space/install/features space/feature3/feature.xml b/update/org.eclipse.update.tests.core/data/Site with space/install/features space/feature3/feature.xml
deleted file mode 100644
index 3b7890b..0000000
--- a/update/org.eclipse.update.tests.core/data/Site with space/install/features space/feature3/feature.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature id="org.eclipse.update.core.tests.feature3" image="feature1.gif" label="Third Feature" provider-name="Smart Company" version="1.0.0" >
-  <description>Description</description>
-  <copyright>copyright</copyright>
-  <license>license</license>
-  <url>
-    <update label="URL to update the feature" url="http://www.eclipse.org/path/feature1/"/>
-    <discovery label="Discovery 1" url="http://www.eclipse.org"/>
-    <discovery label="Discovery 2" url="http://www.eclipse.org"/>
-  </url>
-  <plugin download-size="1500" id="org.eclipse.update.plugin1" install-size="1000" fragment="false" nl="en,fr" os="WIN32,LINUX,HPUX" version="1.1.1" ws="WIN32,MOTIF,GTK"/>
-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/Site with space/plugins space/Pde_core.jar b/update/org.eclipse.update.tests.core/data/Site with space/plugins space/Pde_core.jar
deleted file mode 100644
index f107217..0000000
--- a/update/org.eclipse.update.tests.core/data/Site with space/plugins space/Pde_core.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/Site with space/plugins space/help.jar b/update/org.eclipse.update.tests.core/data/Site with space/plugins space/help.jar
deleted file mode 100644
index 7584f66..0000000
--- a/update/org.eclipse.update.tests.core/data/Site with space/plugins space/help.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/Site with space/plugins space/junit_3.7.jar b/update/org.eclipse.update.tests.core/data/Site with space/plugins space/junit_3.7.jar
deleted file mode 100644
index 67587b2..0000000
--- a/update/org.eclipse.update.tests.core/data/Site with space/plugins space/junit_3.7.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/Site with space/plugins space/org.eclipse.update.plugin1_1.1.1/plugin.xml b/update/org.eclipse.update.tests.core/data/Site with space/plugins space/org.eclipse.update.plugin1_1.1.1/plugin.xml
deleted file mode 100644
index e01846c..0000000
--- a/update/org.eclipse.update.tests.core/data/Site with space/plugins space/org.eclipse.update.plugin1_1.1.1/plugin.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<plugin name="JUnit Test Framework" id="org.eclipse.update.core.tests.feature1.plugin1" version="3.5.6" vendor-name="junit.org">
-  <runtime>
-    <library name="junit.jar">
-      <export name="*"/>
-    </library>
-  </runtime>
-</plugin>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/Site with space/plugins space/org.eclipse.update.plugin1_1.1.1/src.jar b/update/org.eclipse.update.tests.core/data/Site with space/plugins space/org.eclipse.update.plugin1_1.1.1/src.jar
deleted file mode 100644
index 2d4d609..0000000
--- a/update/org.eclipse.update.tests.core/data/Site with space/plugins space/org.eclipse.update.plugin1_1.1.1/src.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/Site with space/site.xml b/update/org.eclipse.update.tests.core/data/Site with space/site.xml
deleted file mode 100644
index 54928fb..0000000
--- a/update/org.eclipse.update.tests.core/data/Site with space/site.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<site type="org.eclipse.update.core.file">

-<description url="info/siteInfo.html"/>

-  <feature url="features space/helpFeature.jar" type="org.eclipse.update.core.packaged">

-    <category name="eclipse/UML"/>

-  </feature>

-  <feature url="features space/space feature.jar" type="org.eclipse.update.core.packaged">

-    <category name="eclipse/J2EE"/>

-  </feature>

-  <feature url="install/features space/feature3/">

-    <category name="eclipse"/>

-  </feature>

-  <archive path="plugins/org.eclipse.help_1.0.0.jar" url="plugins space/help.jar"/>

-  <archive path="plugins/org.eclipse.pde.core_1.0.0.jar" url="plugins space/Pde_core.jar"/>

-  <archive path="plugins/org.junit_3.5.0.jar" url="plugins space/junit_3.7.jar"/>

-  <archive path="plugins/org.eclipse.update.plugin1_1.1.1.jar" url="plugins space/org.eclipse.update.plugin1_1.1.1"/>  

-  <category-def label="IBM WSAD Tools" name="eclipse"/>

-  <category-def label="J2EE tools" name="eclipse/J2EE"/>

-  <category-def label="EJB Tools" name="eclipse/J2EE/EJB"/>

-  <category-def label="UML tools" name="eclipse/UML"/>

-  <category-def label="Messaging Tools" name="B2B"/>  

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/SiteTypeExamples/site1/features/feature3/features2.jarfile b/update/org.eclipse.update.tests.core/data/SiteTypeExamples/site1/features/feature3/features2.jarfile
deleted file mode 100644
index 240ab4f..0000000
--- a/update/org.eclipse.update.tests.core/data/SiteTypeExamples/site1/features/feature3/features2.jarfile
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/SiteTypeExamples/site1/site.xml b/update/org.eclipse.update.tests.core/data/SiteTypeExamples/site1/site.xml
deleted file mode 100644
index 6f7165a..0000000
--- a/update/org.eclipse.update.tests.core/data/SiteTypeExamples/site1/site.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<site type="org.eclipse.update.core.http">

-  <feature url="features/feature3/features2.jarfile"/>

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/features/helpFeature.jar b/update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/features/helpFeature.jar
deleted file mode 100644
index 9809713..0000000
--- a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/features/helpFeature.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/features/org.eclipse.pde.feature_1.0.0.jar b/update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/features/org.eclipse.pde.feature_1.0.0.jar
deleted file mode 100644
index f592c1d..0000000
--- a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/features/org.eclipse.pde.feature_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/plugins/Pde_core.jar b/update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/plugins/Pde_core.jar
deleted file mode 100644
index f107217..0000000
--- a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/plugins/Pde_core.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/plugins/help.jar b/update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/plugins/help.jar
deleted file mode 100644
index 7584f66..0000000
--- a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/plugins/help.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/plugins/junit_3.7.jar b/update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/plugins/junit_3.7.jar
deleted file mode 100644
index 67587b2..0000000
--- a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/artifacts/plugins/junit_3.7.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/info/img/top_titlsm.gif b/update/org.eclipse.update.tests.core/data/SiteURLTest/data/info/img/top_titlsm.gif
deleted file mode 100644
index 3917bb6..0000000
--- a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/info/img/top_titlsm.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/info/img/wel_ml.jpg b/update/org.eclipse.update.tests.core/data/SiteURLTest/data/info/img/wel_ml.jpg
deleted file mode 100644
index 01e33df..0000000
--- a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/info/img/wel_ml.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/info/siteInfo.html b/update/org.eclipse.update.tests.core/data/SiteURLTest/data/info/siteInfo.html
deleted file mode 100644
index b065aa3..0000000
--- a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/info/siteInfo.html
+++ /dev/null
@@ -1,63 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

-<html>

-<head>

-</head>

-  <body>

-<img src="img/top_titlsm.gif" alt="" width="460" height="50">

-<br>

-<br>

-     It started with Smalltalk<br>

-    OTI has been building tools for platform-independent OO development since

-  1988. Our ENVY&reg; technology first brought collaborative software development,

-  version management and shared repositories to Smalltalk. IBM is one of

-many   companies to license ENVY, which continues to be the foundation of

-VisualAge&reg;   Smalltalk.<br>

-<br>

-<br>

-<br>

-      Next came Java&#8482;<br>

-    Because of our expertise in OO technology, IBM turned to OTI for a next-generation

-  development environment for Java. The result is VisualAge for Java, which

-  continues to win awards for its innovative IDE and team support. InfoWorld

-  has chosen VisualAge for Java as development tool of the year - year after

-  year after year!<br>

-<br>

-<br>

-<br>

-      Then pervasive computing<br>

-    OTI continues its development of IBM's VisualAge Micro Edition, a state-of-the-art

-  platform for collaborative development of embedded applications and systems

-  that are very lean. As the steady stream of press releases attests, VisualAge

-  Micro Edition is already licensed to the leading microchip manufacturers,

-  microkernel developers, and producers of handheld and consumer devices.<br>

-<br>

-<br>

-<br>

-      Now it's Eclipse<br>

-    OTI has built the next generation IBM application development tools platform.

-  Eclipse is a kind of universal tool platform - an open extensible IDE for

-  anything and nothing in particular. The real value comes from tool plug-ins

-  that "teach" Eclipse how to work with things - java files, web content,

-graphics,  video - almost anything you can imagine. Eclipse allows you to

-independently  develop tools that integrate with other people's tools so

-seamlessly you won't know where one tool ends and another starts. The IBM

-supported version of this technology, WebSphere Studio Workbench, will be

-the core of the next  generation of IBM and IBM Business Partner e-business

-tools optimized for  the WebSphere software platform.<br>

-<br>

-<br>

-<br>

-      So what's next?<br>

-    OTI continues to deliver object-oriented technology that scales across

- platforms,  across teams and across project size. From a mainframe to a

-watch  - we're  closing in on that vision.<br>

-<br>

-<img src="img/wel_ml.jpg" width="460" height="460" alt="">

-<br>

-<br>

-<br>

-<br>

-<br>

-<br>

-</body>

-</html>

diff --git a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/site.xml b/update/org.eclipse.update.tests.core/data/SiteURLTest/data/site.xml
deleted file mode 100644
index e3ea684..0000000
--- a/update/org.eclipse.update.tests.core/data/SiteURLTest/data/site.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site url = "artifacts/">
-<description url="info/siteInfo.html"/>
-  <feature url="features/helpFeature.jar" type="org.eclipse.update.core.packaged">
-    <category name="eclipse/UML"/>
-  </feature>
-  <feature url="features/org.eclipse.pde.feature_1.0.0.jar" type="org.eclipse.update.core.packaged">
-    <category name="eclipse/J2EE"/>
-  </feature>
-  <archive path="plugins/org.eclipse.help_1.0.0.jar" url="plugins/help.jar"/>
-  <archive path="plugins/org.eclipse.pde.core_1.0.0.jar" url="plugins/Pde_core.jar"/>
-  <archive path="plugins/org.junit_3.5.0.jar" url="plugins/junit_3.7.jar"/>
-  <category-def label="IBM WSAD Tools" name="eclipse"/>
-  <category-def label="J2EE tools" name="eclipse/J2EE"/>
-  <category-def label="EJB Tools" name="eclipse/J2EE/EJB"/>
-  <category-def label="UML tools" name="eclipse/UML"/>
-  <category-def label="Messaging Tools" name="B2B"/>  
-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site1/file1.zip b/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site1/file1.zip
deleted file mode 100644
index 1a70b7e..0000000
--- a/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site1/file1.zip
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site1/install/features/feature3/feature.xml b/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site1/install/features/feature3/feature.xml
deleted file mode 100644
index 6b454ec..0000000
--- a/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site1/install/features/feature3/feature.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<feature id="org.eclipse.update.core.tests.feature3" image="feature1.gif" label="Third Feature" provider-name="Smart Company" version="1.0.0">

-	<install-handler handler="org.eclipse.update.core.DefaultInstallHandler"/>

-  	<data download-size="1500" id="file.zip" install-size="1000"/>

-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site1/site.xml b/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site1/site.xml
deleted file mode 100644
index c41f21d..0000000
--- a/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site1/site.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<site type="org.eclipse.update.core.file">

-<description url="info/siteInfo.html"/>

-  <feature url="install/features/feature3">

-  </feature>

-  <archive path="features/org.eclipse.update.core.tests.feature3_1.0.0/file.zip" url="file1.zip"/>

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site2/features/features3.jar b/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site2/features/features3.jar
deleted file mode 100644
index 74c6eca..0000000
--- a/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site2/features/features3.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site2/non data/another file.zip b/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site2/non data/another file.zip
deleted file mode 100644
index 1a70b7e..0000000
--- a/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site2/non data/another file.zip
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site2/site.xml b/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site2/site.xml
deleted file mode 100644
index 040943c..0000000
--- a/update/org.eclipse.update.tests.core/data/dataEntrySiteTest/site2/site.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<site type="org.eclipse.update.core.file">

-<description url="info/siteInfo.html"/>

-  <feature url="features/features3.jar" type="org.eclipse.update.core.packaged">

-  </feature>

-  <archive path="features/org.eclipse.update.core.tests.feature3_1.0.0/file.zip" url="non data/another file.zip"/>

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/features/features2.jar b/update/org.eclipse.update.tests.core/data/features/features2.jar
deleted file mode 100644
index e8d004d..0000000
--- a/update/org.eclipse.update.tests.core/data/features/features2.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/features/org.eclipse.test.feature_1.0.0.jar b/update/org.eclipse.update.tests.core/data/features/org.eclipse.test.feature_1.0.0.jar
deleted file mode 100644
index 870a70d..0000000
--- a/update/org.eclipse.update.tests.core/data/features/org.eclipse.test.feature_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/features/org.eclipse.update.core.tests.feature1_1.0.4.jar b/update/org.eclipse.update.tests.core/data/features/org.eclipse.update.core.tests.feature1_1.0.4.jar
deleted file mode 100644
index 9dc9463..0000000
--- a/update/org.eclipse.update.tests.core/data/features/org.eclipse.update.core.tests.feature1_1.0.4.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/features/org.eclipse_test_feature.jar b/update/org.eclipse.update.tests.core/data/features/org.eclipse_test_feature.jar
deleted file mode 100644
index 938ddc4..0000000
--- a/update/org.eclipse.update.tests.core/data/features/org.eclipse_test_feature.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/.project b/update/org.eclipse.update.tests.core/data/mirrors/update-site1/.project
deleted file mode 100644
index 5d52069..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>update-site1</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.UpdateSiteBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.UpdateSiteNature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/.sitebuild/build.log b/update/org.eclipse.update.tests.core/data/mirrors/update-site1/.sitebuild/build.log
deleted file mode 100644
index 3bce194..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/.sitebuild/build.log
+++ /dev/null
@@ -1,318 +0,0 @@
-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.jars

-Task started: available

-Task finished: available

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: plugin3.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: javac

-Message logged: Compile failed; see the compiler error output for details.

-Task finished: javac

-Task started: copy

-Task finished: copy

-Task started: mkdir

-Task finished: mkdir

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: plugin3.jar

-Task finished: antcall

-Target finished: build.jars

-Task finished: antcall

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: copy

-Task finished: copy

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: zip

-Task finished: zip

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.jars

-Task started: available

-Task finished: available

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: plugin4.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: javac

-Message logged: Compile failed; see the compiler error output for details.

-Task finished: javac

-Task started: copy

-Task finished: copy

-Task started: mkdir

-Task finished: mkdir

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: plugin4.jar

-Task finished: antcall

-Target finished: build.jars

-Task finished: antcall

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: copy

-Task finished: copy

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: zip

-Task finished: zip

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Task started: property

-Task finished: property

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: antcall

-Target started: children

-Target finished: children

-Task finished: antcall

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: eclipse.idReplacer

-Task finished: eclipse.idReplacer

-Task started: antcall

-Target started: ROOTFILES*_*_*

-Target finished: ROOTFILES*_*_*

-Task finished: antcall

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Message logged: Project ${update.feature3_1.0.0} does not exist and cannot be refreshed.

-Task finished: eclipse.refreshLocal

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Task finished: eclipse.refreshLocal

-Target finished: refresh

-Task finished: ant

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Task finished: eclipse.refreshLocal

-Target finished: refresh

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Target finished: refresh

-Build finished.

diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/.sitebuild/sitebuild.xml b/update/org.eclipse.update.tests.core/data/mirrors/update-site1/.sitebuild/sitebuild.xml
deleted file mode 100644
index 1e700b9..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/.sitebuild/sitebuild.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site-build
-      feature-location="features"
-      plugin-location="plugins"
-      autobuild="false"
-      scrub-output="false"
-      use-console="true">
-   <feature id="update.feature1" version="1.0.0"/>
-   <feature id="update.feature2" version="1.0.0"/>
-   <feature id="update.feature3" version="1.0.0"/>
-</site-build>
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/features/update.feature1_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site1/features/update.feature1_1.0.0.jar
deleted file mode 100644
index c812b0b..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/features/update.feature1_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/features/update.feature2_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site1/features/update.feature2_1.0.0.jar
deleted file mode 100644
index fbf1754..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/features/update.feature2_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/features/update.feature3_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site1/features/update.feature3_1.0.0.jar
deleted file mode 100644
index 8682a62..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/features/update.feature3_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/plugins/com.plugin1_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site1/plugins/com.plugin1_1.0.0.jar
deleted file mode 100644
index 8bbc7f3..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/plugins/com.plugin1_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/plugins/com.plugin2_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site1/plugins/com.plugin2_1.0.0.jar
deleted file mode 100644
index 5d42583..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/plugins/com.plugin2_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/plugins/com.plugin3_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site1/plugins/com.plugin3_1.0.0.jar
deleted file mode 100644
index aa94e52..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/plugins/com.plugin3_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/plugins/com.plugin4_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site1/plugins/com.plugin4_1.0.0.jar
deleted file mode 100644
index c8cca28..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/plugins/com.plugin4_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/site.xml b/update/org.eclipse.update.tests.core/data/mirrors/update-site1/site.xml
deleted file mode 100644
index 163f7bb..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site1/site.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site>
-   <feature url="features/update.feature1_1.0.0.jar" id="update.feature1" version="1.0.0">
-      <category name="Site1-Category1"/>
-   </feature>
-   <feature url="features/update.feature2_1.0.0.jar" id="update.feature2" version="1.0.0">
-      <category name="Site1-Category2"/>
-   </feature>
-   <feature url="features/update.feature3_1.0.0.jar" id="update.feature3" version="1.0.0">
-      <category name="Site1-Category3"/>
-   </feature>
-   <category-def name="Site1-Category1" label="Site1-Category1-Label">
-      <description>
-         ecetera.
-      </description>
-   </category-def>
-   <category-def name="Site1-Category2" label="Site1-Category2-Label">
-      <description>
-         ecetera.
-      </description>
-   </category-def>
-   <category-def name="Site1-Category3" label="Site1-Category3-Label">
-      <description>
-         ecetera.
-      </description>
-   </category-def>
-</site>
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site2/.project b/update/org.eclipse.update.tests.core/data/mirrors/update-site2/.project
deleted file mode 100644
index a4b687e..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site2/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>update-site2</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.UpdateSiteBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.UpdateSiteNature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site2/.sitebuild/build.log b/update/org.eclipse.update.tests.core/data/mirrors/update-site2/.sitebuild/build.log
deleted file mode 100644
index e977850..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site2/.sitebuild/build.log
+++ /dev/null
@@ -1,203 +0,0 @@
-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.jars

-Task started: available

-Task finished: available

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: plugin2.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: javac

-Message logged: Compile failed; see the compiler error output for details.

-Task finished: javac

-Task started: copy

-Task finished: copy

-Task started: mkdir

-Task finished: mkdir

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: plugin2.jar

-Task finished: antcall

-Target finished: build.jars

-Task finished: antcall

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: copy

-Task finished: copy

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: zip

-Task finished: zip

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Task started: property

-Task finished: property

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: antcall

-Target started: children

-Target finished: children

-Task finished: antcall

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: eclipse.idReplacer

-Task finished: eclipse.idReplacer

-Task started: antcall

-Target started: ROOTFILES*_*_*

-Target finished: ROOTFILES*_*_*

-Task finished: antcall

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Message logged: Project ${update.feature2_1.0.0} does not exist and cannot be refreshed.

-Task finished: eclipse.refreshLocal

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Task finished: eclipse.refreshLocal

-Target finished: refresh

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Target finished: refresh

-Build finished.

diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site2/.sitebuild/sitebuild.xml b/update/org.eclipse.update.tests.core/data/mirrors/update-site2/.sitebuild/sitebuild.xml
deleted file mode 100644
index 2258820..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site2/.sitebuild/sitebuild.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site-build
-      feature-location="features"
-      plugin-location="plugins"
-      autobuild="false"
-      scrub-output="false"
-      use-console="true">
-   <feature id="update.feature1" version="1.0.1"/>
-   <feature id="update.feature2" version="1.0.1"/>
-</site-build>
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site2/features/update.feature1_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site2/features/update.feature1_1.0.0.jar
deleted file mode 100644
index 5175b4a..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site2/features/update.feature1_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site2/features/update.feature2_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site2/features/update.feature2_1.0.0.jar
deleted file mode 100644
index d1660b9..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site2/features/update.feature2_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site2/plugins/com.plugin1_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site2/plugins/com.plugin1_1.0.0.jar
deleted file mode 100644
index d815f20..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site2/plugins/com.plugin1_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site2/plugins/com.plugin2_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site2/plugins/com.plugin2_1.0.0.jar
deleted file mode 100644
index dec5f4c..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site2/plugins/com.plugin2_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site2/site.xml b/update/org.eclipse.update.tests.core/data/mirrors/update-site2/site.xml
deleted file mode 100644
index f1d4b71..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site2/site.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site>
-   <feature url="features/update.feature1_1.0.1.jar" id="update.feature1" version="1.0.1"/>
-   <feature url="features/update.feature2_1.0.1.jar" id="update.feature2" version="1.0.1"/>
-</site>
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/.project b/update/org.eclipse.update.tests.core/data/mirrors/update-site3/.project
deleted file mode 100644
index 0ddb6b7..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>update-site3</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.UpdateSiteBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.UpdateSiteNature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/.sitebuild/build.log b/update/org.eclipse.update.tests.core/data/mirrors/update-site3/.sitebuild/build.log
deleted file mode 100644
index 4a2ee01..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/.sitebuild/build.log
+++ /dev/null
@@ -1,318 +0,0 @@
-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.jars

-Task started: available

-Task finished: available

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: plugin2a.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: javac

-Message logged: Compile failed; see the compiler error output for details.

-Task finished: javac

-Task started: copy

-Task finished: copy

-Task started: mkdir

-Task finished: mkdir

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: plugin2a.jar

-Task finished: antcall

-Target finished: build.jars

-Task finished: antcall

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: copy

-Task finished: copy

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: zip

-Task finished: zip

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.jars

-Task started: available

-Task finished: available

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: plugin2.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: javac

-Message logged: Compile failed; see the compiler error output for details.

-Task finished: javac

-Task started: copy

-Task finished: copy

-Task started: mkdir

-Task finished: mkdir

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: plugin2.jar

-Task finished: antcall

-Target finished: build.jars

-Task finished: antcall

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: copy

-Task finished: copy

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: zip

-Task finished: zip

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Task started: property

-Task finished: property

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: antcall

-Target started: children

-Target finished: children

-Task finished: antcall

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: eclipse.idReplacer

-Task finished: eclipse.idReplacer

-Task started: antcall

-Target started: ROOTFILES*_*_*

-Target finished: ROOTFILES*_*_*

-Task finished: antcall

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Message logged: Project ${update.feature2b_2.0.0} does not exist and cannot be refreshed.

-Task finished: eclipse.refreshLocal

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Task finished: eclipse.refreshLocal

-Target finished: refresh

-Task finished: ant

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Task finished: eclipse.refreshLocal

-Target finished: refresh

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Target finished: refresh

-Build finished.

diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/.sitebuild/sitebuild.xml b/update/org.eclipse.update.tests.core/data/mirrors/update-site3/.sitebuild/sitebuild.xml
deleted file mode 100644
index e3510b0..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/.sitebuild/sitebuild.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site-build
-      feature-location="features"
-      plugin-location="plugins"
-      autobuild="false"
-      scrub-output="false"
-      use-console="true">
-   <feature id="update.feature1b" version="2.0.0"/>
-   <feature id="update.feature2b" version="2.0.0"/>
-</site-build>
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/features/update.feature1b_2.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site3/features/update.feature1b_2.0.0.jar
deleted file mode 100644
index 6b9a876..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/features/update.feature1b_2.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/features/update.feature2b_2.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site3/features/update.feature2b_2.0.0.jar
deleted file mode 100644
index 97bb70f..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/features/update.feature2b_2.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/plugins/com.plugin1_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site3/plugins/com.plugin1_1.0.0.jar
deleted file mode 100644
index ee2d41d..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/plugins/com.plugin1_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/plugins/com.plugin1a_1.0.1.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site3/plugins/com.plugin1a_1.0.1.jar
deleted file mode 100644
index 97183c7..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/plugins/com.plugin1a_1.0.1.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/plugins/com.plugin2_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site3/plugins/com.plugin2_1.0.0.jar
deleted file mode 100644
index e31b28e..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/plugins/com.plugin2_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/plugins/com.plugin2a_1.0.1.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site3/plugins/com.plugin2a_1.0.1.jar
deleted file mode 100644
index 557ba5d..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/plugins/com.plugin2a_1.0.1.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/site.xml b/update/org.eclipse.update.tests.core/data/mirrors/update-site3/site.xml
deleted file mode 100644
index e28506b..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site3/site.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site>
-   <feature url="features/update.feature1b_2.0.0.jar" id="update.feature1b" version="2.0.0">
-      <category name="Site3-Category1"/>
-   </feature>
-   <feature url="features/update.feature2b_2.0.0.jar" id="update.feature2b" version="2.0.0">
-      <category name="Site3-Category2"/>
-   </feature>
-   <category-def name="Site3-Category1" label="Site3-Category1-Label">
-      <description>
-         ecetera.
-      </description>
-   </category-def>
-   <category-def name="Site3-Category2" label="Site3-Category2-Label">
-      <description>
-         ecetera.
-      </description>
-   </category-def>
-</site>
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/.project b/update/org.eclipse.update.tests.core/data/mirrors/update-site4/.project
deleted file mode 100644
index 8a07aaf..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>update-site4</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.UpdateSiteBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.UpdateSiteNature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/.sitebuild/build.log b/update/org.eclipse.update.tests.core/data/mirrors/update-site4/.sitebuild/build.log
deleted file mode 100644
index 1cfe8e3..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/.sitebuild/build.log
+++ /dev/null
@@ -1,791 +0,0 @@
-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Task started: ant

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.jars

-Task started: available

-Task finished: available

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: plugin1.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: javac

-Message logged: Compile failed; see the compiler error output for details.

-Task finished: javac

-Task started: copy

-Task finished: copy

-Task started: mkdir

-Task finished: mkdir

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: plugin1.jar

-Task finished: antcall

-Target finished: build.jars

-Task finished: antcall

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: copy

-Task finished: copy

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: zip

-Task finished: zip

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Task started: property

-Task finished: property

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: antcall

-Target started: children

-Target finished: children

-Task finished: antcall

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: eclipse.idReplacer

-Task finished: eclipse.idReplacer

-Task started: antcall

-Target started: ROOTFILES*_*_*

-Target finished: ROOTFILES*_*_*

-Task finished: antcall

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Task started: ant

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.jars

-Task started: available

-Task finished: available

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: plugin1.jar

-Target finished: plugin1.jar

-Task finished: antcall

-Target finished: build.jars

-Task finished: antcall

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: copy

-Task finished: copy

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: zip

-Task finished: zip

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Task started: property

-Task finished: property

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: antcall

-Target started: children

-Target finished: children

-Task finished: antcall

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: eclipse.idReplacer

-Task finished: eclipse.idReplacer

-Task started: antcall

-Target started: ROOTFILES*_*_*

-Target finished: ROOTFILES*_*_*

-Task finished: antcall

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Task started: ant

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.jars

-Task started: available

-Task finished: available

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: plugin1.jar

-Target finished: plugin1.jar

-Task finished: antcall

-Target finished: build.jars

-Task finished: antcall

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: copy

-Task finished: copy

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: zip

-Task finished: zip

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.jars

-Task started: available

-Task finished: available

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: plugin1a.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: javac

-Message logged: Compile failed; see the compiler error output for details.

-Task finished: javac

-Task started: copy

-Task finished: copy

-Task started: mkdir

-Task finished: mkdir

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: plugin1a.jar

-Task finished: antcall

-Target finished: build.jars

-Task finished: antcall

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: copy

-Task finished: copy

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: zip

-Task finished: zip

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Task started: property

-Task finished: property

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: antcall

-Target started: children

-Target finished: children

-Task finished: antcall

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: eclipse.idReplacer

-Task finished: eclipse.idReplacer

-Task started: antcall

-Target started: ROOTFILES*_*_*

-Target finished: ROOTFILES*_*_*

-Task finished: antcall

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Target finished: all.features

-Target started: all.plugins

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Task started: property

-Task finished: property

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: antcall

-Target started: children

-Target finished: children

-Task finished: antcall

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: eclipse.idReplacer

-Task finished: eclipse.idReplacer

-Task started: antcall

-Target started: ROOTFILES*_*_*

-Target finished: ROOTFILES*_*_*

-Task finished: antcall

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Message logged: Project ${update.feature1c_3.0.0} does not exist and cannot be refreshed.

-Task finished: eclipse.refreshLocal

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Task started: ant

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Message logged: Project ${update.feature1_1.0.0} does not exist and cannot be refreshed.

-Task finished: eclipse.refreshLocal

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Task finished: eclipse.refreshLocal

-Target finished: refresh

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Target finished: refresh

-Task finished: ant

-Task started: ant

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Message logged: Project ${update.feature1_1.0.0} does not exist and cannot be refreshed.

-Task finished: eclipse.refreshLocal

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Task finished: eclipse.refreshLocal

-Target finished: refresh

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Target finished: refresh

-Task finished: ant

-Task started: ant

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Message logged: Project ${update.feature1b_2.0.0} does not exist and cannot be refreshed.

-Task finished: eclipse.refreshLocal

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Task finished: eclipse.refreshLocal

-Target finished: refresh

-Task finished: ant

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Task finished: eclipse.refreshLocal

-Target finished: refresh

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Target finished: refresh

-Task finished: ant

-Target finished: all.features

-Target started: all.plugins

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Target finished: refresh

-Build finished.

diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/.sitebuild/sitebuild.xml b/update/org.eclipse.update.tests.core/data/mirrors/update-site4/.sitebuild/sitebuild.xml
deleted file mode 100644
index 47cb017..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/.sitebuild/sitebuild.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site-build
-      feature-location="features"
-      plugin-location="plugins"
-      autobuild="false"
-      scrub-output="false"
-      use-console="true">
-   <feature id="update.feature1c" version="3.0.0"/>
-</site-build>
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/features/update.feature1_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site4/features/update.feature1_1.0.0.jar
deleted file mode 100644
index 78d2f28..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/features/update.feature1_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/features/update.feature1_1.0.1.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site4/features/update.feature1_1.0.1.jar
deleted file mode 100644
index eeb0b6f..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/features/update.feature1_1.0.1.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/features/update.feature1b_2.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site4/features/update.feature1b_2.0.0.jar
deleted file mode 100644
index 31b6bcb..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/features/update.feature1b_2.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/features/update.feature1c_3.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site4/features/update.feature1c_3.0.0.jar
deleted file mode 100644
index 3753305..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/features/update.feature1c_3.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/plugins/com.plugin1_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site4/plugins/com.plugin1_1.0.0.jar
deleted file mode 100644
index 3e0760f..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/plugins/com.plugin1_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/plugins/com.plugin1a_1.0.1.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site4/plugins/com.plugin1a_1.0.1.jar
deleted file mode 100644
index 634eb07..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/plugins/com.plugin1a_1.0.1.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/site.xml b/update/org.eclipse.update.tests.core/data/mirrors/update-site4/site.xml
deleted file mode 100644
index 2c73cbe..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site4/site.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site>
-   <feature url="features/update.feature1c_3.0.0.jar" id="update.feature1c" version="3.0.0">
-      <category name="Site4-Category1"/>
-   </feature>
-   <category-def name="Site4-Category1" label="Site4-Category1-Label">
-      <description>
-         ecetera.
-      </description>
-   </category-def>
-</site>
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/.project b/update/org.eclipse.update.tests.core/data/mirrors/update-site5/.project
deleted file mode 100644
index 0a93302..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>update-site5</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.UpdateSiteBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.UpdateSiteNature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/.sitebuild/build.log b/update/org.eclipse.update.tests.core/data/mirrors/update-site5/.sitebuild/build.log
deleted file mode 100644
index db44faa..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/.sitebuild/build.log
+++ /dev/null
@@ -1,791 +0,0 @@
-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Task started: ant

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.jars

-Task started: available

-Task finished: available

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: plugin2.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: javac

-Message logged: Compile failed; see the compiler error output for details.

-Task finished: javac

-Task started: copy

-Task finished: copy

-Task started: mkdir

-Task finished: mkdir

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: plugin2.jar

-Task finished: antcall

-Target finished: build.jars

-Task finished: antcall

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: copy

-Task finished: copy

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: zip

-Task finished: zip

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Task started: property

-Task finished: property

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: antcall

-Target started: children

-Target finished: children

-Task finished: antcall

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: eclipse.idReplacer

-Task finished: eclipse.idReplacer

-Task started: antcall

-Target started: ROOTFILES*_*_*

-Target finished: ROOTFILES*_*_*

-Task finished: antcall

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Task started: ant

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.jars

-Task started: available

-Task finished: available

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: plugin2.jar

-Target finished: plugin2.jar

-Task finished: antcall

-Target finished: build.jars

-Task finished: antcall

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: copy

-Task finished: copy

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: zip

-Task finished: zip

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Task started: property

-Task finished: property

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: antcall

-Target started: children

-Target finished: children

-Task finished: antcall

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: eclipse.idReplacer

-Task finished: eclipse.idReplacer

-Task started: antcall

-Target started: ROOTFILES*_*_*

-Target finished: ROOTFILES*_*_*

-Task finished: antcall

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Task started: ant

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.jars

-Task started: available

-Task finished: available

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: plugin2a.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: javac

-Message logged: Compile failed; see the compiler error output for details.

-Task finished: javac

-Task started: copy

-Task finished: copy

-Task started: mkdir

-Task finished: mkdir

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: plugin2a.jar

-Task finished: antcall

-Target finished: build.jars

-Task finished: antcall

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: copy

-Task finished: copy

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: zip

-Task finished: zip

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.update.jar

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: build.jars

-Task started: available

-Task finished: available

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: plugin2.jar

-Target finished: plugin2.jar

-Task finished: antcall

-Target finished: build.jars

-Task finished: antcall

-Task started: antcall

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: copy

-Task finished: copy

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: zip

-Task finished: zip

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Task started: property

-Task finished: property

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: antcall

-Target started: children

-Target finished: children

-Task finished: antcall

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: eclipse.idReplacer

-Task finished: eclipse.idReplacer

-Task started: antcall

-Target started: ROOTFILES*_*_*

-Target finished: ROOTFILES*_*_*

-Task finished: antcall

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Task finished: ant

-Target finished: all.features

-Target started: all.plugins

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Task started: property

-Task finished: property

-Task started: delete

-Task finished: delete

-Task started: mkdir

-Task finished: mkdir

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: gather.bin.parts

-Task started: antcall

-Target started: children

-Target finished: children

-Task finished: antcall

-Task started: mkdir

-Task finished: mkdir

-Task started: copy

-Task finished: copy

-Task started: eclipse.idReplacer

-Task finished: eclipse.idReplacer

-Task started: antcall

-Target started: ROOTFILES*_*_*

-Target finished: ROOTFILES*_*_*

-Task finished: antcall

-Target finished: gather.bin.parts

-Task finished: antcall

-Task started: jar

-Task finished: jar

-Task started: delete

-Task finished: delete

-Target finished: build.update.jar

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Message logged: Project ${update.feature2c_3.0.0} does not exist and cannot be refreshed.

-Task finished: eclipse.refreshLocal

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Task started: ant

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Message logged: Project ${update.feature2_1.0.0} does not exist and cannot be refreshed.

-Task finished: eclipse.refreshLocal

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Task finished: eclipse.refreshLocal

-Target finished: refresh

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Target finished: refresh

-Task finished: ant

-Task started: ant

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Message logged: Project ${update.feature2_1.0.0} does not exist and cannot be refreshed.

-Task finished: eclipse.refreshLocal

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Task finished: eclipse.refreshLocal

-Target finished: refresh

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Target finished: refresh

-Task finished: ant

-Task started: ant

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Message logged: Project ${update.feature2b_2.0.0} does not exist and cannot be refreshed.

-Task finished: eclipse.refreshLocal

-Task started: antcall

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: all.features

-Target finished: all.features

-Target started: all.plugins

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Task finished: eclipse.refreshLocal

-Target finished: refresh

-Task finished: ant

-Task started: ant

-Target started: properties

-Task started: property

-Task finished: property

-Target finished: properties

-Target started: init

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Task started: property

-Task finished: property

-Target finished: init

-Target started: refresh

-Task started: eclipse.convertPath

-Task finished: eclipse.convertPath

-Task started: eclipse.refreshLocal

-Task finished: eclipse.refreshLocal

-Target finished: refresh

-Task finished: ant

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Target finished: refresh

-Task finished: ant

-Target finished: all.features

-Target started: all.plugins

-Target finished: all.plugins

-Target started: update.feature

-Target finished: update.feature

-Target started: all.children

-Target finished: all.children

-Task finished: antcall

-Target finished: refresh

-Build finished.

diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/.sitebuild/sitebuild.xml b/update/org.eclipse.update.tests.core/data/mirrors/update-site5/.sitebuild/sitebuild.xml
deleted file mode 100644
index 49243d3..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/.sitebuild/sitebuild.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site-build
-      feature-location="features"
-      plugin-location="plugins"
-      autobuild="false"
-      scrub-output="false"
-      use-console="true">
-   <feature id="update.feature1c" version="3.0.0"/>
-   <feature id="update.feature2c" version="3.0.0"/>
-</site-build>
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature1_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature1_1.0.0.jar
deleted file mode 100644
index 152d9e2..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature1_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature1_1.0.1.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature1_1.0.1.jar
deleted file mode 100644
index eeb0b6f..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature1_1.0.1.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature1b_2.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature1b_2.0.0.jar
deleted file mode 100644
index 49b0764..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature1b_2.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature1c_3.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature1c_3.0.0.jar
deleted file mode 100644
index d426f86..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature1c_3.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature2_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature2_1.0.0.jar
deleted file mode 100644
index b070ccd..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature2_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature2b_2.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature2b_2.0.0.jar
deleted file mode 100644
index e48ac05..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature2b_2.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature2c_3.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature2c_3.0.0.jar
deleted file mode 100644
index 00037df..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/features/update.feature2c_3.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/plugins/com.plugin1_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site5/plugins/com.plugin1_1.0.0.jar
deleted file mode 100644
index 3543749..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/plugins/com.plugin1_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/plugins/com.plugin1a_1.0.1.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site5/plugins/com.plugin1a_1.0.1.jar
deleted file mode 100644
index 632cc3f..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/plugins/com.plugin1a_1.0.1.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/plugins/com.plugin2_1.0.0.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site5/plugins/com.plugin2_1.0.0.jar
deleted file mode 100644
index dbc8a88..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/plugins/com.plugin2_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/plugins/com.plugin2a_1.0.1.jar b/update/org.eclipse.update.tests.core/data/mirrors/update-site5/plugins/com.plugin2a_1.0.1.jar
deleted file mode 100644
index a3cd0fb..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/plugins/com.plugin2a_1.0.1.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/site.xml b/update/org.eclipse.update.tests.core/data/mirrors/update-site5/site.xml
deleted file mode 100644
index 6e26db1..0000000
--- a/update/org.eclipse.update.tests.core/data/mirrors/update-site5/site.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site>
-   <feature url="features/update.feature1c_3.0.0.jar" id="update.feature1c" version="3.0.0">
-      <category name="Site5-Category1"/>
-   </feature>
-   <feature url="features/update.feature2c_3.0.0.jar" id="update.feature2c" version="3.0.0">
-      <category name="Site5-Category2"/>
-   </feature>
-   <category-def name="Site5-Category1" label="Site5-Category1-Label">
-      <description>
-         ecetera.
-      </description>
-   </category-def>
-   <category-def name="Site5-Category2" label="Site5-Category2-Label">
-      <description>
-         ecetera.
-      </description>
-   </category-def>
-</site>
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/features/org.eclipse.update.core.tests.childrenfeature_2.0.0.jar b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/features/org.eclipse.update.core.tests.childrenfeature_2.0.0.jar
deleted file mode 100644
index 6658034..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/features/org.eclipse.update.core.tests.childrenfeature_2.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/features/rootfeature.jar b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/features/rootfeature.jar
deleted file mode 100644
index b011050..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/features/rootfeature.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
deleted file mode 100644
index 5d9f5bc..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
deleted file mode 100644
index 8b4b04a..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.1.jar b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.1.jar
deleted file mode 100644
index 52208fe..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.1.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/site.xml b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/site.xml
deleted file mode 100644
index 623cb1a..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest/site.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site>
-  <feature url="features/rootfeature.jar"/>
-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/features/childrenfeature.jar b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/features/childrenfeature.jar
deleted file mode 100644
index 7e057e6..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/features/childrenfeature.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/features/rootfeature.jar b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/features/rootfeature.jar
deleted file mode 100644
index 38a0a3c..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/features/rootfeature.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
deleted file mode 100644
index 5d9f5bc..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
deleted file mode 100644
index 8b4b04a..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.1.jar b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.1.jar
deleted file mode 100644
index 52208fe..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.1.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/site.xml b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/site.xml
deleted file mode 100644
index 1752da2..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest2/site.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site>
-  <feature url="features/rootfeature.jar"/>
-  <feature url="features/childrenfeature.jar"/>  
-  
-  <archive path="features/org.eclipse.update.core.tests.childrenfeature_2.1.0.jar" url="features/childrenfeature.jar"/>  
-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/features/childrenfeature.jar b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/features/childrenfeature.jar
deleted file mode 100644
index 12ee4ba..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/features/childrenfeature.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/features/rootfeature.jar b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/features/rootfeature.jar
deleted file mode 100644
index 899bdda..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/features/rootfeature.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
deleted file mode 100644
index 5d9f5bc..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
deleted file mode 100644
index 8b4b04a..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.1.jar b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.1.jar
deleted file mode 100644
index 52208fe..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.1.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/site.xml b/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/site.xml
deleted file mode 100644
index 4f696ba..0000000
--- a/update/org.eclipse.update.tests.core/data/nestedFeatureSiteTest3/site.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site>
-  <feature url="features/rootfeature.jar"/>
-  
-  <archive path="features/org.eclipse.update.core.tests.childrenfeature_2.1.0.jar" url="features/childrenfeature.jar"/>  
-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/parsertests/feature1.xml b/update/org.eclipse.update.tests.core/data/parsertests/feature1.xml
deleted file mode 100644
index 93d7080..0000000
--- a/update/org.eclipse.update.tests.core/data/parsertests/feature1.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-   id="org.eclipse.platform"
-   version="2.1.0"
-   label="Eclipse Platform"
-   provider-name="www.eclipse.org"
-   image="splash/splash_full.bmp"
-   >
-
-	<license>
-    	 license
-	</license>
-
-   <copyright url="notice.html"/>
-   x
-	
-   <license url="about.html">
-   x
-   </license>
-
-   <url>
-      <update url="file:/D:/" label="Eclipse Update Site"/>
-   </url>
-
-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/parsertests/feature1bis.xml b/update/org.eclipse.update.tests.core/data/parsertests/feature1bis.xml
deleted file mode 100644
index e855f97..0000000
--- a/update/org.eclipse.update.tests.core/data/parsertests/feature1bis.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-   id="org.eclipse.platform"
-   version="2.1.0"
-   label="Eclipse Platform"
-   provider-name="www.eclipse.org"
-   image="splash/splash_full.bmp"
-   >
-
-   <description>
-   Eclipse platform feature.
-   </description>
-
-   <copyright url="notice.html"/>
-   <blah />
-	
-   <license url="about.html">
-
-   </license>
-
-   <url>
-      <update url="file:/D:/" label="Eclipse Update Site"/>
-   </url>
-
-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/parsertests/feature2.xml b/update/org.eclipse.update.tests.core/data/parsertests/feature2.xml
deleted file mode 100644
index 9c2df9b..0000000
--- a/update/org.eclipse.update.tests.core/data/parsertests/feature2.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-   id="org.eclipse.platform"
-   version="2.1.0"
-   label="Eclipse Platform"
-   provider-name="www.eclipse.org"
-   image="splash/splash_full.bmp"
-   blah="blah"
-   >
-
-   <description blah="blah">
-   Eclipse platform feature.
-   </description>
-
-   <copyright url="notice.html" blah="blah"/>
-	
-   <license url="about.html" blah="blah">
-   </license>
-
-   <url blah="blah">
-      <update url="file:/D:/" label="Eclipse Update Site" blah="blah"/>
-   </url>
-
-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/parsertests/feature3.xml b/update/org.eclipse.update.tests.core/data/parsertests/feature3.xml
deleted file mode 100644
index ca660be..0000000
--- a/update/org.eclipse.update.tests.core/data/parsertests/feature3.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-   id="org.eclipse.platform"
-   version="2.1.0"
-   label="Eclipse Platform"
-   provider-name="www.eclipse.org"
-   image="splash/splash_full.bmp"
-   >
-
-   <description>
-   Eclipse platform feature.
-   </description>
-
-   <copyright url="$os$/$ws$/notice.html"/>
-   x
-	
-   <license url="about.html">
-   x
-   </license>
-
-   <url>
-      <update url="file:/D:/" label="Eclipse Update Site"/>
-   </url>
-
-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/parsertests/feature4.xml b/update/org.eclipse.update.tests.core/data/parsertests/feature4.xml
deleted file mode 100644
index 17187c9..0000000
--- a/update/org.eclipse.update.tests.core/data/parsertests/feature4.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-   id="org.eclipse.platform"
-   version="2.1.0"
-   label="Eclipse Platform"
-   provider-name="www.eclipse.org"
-   image="splash/splash_full.bmp"
-   >
-
-   <description>
-   Eclipse platform feature.
-   </description>
-
-   <copyright url="$os$/$ws$/notice.html"/>
-   x
-	
-   <license url="about.html">
-   x
-   </license>
-
-   <url>
-      <update url="file:/D:/" label="Eclipse Update Site"/>
-      <discovery url="file:/c:/" label = "Discovery" type="web"/>
-   </url>
-
-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/parsertests/reddot.xml b/update/org.eclipse.update.tests.core/data/parsertests/reddot.xml
deleted file mode 100644
index f3f1701..0000000
--- a/update/org.eclipse.update.tests.core/data/parsertests/reddot.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>

-<site url="info/siteInfo.html">

-<feature url="features/reddot_1.0.0.jar"> 

-<category name="reddot"/>

-</feature>

-<feature url="features/reddot_2.1.0.jar">

-<category name="reddot"/>

-</feature>

-<archive path="com.reddot.redot_1.0.0" url="plugins/com.reddot.reddot_1.0.0.jar"/>

-<archive path="com.reddot.redot_2.1.0" url="plugins/com.reddot.reddot_2.1.0.jar"/>

-<category-def label="Red Dot Versions" name="reddot">

-<description url="RedDotVersions.html">

-This category contains all of the &lt;currently&gt; available versions of Red Dot feature.

-<![CDATA[<greeting>Hello, world!</greeting>]]>

-</description>

-</category-def>

-</site>

-

-

diff --git a/update/org.eclipse.update.tests.core/data/parsertests/reddot1.xml b/update/org.eclipse.update.tests.core/data/parsertests/reddot1.xml
deleted file mode 100644
index 074490e..0000000
--- a/update/org.eclipse.update.tests.core/data/parsertests/reddot1.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>

-<site url="info/siteInfo.html">

-<feature url="features/reddot_1.0.0.jar"> 

-<category name="reddot"/>

-</feature>

-<feature url="features/reddot_2.1.0.jar">

-<category name="reddot"/>

-</feature>

-<archive path="com.reddot.redot_1.0.0" url="plugins/com.reddot.reddot_1.0.0.jar"/>

-<archive path="com.reddot.redot_2.1.0" url="plugins/com.reddot.reddot_2.1.0.jar"/>

-<category-def label="Red Dot Versions" name="reddot">

-<description url="RedDotVersions.html">

-This category contains all of the &lt;currently&gt; available versions of Red Dot feature.

-</description>

-</category-def>

-</site>

-

-

diff --git a/update/org.eclipse.update.tests.core/data/parsertests/site.properties b/update/org.eclipse.update.tests.core/data/parsertests/site.properties
deleted file mode 100644
index 8e1ced4..0000000
--- a/update/org.eclipse.update.tests.core/data/parsertests/site.properties
+++ /dev/null
@@ -1,12 +0,0 @@
-###############################################################################

-# Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

-###############################################################################

-drivers=Required Drivers

-security=Security Fixes
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/parsertests/site.xml b/update/org.eclipse.update.tests.core/data/parsertests/site.xml
deleted file mode 100644
index b40d831..0000000
--- a/update/org.eclipse.update.tests.core/data/parsertests/site.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<site id="org.eclipse.update.core.tests" name="Tests" version="0.0.1" type="org.eclipse.update.core.file">

-  <handler>

-  	<boo class ="unknown"/>

-  </handler>

-  

-  <feature url="features/org.eclipse.test.feature_1.0.0.jar">

-    <category name="category1"/>

-  </feature>

-  

-  <feature url="features/features2.jar">

-    <category name="category1/subcat1"/>

-    <category name="category2"/>

-  </feature>

-  

-  <feature url="features/org.eclipse.update.core.tests.feature1_1.0.4.jar">

-    <category name="category1"/>

-    <category name="category2"/>

-    <blah/>

-  </feature>

-  

-  <feature url="features/org.eclipse_test_feature.jar"/>

-  

-  <feature url="org.eclipse.update.core.feature2_1.0.0/org.eclipse.update.core.feature2_2.2.2.jar">

-    <category name="category1"/>

-  </feature>

-  

-  <feature url="org.eclipse.update.core.feature2_1.0.0/org.eclipse.update.core.feature2_2.2.2.jar">

-  </feature>

-  

-  <archive path="plugins/hello" >

-  	<default/>

-  </archive>

-

-  <category-def name="category2" label="%security"/>

-  <category-def name="category1/subcat1" label="Special Fix"/>

-  <category-def name="category1" label="%drivers"/>  

-

-

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/parsertests/site10.xml b/update/org.eclipse.update.tests.core/data/parsertests/site10.xml
deleted file mode 100644
index e42680d..0000000
--- a/update/org.eclipse.update.tests.core/data/parsertests/site10.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site id="org.eclipse.update.core.tests" name="Tests" version="0.0.1" type="org.eclipse.update.core.file" blah="blah">
-  
-  <feature url="features/org.eclipse.test.feature_1.0.0.jar" blah="blah" id="org.eclipse.test.feature" version="1.0.0"/>
-  
-  <feature url="features/features2.jar" id="unknwon.id" version="bad version"/>
-  
-  <feature url="features/org.eclipse.update.core.tests.feature1_1.0.4.jar" id="only.id"/>
-    
-  <feature url="features/org.eclipse_test_feature.jar" version="1.0.0"/>
-  
-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/parsertests/site2.xml b/update/org.eclipse.update.tests.core/data/parsertests/site2.xml
deleted file mode 100644
index 007550e..0000000
--- a/update/org.eclipse.update.tests.core/data/parsertests/site2.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site>
-  <feature id="com.ibm.jdt" url="http://www.not-eclipse.org/feature3" version="1.0.0"/>
-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/parsertests/site3.xml b/update/org.eclipse.update.tests.core/data/parsertests/site3.xml
deleted file mode 100644
index dbbb682..0000000
--- a/update/org.eclipse.update.tests.core/data/parsertests/site3.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site>
-  <feature id="com.ibm.jdt" url="feature3/feature.jar" version="1.0.0">
-        <category name="unknown"/>
-  </feature>
-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/parsertests/site4.xml b/update/org.eclipse.update.tests.core/data/parsertests/site4.xml
deleted file mode 100644
index 41b7d16..0000000
--- a/update/org.eclipse.update.tests.core/data/parsertests/site4.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<site>
-   <description url="info/siteInfo.html"/>
-
-  <category-def label="Red Dot Versions" name="reddot">
-      <description url="RedDotVersions.html">
-         This category contains all of the currently available versions of Red Dot feature.
-      </description>
-   </category-def>
-   
-   <feature url="features/com.reddot.reddot_1.0.0.jar">
-      <category name="reddot"/>
-   </feature>
-
-   <feature url="features/com.reddot.reddot_2.1.0.jar">
-      <category name="reddot"/>
-   </feature>
-
- 
-</site>   
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/parsertests/site7.xml b/update/org.eclipse.update.tests.core/data/parsertests/site7.xml
deleted file mode 100644
index 2190d70..0000000
--- a/update/org.eclipse.update.tests.core/data/parsertests/site7.xml
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site id="org.eclipse.update.core.tests" name="Tests" version="0.0.1" type="org.eclipse.update.core.file">
-  <handler>
-  	<boo class ="unknown"/>
-  </handler>
-  
-  <feature url="features/org.eclipse.test.feature_1.0.0.jar">
-    <category name="category1"/>
-  </feature>
-  
-  <feature url="features/features2.jar">
-    <category name="category1/subcat1"/>
-    <category name="category2"/>
-  </feature>
-  
-  <blah/>
-  
-  <feature url="features/org.eclipse.update.core.tests.feature1_1.0.4.jar">
-    <category name="category1"/>
-    <category name="category2"/>
-    <blah/>
-  </feature>
-  
-  <feature url="features/org.eclipse_test_feature.jar"/>
-  
-  <feature url="org.eclipse.update.core.feature2_1.0.0/org.eclipse.update.core.feature2_2.2.2.jar">
-    <category name="category1"/>
-  </feature>
-  
-  <feature url="org.eclipse.update.core.feature2_1.0.0/org.eclipse.update.core.feature2_2.2.2.jar">
-  </feature>
-  
-  <archive path="plugins/hello" >
-  	<default/>
-  </archive>
-
-  <category-def name="category2" label="%security"/>
-  <category-def name="category1/subcat1" label="Special Fix"/>
-  <category-def name="category1" label="%drivers"/>  
-
-
-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/parsertests/site8.xml b/update/org.eclipse.update.tests.core/data/parsertests/site8.xml
deleted file mode 100644
index afcbaa1..0000000
--- a/update/org.eclipse.update.tests.core/data/parsertests/site8.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site id="org.eclipse.update.core.tests" name="Tests" version="0.0.1" type="org.eclipse.update.core.file">
-  <handler>
-  	<boo class ="unknown"/>
-  </handler>
-  
-  <feature url="features/org.eclipse.test.feature_1.0.0.jar">
-    <category name="category1"/>
-  </feature>
-  
-  <feature url="features/features2.jar">
-    <category name="category1/subcat1"/>
-    <category name="category2"/>
-  </feature>
-  xcxgfsdfgsdsd
-  
-  <feature url="features/org.eclipse.update.core.tests.feature1_1.0.4.jar">
-    <category name="category1"/>
-    <category name="category2"/>
-    <blah/>
-  </feature>
-  
-  <feature url="features/org.eclipse_test_feature.jar"/>
-  
-  <feature url="org.eclipse.update.core.feature2_1.0.0/org.eclipse.update.core.feature2_2.2.2.jar">
-    <category name="category1"/>
-  </feature>
-  
-  <feature url="org.eclipse.update.core.feature2_1.0.0/org.eclipse.update.core.feature2_2.2.2.jar">
-  </feature>
-  
-  <archive path="plugins/hello" >
-  	<default/>
-  </archive>
-
-  <category-def name="category2" label="%security"/>
-  <category-def name="category1/subcat1" label="Special Fix"/>
-  <category-def name="category1" label="%drivers"/>  
-
-
-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/parsertests/site9.xml b/update/org.eclipse.update.tests.core/data/parsertests/site9.xml
deleted file mode 100644
index f38c5a4..0000000
--- a/update/org.eclipse.update.tests.core/data/parsertests/site9.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site id="org.eclipse.update.core.tests" name="Tests" version="0.0.1" type="org.eclipse.update.core.file" blah="blah">
-  <handler blah="blah">
-  	<boo class ="unknown" blah="blah"/>
-  </handler>
-  
-  <feature url="features/org.eclipse.test.feature_1.0.0.jar" blah="blah">
-    <category name="category1" blah="blah" />
-  </feature>
-  
-  <feature url="features/features2.jar">
-    <category name="category1/subcat1"/>
-    <category name="category2"/>
-  </feature>
-  
-  <feature url="features/org.eclipse.update.core.tests.feature1_1.0.4.jar">
-    <category name="category1"/>
-    <category name="category2"/>
-    <blah/>
-  </feature>
-  
-  <feature url="features/org.eclipse_test_feature.jar"/>
-  
-  <feature url="org.eclipse.update.core.feature2_1.0.0/org.eclipse.update.core.feature2_2.2.2.jar">
-    <category name="category1"/>
-  </feature>
-  
-  <feature url="org.eclipse.update.core.feature2_1.0.0/org.eclipse.update.core.feature2_2.2.2.jar">
-  </feature>
-  
-  <archive path="plugins/hello" blah="blah">
-  	<default blah="blah"/>
-  </archive>
-
-  <category-def name="category2" label="%security" blah="blah"/>
-  <category-def name="category1/subcat1" label="Special Fix" blah="blah"/>
-  <category-def name="category1" label="%drivers"/>  
-
-
-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/parsertests/siteftp.xml b/update/org.eclipse.update.tests.core/data/parsertests/siteftp.xml
deleted file mode 100644
index f883ec0..0000000
--- a/update/org.eclipse.update.tests.core/data/parsertests/siteftp.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site type="org.eclipse.update.tests.core.ftp">
-  <feature url="features/feature3/features2.jarfile"/>
-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/.classpath b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/.classpath
deleted file mode 100644
index 88acb39..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/.classpath
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<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.ui"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/.project b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/.project
deleted file mode 100644
index 1ebc505..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/.project
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>FeatureWithInstallHandler</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/FeatureWithInstallHandler_1.0.0.jar b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/FeatureWithInstallHandler_1.0.0.jar
deleted file mode 100644
index 695b722..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/FeatureWithInstallHandler_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/bin/HandlerWithUI$1.class b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/bin/HandlerWithUI$1.class
deleted file mode 100644
index 57291b0..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/bin/HandlerWithUI$1.class
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/bin/HandlerWithUI.class b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/bin/HandlerWithUI.class
deleted file mode 100644
index fe8e881..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/bin/HandlerWithUI.class
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/build.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/build.properties
deleted file mode 100644
index f3794db..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-source.handler.jar = src/,\
-                     bin/
-output.handler.jar = bin/
-bin.includes = feature.xml,\
-               handler.jar
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/feature.xml
deleted file mode 100644
index 8b90ea7..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/feature.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="FeatureWithInstallHandler"
-      label="FeatureWithInstallHandler"
-      version="1.0.0">
-
-   <install-handler library="handler.jar" handler="HandlerWithUI" />
-
-   <description url="[Enter Feature URL here.]">
-      [Enter Feature Description here.]
-   </description>
-
-   <copyright url="[Enter Copyright URL here.]">
-      [Enter Copyright Description here.]
-   </copyright>
-
-   <license url="[Enter License URL here.]">
-      [Enter License Description here.]
-   </license>
-
-   <plugin
-         id="org.apache.lucene"
-         download-size="0"
-         install-size="0"
-         version="1.3.0"/>
-
-</feature>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/handler.jar b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/handler.jar
deleted file mode 100644
index 87bc244..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/handler.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/src/HandlerWithUI.java b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/src/HandlerWithUI.java
deleted file mode 100644
index 4c80d69..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/FeatureWithInstallHandler/src/HandlerWithUI.java
+++ /dev/null
@@ -1,135 +0,0 @@
-import org.eclipse.core.runtime.*;
-import org.eclipse.jface.dialogs.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.update.core.*;
-/*
- * Created on Oct 1, 2004
- *
- * TODO To change the template for this generated file go to
- * Window - Preferences - Java - Code Style - Code Templates
- */
-
-/**
- * @author birsan
- *
- * TODO To change the template for this generated type comment go to
- * Window - Preferences - Java - Code Style - Code Templates
- */
-public class HandlerWithUI implements IInstallHandler {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.update.core.IInstallHandler#completeConfigure()
-	 */
-	public void completeConfigure() throws CoreException {
-		// TODO Auto-generated method stub
-		System.out.println("completeConfigure()");
-
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.update.core.IInstallHandler#completeInstall(org.eclipse.update.core.IFeatureContentConsumer)
-	 */
-	public void completeInstall(IFeatureContentConsumer consumer)
-			throws CoreException {
-		// TODO Auto-generated method stub
-		System.out.println("completeInstall()");
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.update.core.IInstallHandler#completeUnconfigure()
-	 */
-	public void completeUnconfigure() throws CoreException {
-		// TODO Auto-generated method stub
-		System.out.println("completeInstall()");
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.update.core.IInstallHandler#completeUninstall()
-	 */
-	public void completeUninstall() throws CoreException {
-		// TODO Auto-generated method stub
-		System.out.println("completeUninstall()");
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.update.core.IInstallHandler#configureCompleted(boolean)
-	 */
-	public void configureCompleted(boolean success) throws CoreException {
-		// TODO Auto-generated method stub
-		System.out.println("configureCompleted()");
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.update.core.IInstallHandler#configureInitiated()
-	 */
-	public void configureInitiated() throws CoreException {
-		// TODO Auto-generated method stub
-		System.out.println("configureInitiated()");
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.update.core.IInstallHandler#initialize(int, org.eclipse.update.core.IFeature, org.eclipse.update.core.IInstallHandlerEntry, org.eclipse.update.core.InstallMonitor)
-	 */
-	public void initialize(int type, IFeature feature,
-			IInstallHandlerEntry entry, InstallMonitor monitor)
-			throws CoreException {
-		// TODO Auto-generated method stub
-		System.out.println("initialize()");
-		Display.getDefault().asyncExec( new Runnable() {
-			public void run() {
-				MessageDialog.openInformation(Display.getDefault().getActiveShell(), "InstallHandler", "This is a dummy message");
-			}
-		});
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.update.core.IInstallHandler#installCompleted(boolean)
-	 */
-	public void installCompleted(boolean success) throws CoreException {
-		// TODO Auto-generated method stub
-		System.out.println("installCompleted()");
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.update.core.IInstallHandler#installInitiated()
-	 */
-	public void installInitiated() throws CoreException {
-		// TODO Auto-generated method stub
-		System.out.println("installInitiated()");
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.update.core.IInstallHandler#nonPluginDataDownloaded(org.eclipse.update.core.INonPluginEntry[], org.eclipse.update.core.IVerificationListener)
-	 */
-	public void nonPluginDataDownloaded(INonPluginEntry[] nonPluginData,
-			IVerificationListener listener) throws CoreException {
-		// TODO Auto-generated method stub
-		System.out.println("nonPluginDataDownloaded()");
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.update.core.IInstallHandler#pluginsDownloaded(org.eclipse.update.core.IPluginEntry[])
-	 */
-	public void pluginsDownloaded(IPluginEntry[] plugins) throws CoreException {
-		// TODO Auto-generated method stub
-		System.out.println("pluginsDownloaded()");
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.update.core.IInstallHandler#unconfigureCompleted(boolean)
-	 */
-	public void unconfigureCompleted(boolean success) throws CoreException {
-		// TODO Auto-generated method stub
-		System.out.println("unconfigureCompleted()");
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.update.core.IInstallHandler#unconfigureInitiated()
-	 */
-	public void unconfigureInitiated() throws CoreException {
-		// TODO Auto-generated method stub
-		System.out.println("unconfigureInitiated()");
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.update.core.IInstallHandler#uninstallCompleted(boolean)
-	 */
-	public void uninstallCompleted(boolean success) throws CoreException {
-		// TODO Auto-generated method stub
-		System.out.println("uninstallCompleted()");
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.update.core.IInstallHandler#uninstallInitiated()
-	 */
-	public void uninstallInitiated() throws CoreException {
-		// TODO Auto-generated method stub
-		System.out.println("uninstallInitiated()");
-	}
-}
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/META-INF/MANIFEST.MF b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/META-INF/MANIFEST.MF
deleted file mode 100644
index 59499bc..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,2 +0,0 @@
-Manifest-Version: 1.0
-
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/cpl-v10.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/cpl-v10.html
deleted file mode 100644
index 95416c1..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/cpl-v10.html
+++ /dev/null
@@ -1,266 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator" content="HTML Tidy, see www.w3.org" />
-<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 style="font-weight: bold; text-align: center">Common Public
-License - v 1.0</p>
-
-<p>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.</p>
-
-<p style="font-weight: bold">1. DEFINITIONS</p>
-
-<p>"Contribution" means:</p>
-
-<div style="margin-left: 2em">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:</div>
-
-<div style="margin-left: 2em">i) changes to the Program, and</div>
-
-<div style="margin-left: 2em">ii) additions to the Program;</div>
-
-<div style="margin-left: 2em">where such changes and/or additions
-to the Program originate from and are distributed by that
-particular Contributor. 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. 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.</div>
-
-<p>"Contributor" means any person or entity that distributes the
-Program.</p>
-
-<p>"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.</p>
-
-<p>"Program" means the Contributions distributed in accordance with
-this Agreement.</p>
-
-<p>"Recipient" means anyone who receives the Program under this
-Agreement, including all Contributors.</p>
-
-<p style="font-weight: bold">2. GRANT OF RIGHTS</p>
-
-<div style="margin-left: 2em">a) Subject to the terms of this
-Agreement, each Contributor hereby grants Recipient a
-non-exclusive, worldwide, royalty-free copyright license to
-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.</div>
-
-<div style="margin-left: 2em">b) Subject to the terms of this
-Agreement, each Contributor hereby grants Recipient a
-non-exclusive, worldwide, 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.</div>
-
-<div style="margin-left: 2em">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.</div>
-
-<div style="margin-left: 2em">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.</div>
-
-<p style="font-weight: bold">3. REQUIREMENTS</p>
-
-<p>A Contributor may choose to distribute the Program in object
-code form under its own license agreement, provided that:</p>
-
-<div style="margin-left: 2em">a) it complies with the terms and
-conditions of this Agreement; and</div>
-
-<div style="margin-left: 2em">b) its license agreement:</div>
-
-<div style="margin-left: 2em">i) effectively disclaims 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;</div>
-
-<div style="margin-left: 2em">ii) effectively excludes on behalf of
-all Contributors all liability for damages, including direct,
-indirect, special, incidental and consequential damages, such as
-lost profits;</div>
-
-<div style="margin-left: 2em">iii) states that any provisions which
-differ from this Agreement are offered by that Contributor alone
-and not by any other party; and</div>
-
-<div style="margin-left: 2em">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.</div>
-
-<p>When the Program is made available in source code form:</p>
-
-<div style="margin-left: 2em">a) it must be made available under
-this Agreement; and</div>
-
-<div style="margin-left: 2em">b) a copy of this Agreement must be
-included with each copy of the Program.</div>
-
-<p>Contributors may not remove or alter any copyright notices
-contained within the Program.</p>
-
-<p>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.</p>
-
-<p style="font-weight: bold">4. COMMERCIAL DISTRIBUTION</p>
-
-<p>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.</p>
-
-<p>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.</p>
-
-<p style="font-weight: bold">5. NO WARRANTY</p>
-
-<p>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 solely responsible for determining the appropriateness of using
-and distributing the Program and assumes all risks associated with
-its exercise of rights under this Agreement, including but not
-limited to the risks and costs of program errors, compliance with
-applicable laws, damage to or loss of data, programs or equipment,
-and unavailability or interruption of operations.</p>
-
-<p style="font-weight: bold">6. DISCLAIMER OF LIABILITY</p>
-
-<p>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 (INCLUDING WITHOUT LIMITATION LOST PROFITS), 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.</p>
-
-<p style="font-weight: bold">7. GENERAL</p>
-
-<p>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.</p>
-
-<p>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.</p>
-
-<p>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.</p>
-
-<p>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 publish new versions
-(including revisions) of this Agreement from time to 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. 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
-version. 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, by implication, estoppel or otherwise. All rights in the
-Program not expressly granted under this Agreement are
-reserved.</p>
-
-<p>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.</p>
-</body>
-</html>
-
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/eclipse_update_120.jpg b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/eclipse_update_120.jpg
deleted file mode 100644
index 68e3e02..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/feature.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/feature.properties
deleted file mode 100644
index f8cfdf4..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/feature.properties
+++ /dev/null
@@ -1,141 +0,0 @@
-# /**
-#  * <copyright>
-#  *
-#  * Copyright (c) 2002-2004 IBM Corporation 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 - Initial API and implementation
-#  *
-#  * </copyright>
-#  *
-#  * $Id: feature.properties,v 1.2 2004/05/26 15:16:28 marcelop Exp $
-#  */
-
-# ==============================================================================
-# Do not change the properties between this line and the last line containing:
-# %%% END OF TRANSLATED PROPERTIES %%%
-# Instead, either redefine an existing property, or create a new property,
-# append it to the end of the file, and change the code to use the new name.
-# ==============================================================================
-
-# This file contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse Modeling Framework (EMF) Documentation
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=Eclipse Modeling Framework. (documentation)
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE.ORG SOFTWARE USER AGREEMENT\n\
-14th August, 2003\n\
-\n\
-Usage Of Content\n\
-\n\
-ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by Eclipse.org\n\
-is provided to you under the terms and conditions of the Common Public\n\
-License Version 1.0 ("CPL"). A copy of the CPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/cpl-v10.html.\n\
-For purposes of the CPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments\n\
-("Fragments"), and features ("Features"). A Feature is a bundle of one or\n\
-more Plug-ins and/or Fragments and associated material. Files named\n\
-"feature.xml" may contain a list of the names and version numbers of the\n\
-Plug-ins and/or Fragments associated with a Feature. Plug-ins and Fragments\n\
-are located in directories named "plugins" and Features are located in\n\
-directories named "features".\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Subdirectories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by Eclipse.org is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact Eclipse.org to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n
-########### end of license property ##########################################
-
-# ==============================================================================
-# %%% END OF TRANSLATED PROPERTIES %%%
-# The above properties have been shipped for translation.
-# ==============================================================================
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/feature.xml
deleted file mode 100644
index 09363e7..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/feature.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-/**
- * <copyright>
- *
- * Copyright (c) 2002-2004 IBM Corporation 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 - Initial API and implementation
- *
- * </copyright>
- *
- * $Id: feature.xml,v 1.1 2004/03/06 17:31:31 marcelop Exp $
- */
--->
-
-<feature
-	id="org.eclipse.emf.doc"
-    label="%featureName"
-    version="2.0.0"
-    image= "eclipse_update_120.jpg"
-    provider-name="%providerName">
-
-	<description>
-    	%description
-	</description>
-
-    <license url="%licenseURL">
-		%license
-	</license>
-
-	<url>
-		<update url="http://update.eclipse.org/updates" label="%updateSiteName"/>
-	</url>
-
-	<plugin
-		id="org.eclipse.emf.doc"
-        download-size="0"
-        install-size="0"   		
-		version="2.0.0"/>
-</feature>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/license.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/license.html
deleted file mode 100644
index 07a5e18..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.doc_2.0.0/license.html
+++ /dev/null
@@ -1,126 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator" content="HTML Tidy, see www.w3.org" />
-<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>14th August, 2003</p>
-
-<h3>Usage Of Content</h3>
-
-<p>ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION
-AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY
-"CONTENT"). 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>
-
-<h3>Applicable Licenses</h3>
-
-<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 ("CPL"). 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, "Program" 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 ("Repository") in CVS modules ("Modules") and made
-available as downloadable archives ("Downloads").</p>
-
-<p>Content may be apportioned into plug-ins ("Plug-ins"), plug-in
-fragments ("Fragments"), and features ("Features"). A Feature is a
-bundle of one or more Plug-ins and/or Fragments and associated
-material. Files named "feature.xml" 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 "plugins" and Features are located in directories named
-"features".</p>
-
-<p>Features may also include other Features ("Included Features").
-Files named "feature.xml" 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 "about.html" ("Abouts"). The terms and
-conditions governing Features and Included Features should be
-contained in files named "license.html" ("Feature Licenses").
-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 "src" 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
-("Feature Update License") 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 "license" property of
-files named "feature.properties". 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.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY
-REFER TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND
-CONDITIONS. SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT
-ARE NOT LIMITED TO):</p>
-
-<ul>
-<li>Apache Software License 1.1 (available at <a
-href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-
-<li>IBM Public License 1.0 (available at <a
-href="http://oss.software.ibm.com/developerworks/opensource/license10.html">
-http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>
-
-<li>Metro Link Public License 1.00 (available at <a
-href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">
-http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-
-<li>Mozilla Public License Version 1.1 (available at <a
-href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH 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>
-
-<h3>Cryptography</h3>
-
-<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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/META-INF/MANIFEST.MF b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/META-INF/MANIFEST.MF
deleted file mode 100644
index 59499bc..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,2 +0,0 @@
-Manifest-Version: 1.0
-
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/cpl-v10.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/cpl-v10.html
deleted file mode 100644
index 36aa208..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/eclipse_update_120.jpg b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/eclipse_update_120.jpg
deleted file mode 100644
index 3a4d639..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/feature.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/feature.properties
deleted file mode 100644
index 0c94af5..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/feature.properties
+++ /dev/null
@@ -1,141 +0,0 @@
-# /**
-#  * <copyright>
-#  *
-#  * Copyright (c) 2002-2004 IBM Corporation 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 - Initial API and implementation
-#  *
-#  * </copyright>
-#  *
-#  * $Id: feature.properties,v 1.1 2004/03/26 15:24:15 marcelop Exp $ 
-#  */
-
-# ==============================================================================
-# Do not change the properties between this line and the last line containing:
-# %%% END OF TRANSLATED PROPERTIES %%%
-# Instead, either redefine an existing property, or create a new property,
-# append it to the end of the file, and change the code to use the new name.
-# ==============================================================================
-
-# This file contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=EMF Service Data Objects (SDO) Documentation
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=EMF Service Data Objects (SDO) Documentation
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE.ORG SOFTWARE USER AGREEMENT\n\
-14th August, 2003\n\
-\n\
-Usage Of Content\n\
-\n\
-ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by Eclipse.org\n\
-is provided to you under the terms and conditions of the Common Public\n\
-License Version 1.0 ("CPL"). A copy of the CPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/cpl-v10.html.\n\
-For purposes of the CPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments\n\
-("Fragments"), and features ("Features"). A Feature is a bundle of one or\n\
-more Plug-ins and/or Fragments and associated material. Files named\n\
-"feature.xml" may contain a list of the names and version numbers of the\n\
-Plug-ins and/or Fragments associated with a Feature. Plug-ins and Fragments\n\
-are located in directories named "plugins" and Features are located in\n\
-directories named "features".\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Subdirectories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by Eclipse.org is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact Eclipse.org to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n
-########### end of license property ##########################################
-
-# ==============================================================================
-# %%% END OF TRANSLATED PROPERTIES %%%
-# The above properties have been shipped for translation.
-# ==============================================================================
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/feature.xml
deleted file mode 100644
index 1dfb44a..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/feature.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-/**
- * <copyright>
- *
- * Copyright (c) 2003-2004 IBM Corporation 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 - Initial API and implementation
- *
- * </copyright>
- *
- * $Id: feature.xml,v 1.2 2004/03/26 15:32:13 marcelop Exp $
- */
--->
-
-<feature
-	id="org.eclipse.emf.ecore.sdo.doc"
-    label="%featureName"
-    version="2.0.0"
-    image= "eclipse_update_120.jpg"
-    provider-name="%providerName">
-
-	<description>
-    	%description
-	</description>
-
-    <license url="%licenseURL">
-		%license
-	</license>
-
-	<url>
-		<update url="http://update.eclipse.org/updates" label="%updateSiteName"/>
-	</url>
-
-	<plugin
-		id="org.eclipse.emf.ecore.sdo.doc"
-        download-size="0"
-        install-size="0"   		
-		version="2.0.0"/>
-</feature>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/license.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/license.html
deleted file mode 100644
index af8c380..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.doc_2.0.0/license.html
+++ /dev/null
@@ -1,71 +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>14th August, 2003</p>
-
-<h3>Usage Of Content</h3>
-
-<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>
-   
-<h3>Applicable Licenses</h3>   
-   
-<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.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
-	<li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-	<li>IBM Public License 1.0 (available at <a href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>	
-	<li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-	<li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH 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>
-
-<h3>Cryptography</h3>
-
-<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>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/META-INF/MANIFEST.MF b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/META-INF/MANIFEST.MF
deleted file mode 100644
index 59499bc..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,2 +0,0 @@
-Manifest-Version: 1.0
-
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/cpl-v10.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/cpl-v10.html
deleted file mode 100644
index 36aa208..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/eclipse_update_120.jpg b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/eclipse_update_120.jpg
deleted file mode 100644
index 3a4d639..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/feature.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/feature.properties
deleted file mode 100644
index faf0eed..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/feature.properties
+++ /dev/null
@@ -1,141 +0,0 @@
-# /**
-#  * <copyright>
-#  *
-#  * Copyright (c) 2002-2004 IBM Corporation 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 - Initial API and implementation
-#  *
-#  * </copyright>
-#  *
-#  * $Id: feature.properties,v 1.1 2004/03/26 15:24:15 marcelop Exp $ 
-#  */
-
-# ==============================================================================
-# Do not change the properties between this line and the last line containing:
-# %%% END OF TRANSLATED PROPERTIES %%%
-# Instead, either redefine an existing property, or create a new property,
-# append it to the end of the file, and change the code to use the new name.
-# ==============================================================================
-
-# This file contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=EMF Service Data Objects (SDO) Source
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=EMF Service Data Objects (SDO) Source
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE.ORG SOFTWARE USER AGREEMENT\n\
-14th August, 2003\n\
-\n\
-Usage Of Content\n\
-\n\
-ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by Eclipse.org\n\
-is provided to you under the terms and conditions of the Common Public\n\
-License Version 1.0 ("CPL"). A copy of the CPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/cpl-v10.html.\n\
-For purposes of the CPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments\n\
-("Fragments"), and features ("Features"). A Feature is a bundle of one or\n\
-more Plug-ins and/or Fragments and associated material. Files named\n\
-"feature.xml" may contain a list of the names and version numbers of the\n\
-Plug-ins and/or Fragments associated with a Feature. Plug-ins and Fragments\n\
-are located in directories named "plugins" and Features are located in\n\
-directories named "features".\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Subdirectories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by Eclipse.org is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact Eclipse.org to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n
-########### end of license property ##########################################
-
-# ==============================================================================
-# %%% END OF TRANSLATED PROPERTIES %%%
-# The above properties have been shipped for translation.
-# ==============================================================================
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/feature.xml
deleted file mode 100644
index ba5d87d..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/feature.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature primary="false"  provider-name="%providerName"    label="%featureName"  image="eclipse_update_120.jpg" id="org.eclipse.emf.ecore.sdo.source"  version="2.0.0">
-	<description >
-		%description
-	</description>
-	<copyright url="http://www.eclipse.org/legal/cpl-v10.html">
-		Copyright (c) 2002-2004 IBM Corporation 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
-	</copyright>
-	<license url="%licenseURL">
-		%license
-	</license>
-	<url>
-		<update label="%updateSiteName" url="http://update.eclipse.org/updates/"/>
-		<discovery label="%secondaryUpdateSiteName" url="http://download.eclipse.org/tools/emf/updates/"/>
-	</url>
-	<plugin    fragment="false"  download-size="0" install-size="0" id="org.eclipse.emf.ecore.sdo.source" version="2.0.0"/>
-</feature>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/license.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/license.html
deleted file mode 100644
index af8c380..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo.source_2.0.0/license.html
+++ /dev/null
@@ -1,71 +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>14th August, 2003</p>
-
-<h3>Usage Of Content</h3>
-
-<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>
-   
-<h3>Applicable Licenses</h3>   
-   
-<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.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
-	<li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-	<li>IBM Public License 1.0 (available at <a href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>	
-	<li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-	<li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH 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>
-
-<h3>Cryptography</h3>
-
-<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>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/META-INF/MANIFEST.MF b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/META-INF/MANIFEST.MF
deleted file mode 100644
index 59499bc..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,2 +0,0 @@
-Manifest-Version: 1.0
-
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/cpl-v10.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/cpl-v10.html
deleted file mode 100644
index 36aa208..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/eclipse_update_120.jpg b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/eclipse_update_120.jpg
deleted file mode 100644
index 3a4d639..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/feature.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/feature.properties
deleted file mode 100644
index 7d4ad3d..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/feature.properties
+++ /dev/null
@@ -1,144 +0,0 @@
-# /**
-#  * <copyright>
-#  *
-#  * Copyright (c) 2002-2004 IBM Corporation 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 - Initial API and implementation
-#  *
-#  * </copyright>
-#  *
-#  * $id$
-#  */
-
-# ==============================================================================
-# Do not change the properties between this line and the last line containing:
-# %%% END OF TRANSLATED PROPERTIES %%%
-# Instead, either redefine an existing property, or create a new property,
-# append it to the end of the file, and change the code to use the new name.
-# ==============================================================================
-
-# This file contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=EMF Service Data Objects (SDO)
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=EMF Service Data Objects (SDO).
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE.ORG SOFTWARE USER AGREEMENT\n\
-14th August, 2003\n\
-\n\
-Usage Of Content\n\
-\n\
-ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by Eclipse.org\n\
-is provided to you under the terms and conditions of the Common Public\n\
-License Version 1.0 ("CPL"). A copy of the CPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/cpl-v10.html.\n\
-For purposes of the CPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments\n\
-("Fragments"), and features ("Features"). A Feature is a bundle of one or\n\
-more Plug-ins and/or Fragments and associated material. Files named\n\
-"feature.xml" may contain a list of the names and version numbers of the\n\
-Plug-ins and/or Fragments associated with a Feature. Plug-ins and Fragments\n\
-are located in directories named "plugins" and Features are located in\n\
-directories named "features".\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Subdirectories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by Eclipse.org is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact Eclipse.org to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n
-########### end of license property ##########################################
-
-# ==============================================================================
-# %%% END OF TRANSLATED PROPERTIES %%%
-# The above properties have been shipped for translation.
-# ==============================================================================
-
-# "secondaryUpdateSiteName" property - label for the secondary update site (on download.eclipse.org)
-secondaryUpdateSiteName=EMF/SDO/XSD Secondary Update Site
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/feature.xml
deleted file mode 100644
index f04662b..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/feature.xml
+++ /dev/null
@@ -1,59 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="org.eclipse.emf.ecore.sdo"
-      label="%featureName"
-      version="2.0.0"
-      provider-name="%providerName"
-      image="eclipse_update_120.jpg">
-
-   <description>
-      %description
-   </description>
-
-   <copyright url="http://www.eclipse.org/legal/cpl-v10.html">
-      Copyright (c) 2002-2004 IBM Corporation 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
-   </copyright>
-
-   <license url="%licenseURL">
-      %license
-   </license>
-
-   <url>
-      <update label="%updateSiteName" url="http://update.eclipse.org/updates/"/>
-      <discovery label="%secondaryUpdateSiteName" url="http://download.eclipse.org/tools/emf/updates/"/>
-   </url>
-
-   <requires>
-      <import plugin="org.eclipse.core.resources" version="3.0.0" match="compatible"/>
-      <import plugin="org.eclipse.emf.ecore" version="2.0.0" match="compatible"/>
-   </requires>
-
-   <plugin
-         id="org.eclipse.emf.commonj.sdo"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.ecore.sdo"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.ecore.sdo.edit"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.ecore.sdo.editor"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-</feature>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/license.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/license.html
deleted file mode 100644
index af8c380..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.ecore.sdo_2.0.0/license.html
+++ /dev/null
@@ -1,71 +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>14th August, 2003</p>
-
-<h3>Usage Of Content</h3>
-
-<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>
-   
-<h3>Applicable Licenses</h3>   
-   
-<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.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
-	<li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-	<li>IBM Public License 1.0 (available at <a href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>	
-	<li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-	<li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH 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>
-
-<h3>Cryptography</h3>
-
-<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>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/META-INF/MANIFEST.MF b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/META-INF/MANIFEST.MF
deleted file mode 100644
index 59499bc..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,2 +0,0 @@
-Manifest-Version: 1.0
-
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/cpl-v10.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/cpl-v10.html
deleted file mode 100644
index 95416c1..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/cpl-v10.html
+++ /dev/null
@@ -1,266 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator" content="HTML Tidy, see www.w3.org" />
-<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 style="font-weight: bold; text-align: center">Common Public
-License - v 1.0</p>
-
-<p>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.</p>
-
-<p style="font-weight: bold">1. DEFINITIONS</p>
-
-<p>"Contribution" means:</p>
-
-<div style="margin-left: 2em">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:</div>
-
-<div style="margin-left: 2em">i) changes to the Program, and</div>
-
-<div style="margin-left: 2em">ii) additions to the Program;</div>
-
-<div style="margin-left: 2em">where such changes and/or additions
-to the Program originate from and are distributed by that
-particular Contributor. 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. 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.</div>
-
-<p>"Contributor" means any person or entity that distributes the
-Program.</p>
-
-<p>"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.</p>
-
-<p>"Program" means the Contributions distributed in accordance with
-this Agreement.</p>
-
-<p>"Recipient" means anyone who receives the Program under this
-Agreement, including all Contributors.</p>
-
-<p style="font-weight: bold">2. GRANT OF RIGHTS</p>
-
-<div style="margin-left: 2em">a) Subject to the terms of this
-Agreement, each Contributor hereby grants Recipient a
-non-exclusive, worldwide, royalty-free copyright license to
-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.</div>
-
-<div style="margin-left: 2em">b) Subject to the terms of this
-Agreement, each Contributor hereby grants Recipient a
-non-exclusive, worldwide, 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.</div>
-
-<div style="margin-left: 2em">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.</div>
-
-<div style="margin-left: 2em">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.</div>
-
-<p style="font-weight: bold">3. REQUIREMENTS</p>
-
-<p>A Contributor may choose to distribute the Program in object
-code form under its own license agreement, provided that:</p>
-
-<div style="margin-left: 2em">a) it complies with the terms and
-conditions of this Agreement; and</div>
-
-<div style="margin-left: 2em">b) its license agreement:</div>
-
-<div style="margin-left: 2em">i) effectively disclaims 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;</div>
-
-<div style="margin-left: 2em">ii) effectively excludes on behalf of
-all Contributors all liability for damages, including direct,
-indirect, special, incidental and consequential damages, such as
-lost profits;</div>
-
-<div style="margin-left: 2em">iii) states that any provisions which
-differ from this Agreement are offered by that Contributor alone
-and not by any other party; and</div>
-
-<div style="margin-left: 2em">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.</div>
-
-<p>When the Program is made available in source code form:</p>
-
-<div style="margin-left: 2em">a) it must be made available under
-this Agreement; and</div>
-
-<div style="margin-left: 2em">b) a copy of this Agreement must be
-included with each copy of the Program.</div>
-
-<p>Contributors may not remove or alter any copyright notices
-contained within the Program.</p>
-
-<p>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.</p>
-
-<p style="font-weight: bold">4. COMMERCIAL DISTRIBUTION</p>
-
-<p>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.</p>
-
-<p>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.</p>
-
-<p style="font-weight: bold">5. NO WARRANTY</p>
-
-<p>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 solely responsible for determining the appropriateness of using
-and distributing the Program and assumes all risks associated with
-its exercise of rights under this Agreement, including but not
-limited to the risks and costs of program errors, compliance with
-applicable laws, damage to or loss of data, programs or equipment,
-and unavailability or interruption of operations.</p>
-
-<p style="font-weight: bold">6. DISCLAIMER OF LIABILITY</p>
-
-<p>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 (INCLUDING WITHOUT LIMITATION LOST PROFITS), 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.</p>
-
-<p style="font-weight: bold">7. GENERAL</p>
-
-<p>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.</p>
-
-<p>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.</p>
-
-<p>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.</p>
-
-<p>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 publish new versions
-(including revisions) of this Agreement from time to 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. 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
-version. 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, by implication, estoppel or otherwise. All rights in the
-Program not expressly granted under this Agreement are
-reserved.</p>
-
-<p>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.</p>
-</body>
-</html>
-
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/eclipse_update_120.jpg b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/eclipse_update_120.jpg
deleted file mode 100644
index 68e3e02..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/feature.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/feature.properties
deleted file mode 100644
index 9e4b7cd..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/feature.properties
+++ /dev/null
@@ -1,130 +0,0 @@
-# /**
-#  * <copyright>
-#  *
-#  * Copyright (c) 2002-2004 IBM Corporation 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 - Initial API and implementation
-#  *
-#  * </copyright>
-#  *
-#  * $Id: feature.properties,v 1.1 2004/03/06 17:31:31 marcelop Exp $
-#  */
-
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=EMF SDK
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=Binaries and API documentation and source zips for EMF.
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE.ORG SOFTWARE USER AGREEMENT\n\
-14th August, 2003\n\
-\n\
-Usage Of Content\n\
-\n\
-ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by Eclipse.org\n\
-is provided to you under the terms and conditions of the Common Public\n\
-License Version 1.0 ("CPL"). A copy of the CPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/cpl-v10.html.\n\
-For purposes of the CPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments\n\
-("Fragments"), and features ("Features"). A Feature is a bundle of one or\n\
-more Plug-ins and/or Fragments and associated material. Files named\n\
-"feature.xml" may contain a list of the names and version numbers of the\n\
-Plug-ins and/or Fragments associated with a Feature. Plug-ins and Fragments\n\
-are located in directories named "plugins" and Features are located in\n\
-directories named "features".\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Subdirectories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by Eclipse.org is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact Eclipse.org to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n
-########### end of license property ##########################################
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/feature.xml
deleted file mode 100644
index 6418de2..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/feature.xml
+++ /dev/null
@@ -1,86 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-/**
- * <copyright>
- *
- * Copyright (c) 2002-2004 IBM Corporation 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 - Initial API and implementation
- *
- * </copyright>
- *
- * $Id: feature.xml,v 1.2 2004/03/25 14:06:34 marcelop Exp $
- */
--->
-
-<feature
-    id="org.eclipse.emf.sdk"
-    label="%featureName"
-    version="2.0.0"
-    image= "eclipse_update_120.jpg"
-    provider-name="%providerName">
-
-	<description>
-        %description
-    </description>
-   
-	<license url="%licenseURL">
-        %license
-    </license>
-
-    <url>
-      <update url="http://update.eclipse.org/updates" label="%updateSiteName"/>
-    </url>
-
-    <includes
-        id="org.eclipse.emf"
-        version="2.0.0"
-        match="compatible"/> 
-        
-    <includes
-        id="org.eclipse.emf.source"
-        version="2.0.0"
-        match="compatible"/> 
-
-    <includes
-        id="org.eclipse.emf.doc"
-        version="2.0.0"
-        match="compatible"/>   
-
-    <includes
-        id="org.eclipse.xsd"
-        version="2.0.0"
-        match="compatible"/> 
-
-    <includes
-        id="org.eclipse.xsd.source"
-        version="2.0.0"
-        match="compatible"/> 
-
-    <includes
-        id="org.eclipse.xsd.doc"
-        version="2.0.0"
-        match="compatible"/> 
-
-    <includes
-        id="org.eclipse.emf.ecore.sdo"
-        version="2.0.0"
-        match="compatible"/> 
-
-    <includes
-        id="org.eclipse.emf.ecore.sdo.source"
-        version="2.0.0"
-        match="compatible"/> 
-
-    <includes
-        id="org.eclipse.emf.ecore.sdo.doc"
-        version="2.0.0"
-        match="compatible"/> 
-       
-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/license.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/license.html
deleted file mode 100644
index 07a5e18..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.sdk_2.0.0/license.html
+++ /dev/null
@@ -1,126 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator" content="HTML Tidy, see www.w3.org" />
-<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>14th August, 2003</p>
-
-<h3>Usage Of Content</h3>
-
-<p>ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION
-AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY
-"CONTENT"). 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>
-
-<h3>Applicable Licenses</h3>
-
-<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 ("CPL"). 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, "Program" 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 ("Repository") in CVS modules ("Modules") and made
-available as downloadable archives ("Downloads").</p>
-
-<p>Content may be apportioned into plug-ins ("Plug-ins"), plug-in
-fragments ("Fragments"), and features ("Features"). A Feature is a
-bundle of one or more Plug-ins and/or Fragments and associated
-material. Files named "feature.xml" 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 "plugins" and Features are located in directories named
-"features".</p>
-
-<p>Features may also include other Features ("Included Features").
-Files named "feature.xml" 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 "about.html" ("Abouts"). The terms and
-conditions governing Features and Included Features should be
-contained in files named "license.html" ("Feature Licenses").
-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 "src" 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
-("Feature Update License") 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 "license" property of
-files named "feature.properties". 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.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY
-REFER TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND
-CONDITIONS. SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT
-ARE NOT LIMITED TO):</p>
-
-<ul>
-<li>Apache Software License 1.1 (available at <a
-href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-
-<li>IBM Public License 1.0 (available at <a
-href="http://oss.software.ibm.com/developerworks/opensource/license10.html">
-http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>
-
-<li>Metro Link Public License 1.00 (available at <a
-href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">
-http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-
-<li>Mozilla Public License Version 1.1 (available at <a
-href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH 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>
-
-<h3>Cryptography</h3>
-
-<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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/META-INF/MANIFEST.MF b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/META-INF/MANIFEST.MF
deleted file mode 100644
index 59499bc..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,2 +0,0 @@
-Manifest-Version: 1.0
-
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/cpl-v10.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/cpl-v10.html
deleted file mode 100644
index 95416c1..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/cpl-v10.html
+++ /dev/null
@@ -1,266 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator" content="HTML Tidy, see www.w3.org" />
-<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 style="font-weight: bold; text-align: center">Common Public
-License - v 1.0</p>
-
-<p>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.</p>
-
-<p style="font-weight: bold">1. DEFINITIONS</p>
-
-<p>"Contribution" means:</p>
-
-<div style="margin-left: 2em">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:</div>
-
-<div style="margin-left: 2em">i) changes to the Program, and</div>
-
-<div style="margin-left: 2em">ii) additions to the Program;</div>
-
-<div style="margin-left: 2em">where such changes and/or additions
-to the Program originate from and are distributed by that
-particular Contributor. 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. 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.</div>
-
-<p>"Contributor" means any person or entity that distributes the
-Program.</p>
-
-<p>"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.</p>
-
-<p>"Program" means the Contributions distributed in accordance with
-this Agreement.</p>
-
-<p>"Recipient" means anyone who receives the Program under this
-Agreement, including all Contributors.</p>
-
-<p style="font-weight: bold">2. GRANT OF RIGHTS</p>
-
-<div style="margin-left: 2em">a) Subject to the terms of this
-Agreement, each Contributor hereby grants Recipient a
-non-exclusive, worldwide, royalty-free copyright license to
-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.</div>
-
-<div style="margin-left: 2em">b) Subject to the terms of this
-Agreement, each Contributor hereby grants Recipient a
-non-exclusive, worldwide, 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.</div>
-
-<div style="margin-left: 2em">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.</div>
-
-<div style="margin-left: 2em">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.</div>
-
-<p style="font-weight: bold">3. REQUIREMENTS</p>
-
-<p>A Contributor may choose to distribute the Program in object
-code form under its own license agreement, provided that:</p>
-
-<div style="margin-left: 2em">a) it complies with the terms and
-conditions of this Agreement; and</div>
-
-<div style="margin-left: 2em">b) its license agreement:</div>
-
-<div style="margin-left: 2em">i) effectively disclaims 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;</div>
-
-<div style="margin-left: 2em">ii) effectively excludes on behalf of
-all Contributors all liability for damages, including direct,
-indirect, special, incidental and consequential damages, such as
-lost profits;</div>
-
-<div style="margin-left: 2em">iii) states that any provisions which
-differ from this Agreement are offered by that Contributor alone
-and not by any other party; and</div>
-
-<div style="margin-left: 2em">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.</div>
-
-<p>When the Program is made available in source code form:</p>
-
-<div style="margin-left: 2em">a) it must be made available under
-this Agreement; and</div>
-
-<div style="margin-left: 2em">b) a copy of this Agreement must be
-included with each copy of the Program.</div>
-
-<p>Contributors may not remove or alter any copyright notices
-contained within the Program.</p>
-
-<p>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.</p>
-
-<p style="font-weight: bold">4. COMMERCIAL DISTRIBUTION</p>
-
-<p>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.</p>
-
-<p>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.</p>
-
-<p style="font-weight: bold">5. NO WARRANTY</p>
-
-<p>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 solely responsible for determining the appropriateness of using
-and distributing the Program and assumes all risks associated with
-its exercise of rights under this Agreement, including but not
-limited to the risks and costs of program errors, compliance with
-applicable laws, damage to or loss of data, programs or equipment,
-and unavailability or interruption of operations.</p>
-
-<p style="font-weight: bold">6. DISCLAIMER OF LIABILITY</p>
-
-<p>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 (INCLUDING WITHOUT LIMITATION LOST PROFITS), 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.</p>
-
-<p style="font-weight: bold">7. GENERAL</p>
-
-<p>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.</p>
-
-<p>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.</p>
-
-<p>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.</p>
-
-<p>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 publish new versions
-(including revisions) of this Agreement from time to 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. 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
-version. 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, by implication, estoppel or otherwise. All rights in the
-Program not expressly granted under this Agreement are
-reserved.</p>
-
-<p>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.</p>
-</body>
-</html>
-
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/eclipse_update_120.jpg b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/eclipse_update_120.jpg
deleted file mode 100644
index 68e3e02..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/feature.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/feature.properties
deleted file mode 100644
index b51fd10..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/feature.properties
+++ /dev/null
@@ -1,141 +0,0 @@
-# /**
-#  * <copyright>
-#  *
-#  * Copyright (c) 2002-2004 IBM Corporation 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 - Initial API and implementation
-#  *
-#  * </copyright>
-#  *
-#  * $Id: feature.properties,v 1.2 2004/05/26 15:16:25 marcelop Exp $
-#  */
-
-# ==============================================================================
-# Do not change the properties between this line and the last line containing:
-# %%% END OF TRANSLATED PROPERTIES %%%
-# Instead, either redefine an existing property, or create a new property,
-# append it to the end of the file, and change the code to use the new name.
-# ==============================================================================
-
-# This file contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse Modeling Framework (EMF) Source
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=Eclipse Modeling Framework. (source code)
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE.ORG SOFTWARE USER AGREEMENT\n\
-14th August, 2003\n\
-\n\
-Usage Of Content\n\
-\n\
-ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by Eclipse.org\n\
-is provided to you under the terms and conditions of the Common Public\n\
-License Version 1.0 ("CPL"). A copy of the CPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/cpl-v10.html.\n\
-For purposes of the CPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments\n\
-("Fragments"), and features ("Features"). A Feature is a bundle of one or\n\
-more Plug-ins and/or Fragments and associated material. Files named\n\
-"feature.xml" may contain a list of the names and version numbers of the\n\
-Plug-ins and/or Fragments associated with a Feature. Plug-ins and Fragments\n\
-are located in directories named "plugins" and Features are located in\n\
-directories named "features".\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Subdirectories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by Eclipse.org is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact Eclipse.org to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n
-########### end of license property ##########################################
-
-# ==============================================================================
-# %%% END OF TRANSLATED PROPERTIES %%%
-# The above properties have been shipped for translation.
-# ==============================================================================
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/feature.xml
deleted file mode 100644
index 2200214..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/feature.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature primary="false"  provider-name="%providerName"    label="%featureName"  image="eclipse_update_120.jpg" id="org.eclipse.emf.source"  version="2.0.0">
-	<description >
-		%description
-	</description>
-	<copyright url="http://www.eclipse.org/legal/cpl-v10.html">
-		Copyright (c) 2002-2004 IBM Corporation 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
-	</copyright>
-	<license url="%licenseURL">
-		%license
-	</license>
-	<url>
-		<update label="%updateSiteName" url="http://update.eclipse.org/updates/"/>
-		<discovery label="%secondaryUpdateSiteName" url="http://download.eclipse.org/tools/emf/updates/"/>
-	</url>
-	<plugin    fragment="false"  download-size="0" install-size="0" id="org.eclipse.emf.source" version="2.0.0"/>
-</feature>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/license.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/license.html
deleted file mode 100644
index 07a5e18..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf.source_2.0.0/license.html
+++ /dev/null
@@ -1,126 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator" content="HTML Tidy, see www.w3.org" />
-<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>14th August, 2003</p>
-
-<h3>Usage Of Content</h3>
-
-<p>ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION
-AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY
-"CONTENT"). 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>
-
-<h3>Applicable Licenses</h3>
-
-<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 ("CPL"). 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, "Program" 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 ("Repository") in CVS modules ("Modules") and made
-available as downloadable archives ("Downloads").</p>
-
-<p>Content may be apportioned into plug-ins ("Plug-ins"), plug-in
-fragments ("Fragments"), and features ("Features"). A Feature is a
-bundle of one or more Plug-ins and/or Fragments and associated
-material. Files named "feature.xml" 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 "plugins" and Features are located in directories named
-"features".</p>
-
-<p>Features may also include other Features ("Included Features").
-Files named "feature.xml" 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 "about.html" ("Abouts"). The terms and
-conditions governing Features and Included Features should be
-contained in files named "license.html" ("Feature Licenses").
-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 "src" 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
-("Feature Update License") 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 "license" property of
-files named "feature.properties". 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.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY
-REFER TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND
-CONDITIONS. SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT
-ARE NOT LIMITED TO):</p>
-
-<ul>
-<li>Apache Software License 1.1 (available at <a
-href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-
-<li>IBM Public License 1.0 (available at <a
-href="http://oss.software.ibm.com/developerworks/opensource/license10.html">
-http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>
-
-<li>Metro Link Public License 1.00 (available at <a
-href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">
-http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-
-<li>Mozilla Public License Version 1.1 (available at <a
-href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH 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>
-
-<h3>Cryptography</h3>
-
-<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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/META-INF/MANIFEST.MF b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/META-INF/MANIFEST.MF
deleted file mode 100644
index 59499bc..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,2 +0,0 @@
-Manifest-Version: 1.0
-
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/cpl-v10.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/cpl-v10.html
deleted file mode 100644
index 95416c1..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/cpl-v10.html
+++ /dev/null
@@ -1,266 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator" content="HTML Tidy, see www.w3.org" />
-<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 style="font-weight: bold; text-align: center">Common Public
-License - v 1.0</p>
-
-<p>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.</p>
-
-<p style="font-weight: bold">1. DEFINITIONS</p>
-
-<p>"Contribution" means:</p>
-
-<div style="margin-left: 2em">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:</div>
-
-<div style="margin-left: 2em">i) changes to the Program, and</div>
-
-<div style="margin-left: 2em">ii) additions to the Program;</div>
-
-<div style="margin-left: 2em">where such changes and/or additions
-to the Program originate from and are distributed by that
-particular Contributor. 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. 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.</div>
-
-<p>"Contributor" means any person or entity that distributes the
-Program.</p>
-
-<p>"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.</p>
-
-<p>"Program" means the Contributions distributed in accordance with
-this Agreement.</p>
-
-<p>"Recipient" means anyone who receives the Program under this
-Agreement, including all Contributors.</p>
-
-<p style="font-weight: bold">2. GRANT OF RIGHTS</p>
-
-<div style="margin-left: 2em">a) Subject to the terms of this
-Agreement, each Contributor hereby grants Recipient a
-non-exclusive, worldwide, royalty-free copyright license to
-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.</div>
-
-<div style="margin-left: 2em">b) Subject to the terms of this
-Agreement, each Contributor hereby grants Recipient a
-non-exclusive, worldwide, 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.</div>
-
-<div style="margin-left: 2em">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.</div>
-
-<div style="margin-left: 2em">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.</div>
-
-<p style="font-weight: bold">3. REQUIREMENTS</p>
-
-<p>A Contributor may choose to distribute the Program in object
-code form under its own license agreement, provided that:</p>
-
-<div style="margin-left: 2em">a) it complies with the terms and
-conditions of this Agreement; and</div>
-
-<div style="margin-left: 2em">b) its license agreement:</div>
-
-<div style="margin-left: 2em">i) effectively disclaims 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;</div>
-
-<div style="margin-left: 2em">ii) effectively excludes on behalf of
-all Contributors all liability for damages, including direct,
-indirect, special, incidental and consequential damages, such as
-lost profits;</div>
-
-<div style="margin-left: 2em">iii) states that any provisions which
-differ from this Agreement are offered by that Contributor alone
-and not by any other party; and</div>
-
-<div style="margin-left: 2em">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.</div>
-
-<p>When the Program is made available in source code form:</p>
-
-<div style="margin-left: 2em">a) it must be made available under
-this Agreement; and</div>
-
-<div style="margin-left: 2em">b) a copy of this Agreement must be
-included with each copy of the Program.</div>
-
-<p>Contributors may not remove or alter any copyright notices
-contained within the Program.</p>
-
-<p>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.</p>
-
-<p style="font-weight: bold">4. COMMERCIAL DISTRIBUTION</p>
-
-<p>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.</p>
-
-<p>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.</p>
-
-<p style="font-weight: bold">5. NO WARRANTY</p>
-
-<p>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 solely responsible for determining the appropriateness of using
-and distributing the Program and assumes all risks associated with
-its exercise of rights under this Agreement, including but not
-limited to the risks and costs of program errors, compliance with
-applicable laws, damage to or loss of data, programs or equipment,
-and unavailability or interruption of operations.</p>
-
-<p style="font-weight: bold">6. DISCLAIMER OF LIABILITY</p>
-
-<p>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 (INCLUDING WITHOUT LIMITATION LOST PROFITS), 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.</p>
-
-<p style="font-weight: bold">7. GENERAL</p>
-
-<p>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.</p>
-
-<p>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.</p>
-
-<p>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.</p>
-
-<p>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 publish new versions
-(including revisions) of this Agreement from time to 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. 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
-version. 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, by implication, estoppel or otherwise. All rights in the
-Program not expressly granted under this Agreement are
-reserved.</p>
-
-<p>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.</p>
-</body>
-</html>
-
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/eclipse_update_120.jpg b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/eclipse_update_120.jpg
deleted file mode 100644
index 68e3e02..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/feature.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/feature.properties
deleted file mode 100644
index 374b9bf..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/feature.properties
+++ /dev/null
@@ -1,144 +0,0 @@
-# /**
-#  * <copyright>
-#  *
-#  * Copyright (c) 2002-2004 IBM Corporation 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 - Initial API and implementation
-#  *
-#  * </copyright>
-#  *
-#  * $Id: feature.properties,v 1.4 2004/05/26 15:16:25 marcelop Exp $
-#  */
-
-# ==============================================================================
-# Do not change the properties between this line and the last line containing:
-# %%% END OF TRANSLATED PROPERTIES %%%
-# Instead, either redefine an existing property, or create a new property,
-# append it to the end of the file, and change the code to use the new name.
-# ==============================================================================
-
-# This file contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse Modeling Framework (EMF)
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=Eclipse Modeling Framework. (Binary runtime)
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE.ORG SOFTWARE USER AGREEMENT\n\
-14th August, 2003\n\
-\n\
-Usage Of Content\n\
-\n\
-ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by Eclipse.org\n\
-is provided to you under the terms and conditions of the Common Public\n\
-License Version 1.0 ("CPL"). A copy of the CPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/cpl-v10.html.\n\
-For purposes of the CPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments\n\
-("Fragments"), and features ("Features"). A Feature is a bundle of one or\n\
-more Plug-ins and/or Fragments and associated material. Files named\n\
-"feature.xml" may contain a list of the names and version numbers of the\n\
-Plug-ins and/or Fragments associated with a Feature. Plug-ins and Fragments\n\
-are located in directories named "plugins" and Features are located in\n\
-directories named "features".\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Subdirectories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by Eclipse.org is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact Eclipse.org to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n
-########### end of license property ##########################################
-
-# ==============================================================================
-# %%% END OF TRANSLATED PROPERTIES %%%
-# The above properties have been shipped for translation.
-# ==============================================================================
-
-# "secondaryUpdateSiteName" property - label for the secondary update site (on download.eclipse.org)
-secondaryUpdateSiteName=EMF/SDO/XSD Secondary Update Site
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/feature.xml
deleted file mode 100644
index 6d59f37..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/feature.xml
+++ /dev/null
@@ -1,148 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="org.eclipse.emf"
-      label="%featureName"
-      version="2.0.0"
-      provider-name="%providerName"
-      image="eclipse_update_120.jpg">
-
-   <description>
-      %description
-   </description>
-
-   <copyright url="http://www.eclipse.org/legal/cpl-v10.html">
-      Copyright (c) 2002-2004 IBM Corporation 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
-   </copyright>
-
-   <license url="%licenseURL">
-      %license
-   </license>
-
-   <url>
-      <update label="%updateSiteName" url="http://update.eclipse.org/updates/"/>
-      <discovery label="%secondaryUpdateSiteName" url="http://download.eclipse.org/tools/emf/updates/"/>
-   </url>
-
-   <requires>
-      <import plugin="org.eclipse.core.resources" version="3.0.0" match="compatible"/>
-   </requires>
-
-   <plugin
-         id="org.eclipse.emf"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.codegen"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.codegen.ui"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.codegen.ecore"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.codegen.ecore.ui"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.common"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.common.ui"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.ecore"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.ecore.edit"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.ecore.editor"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.ecore.change"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.ecore.change.edit"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.ecore.xmi"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.edit"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.edit.ui"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.mapping"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.mapping.ui"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.mapping.ecore2ecore"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.mapping.ecore2ecore.editor"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-</feature>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/license.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/license.html
deleted file mode 100644
index 07a5e18..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.emf_2.0.0/license.html
+++ /dev/null
@@ -1,126 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta name="generator" content="HTML Tidy, see www.w3.org" />
-<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>14th August, 2003</p>
-
-<h3>Usage Of Content</h3>
-
-<p>ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION
-AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY
-"CONTENT"). 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>
-
-<h3>Applicable Licenses</h3>
-
-<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 ("CPL"). 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, "Program" 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 ("Repository") in CVS modules ("Modules") and made
-available as downloadable archives ("Downloads").</p>
-
-<p>Content may be apportioned into plug-ins ("Plug-ins"), plug-in
-fragments ("Fragments"), and features ("Features"). A Feature is a
-bundle of one or more Plug-ins and/or Fragments and associated
-material. Files named "feature.xml" 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 "plugins" and Features are located in directories named
-"features".</p>
-
-<p>Features may also include other Features ("Included Features").
-Files named "feature.xml" 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 "about.html" ("Abouts"). The terms and
-conditions governing Features and Included Features should be
-contained in files named "license.html" ("Feature Licenses").
-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 "src" 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
-("Feature Update License") 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 "license" property of
-files named "feature.properties". 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.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY
-REFER TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND
-CONDITIONS. SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT
-ARE NOT LIMITED TO):</p>
-
-<ul>
-<li>Apache Software License 1.1 (available at <a
-href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-
-<li>IBM Public License 1.0 (available at <a
-href="http://oss.software.ibm.com/developerworks/opensource/license10.html">
-http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>
-
-<li>Metro Link Public License 1.00 (available at <a
-href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">
-http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-
-<li>Mozilla Public License Version 1.1 (available at <a
-href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH 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>
-
-<h3>Cryptography</h3>
-
-<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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/.project b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/.project
deleted file mode 100644
index 472b822..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jdt-feature</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/cpl-v10.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/cpl-v10.html
deleted file mode 100644
index 36aa208..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/eclipse_update_120.jpg b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/eclipse_update_120.jpg
deleted file mode 100644
index 68e3e02..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/feature.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/feature.properties
deleted file mode 100644
index 38ba95a..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/feature.properties
+++ /dev/null
@@ -1,124 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse Java Development Tools
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=Eclipse Java development tools. (Binary runtime and user documentation.)
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE.ORG SOFTWARE USER AGREEMENT\n\
-15th June, 2004\n\
-\n\
-Usage Of Content\n\
-\n\
-ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by Eclipse.org\n\
-is provided to you under the terms and conditions of the Common Public\n\
-License Version 1.0 ("CPL"). A copy of the CPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/cpl-v10.html.\n\
-For purposes of the CPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments\n\
-("Fragments"), and features ("Features"). A Feature is a bundle of one or\n\
-more Plug-ins and/or Fragments and associated material. Files named\n\
-"feature.xml" may contain a list of the names and version numbers of the\n\
-Plug-ins and/or Fragments associated with a Feature. Plug-ins and Fragments\n\
-are located in directories named "plugins" and Features are located in\n\
-directories named "features".\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Subdirectories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by Eclipse.org is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Eclipse Public License Version 1.0 (available at http://www.eclipse.org/legal/epl-v10.html)\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact Eclipse.org to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n
-########### end of license property ##########################################
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/feature.xml
deleted file mode 100644
index cb0b530..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/feature.xml
+++ /dev/null
@@ -1,113 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="org.eclipse.jdt"
-      label="%featureName"
-      version="3.1.0"
-      image= "eclipse_update_120.jpg"
-      provider-name="%providerName">
-
-   <description>
-      %description
-   </description>
-
-   <license url="%licenseURL">
-     %license
-   </license>
-
-   <url>
-      <update label="%updateSiteName" url="http://update.eclipse.org/updates/3.0"/>
-      <discovery label="%updateSiteName" url="http://update.eclipse.org/updates/3.0"/>
-   </url>
-
-  <requires>
-      <import plugin="org.eclipse.platform" version="3.1.0" match="compatible" />
-  </requires>
-  
-   <plugin
-         id="org.eclipse.jdt"
-         download-size="0"
-         install-size="0"
-         version="3.1.0">
-   </plugin>
-
-   <plugin
-         id="org.eclipse.ant.ui"
-         download-size="0"
-         install-size="0"
-         version="3.1.0">
-   </plugin>
-
-   <plugin
-         id="org.eclipse.ltk.core.refactoring"
-         download-size="0"
-         install-size="0"
-         version="3.1.0">
-   </plugin>
-
-   <plugin
-         id="org.eclipse.ltk.ui.refactoring"
-         download-size="0"
-         install-size="0"
-         version="3.1.0">
-   </plugin>
-
-   <plugin
-         id="org.eclipse.jdt.core"
-         download-size="0"
-         install-size="0"
-         version="3.1.0">
-   </plugin>
-
-   <plugin
-         id="org.eclipse.jdt.debug.ui"
-         download-size="0"
-         install-size="0"
-         version="3.1.0">
-   </plugin>
-
-   <plugin
-         id="org.eclipse.jdt.debug"
-         download-size="0"
-         install-size="0"
-         version="3.1.0">
-   </plugin>
-
-   <plugin
-         id="org.eclipse.jdt.junit"
-         download-size="0"
-         install-size="0"
-         version="3.1.0">
-   </plugin>
-
-   <plugin
-         id="org.eclipse.jdt.junit.runtime"
-         download-size="0"
-         install-size="0"
-         version="3.1.0">
-   </plugin>
-
-   <plugin
-         id="org.eclipse.jdt.launching"
-         download-size="0"
-         install-size="0"
-         version="3.1.0">
-   </plugin>
-
-   <plugin
-         id="org.eclipse.jdt.ui"
-         download-size="0"
-         install-size="0"
-         version="3.1.0">
-   </plugin>
-
-   <plugin
-         id="org.junit"
-         download-size="0"
-         install-size="0"
-         version="3.8.1">
-   </plugin>
-
-   <plugin id="org.eclipse.jdt.doc.user" version="3.1.0"/>
-
-   <plugin id="org.eclipse.jdt.launching.macosx" version="3.1.0"  os="macosx" ws="carbon"/>  
-</feature>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/license.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/license.html
deleted file mode 100644
index e7d8500..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt-feature/license.html
+++ /dev/null
@@ -1,72 +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>15<sup>th</sup> June, 2004</p>
-
-<h3>Usage Of Content</h3>
-
-<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>
-   
-<h3>Applicable Licenses</h3>   
-   
-<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.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
-	<li>Eclipse Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>)</li>
-	<li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-	<li>IBM Public License 1.0 (available at <a href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>	
-	<li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-	<li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH 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>
-
-<h3>Cryptography</h3>
-
-<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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/.project b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/.project
deleted file mode 100644
index 35af184..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jdt.source-feature</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/cpl-v10.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/cpl-v10.html
deleted file mode 100644
index 158d99c..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/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>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/eclipse_update_120.jpg b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/eclipse_update_120.jpg
deleted file mode 100644
index 68e3e02..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/feature.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/feature.properties
deleted file mode 100644
index 631ceca..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/feature.properties
+++ /dev/null
@@ -1,124 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse JDT Plug-in Developer Resources
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=API documentation and source code zips for Eclipse Java development tools.
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE.ORG SOFTWARE USER AGREEMENT\n\
-15th June, 2004\n\
-\n\
-Usage Of Content\n\
-\n\
-ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by Eclipse.org\n\
-is provided to you under the terms and conditions of the Common Public\n\
-License Version 1.0 ("CPL"). A copy of the CPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/cpl-v10.html.\n\
-For purposes of the CPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments\n\
-("Fragments"), and features ("Features"). A Feature is a bundle of one or\n\
-more Plug-ins and/or Fragments and associated material. Files named\n\
-"feature.xml" may contain a list of the names and version numbers of the\n\
-Plug-ins and/or Fragments associated with a Feature. Plug-ins and Fragments\n\
-are located in directories named "plugins" and Features are located in\n\
-directories named "features".\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Subdirectories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by Eclipse.org is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Eclipse Public License Version 1.0 (available at http://www.eclipse.org/legal/epl-v10.html)\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact Eclipse.org to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n
-########### end of license property ##########################################
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/feature.xml
deleted file mode 100644
index 336ac86..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/feature.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature primary="false"  provider-name="%providerName"    label="%featureName"  image="eclipse_update_120.jpg" id="org.eclipse.jdt.source"  version="3.1.0">
-	<description >
-		%description
-	</description>
-	<license url="%licenseURL">
-		%license
-	</license>
-	<url>
-		<update label="%updateSiteName" url="http://update.eclipse.org/updates/3.0"/>
-		<discovery label="%updateSiteName" url="http://update.eclipse.org/updates/3.0"/>
-	</url>
-	<plugin    fragment="false"  download-size="0" install-size="0" id="org.eclipse.jdt.doc.isv" version="3.1.0"/>
-	<plugin    fragment="false"  download-size="0" install-size="0" id="org.eclipse.jdt.source" version="3.1.0"/>
-	<plugin ws="carbon"  os="macosx" fragment="true" arch="ppc" download-size="0" install-size="0" id="org.eclipse.jdt.source.macosx.carbon.ppc" version="3.1.0"/>
-</feature>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/license.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/license.html
deleted file mode 100644
index e7d8500..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.jdt.source-feature/license.html
+++ /dev/null
@@ -1,72 +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>15<sup>th</sup> June, 2004</p>
-
-<h3>Usage Of Content</h3>
-
-<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>
-   
-<h3>Applicable Licenses</h3>   
-   
-<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.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
-	<li>Eclipse Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>)</li>
-	<li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-	<li>IBM Public License 1.0 (available at <a href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>	
-	<li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-	<li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH 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>
-
-<h3>Cryptography</h3>
-
-<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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/.project b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/.project
deleted file mode 100644
index 223a24d..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.pde-feature</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/cpl-v10.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/cpl-v10.html
deleted file mode 100644
index 36aa208..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/eclipse_update_120.jpg b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/eclipse_update_120.jpg
deleted file mode 100644
index 68e3e02..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/feature.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/feature.properties
deleted file mode 100644
index 7b82e46..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/feature.properties
+++ /dev/null
@@ -1,124 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse Plug-in Development Environment
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=Eclipse plug-in development environment.
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE.ORG SOFTWARE USER AGREEMENT\n\
-15th June, 2004\n\
-\n\
-Usage Of Content\n\
-\n\
-ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by Eclipse.org\n\
-is provided to you under the terms and conditions of the Common Public\n\
-License Version 1.0 ("CPL"). A copy of the CPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/cpl-v10.html.\n\
-For purposes of the CPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments\n\
-("Fragments"), and features ("Features"). A Feature is a bundle of one or\n\
-more Plug-ins and/or Fragments and associated material. Files named\n\
-"feature.xml" may contain a list of the names and version numbers of the\n\
-Plug-ins and/or Fragments associated with a Feature. Plug-ins and Fragments\n\
-are located in directories named "plugins" and Features are located in\n\
-directories named "features".\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Subdirectories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by Eclipse.org is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Eclipse Public License Version 1.0 (available at http://www.eclipse.org/legal/epl-v10.html)\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact Eclipse.org to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n
-########### end of license property ##########################################
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/feature.xml
deleted file mode 100644
index 5d22266..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/feature.xml
+++ /dev/null
@@ -1,69 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="org.eclipse.pde"
-      label="%featureName"
-      version="3.1.0"
-      provider-name="%providerName"
-      image="eclipse_update_120.jpg">
-
-   <description>
-      %description
-   </description>
-
-   <license url="%licenseURL">
-      %license
-   </license>
-
-   <url>
-      <update label="%updateSiteName" url="http://update.eclipse.org/updates/3.0"/>
-      <discovery label="%updateSiteName" url="http://update.eclipse.org/updates/3.0"/>
-   </url>
-
-   <requires>
-      <import plugin="org.eclipse.jdt" version="3.0.0" match="compatible"/>
-      <import plugin="org.eclipse.platform" version="3.0.0" match="compatible"/>
-   </requires>
-
-   <plugin
-         id="org.eclipse.pde"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.pde.build"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.pde.core"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.pde.junit.runtime"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-         
-   <plugin
-         id="org.eclipse.pde.runtime"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.pde.ui"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.pde.doc.user"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-</feature>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/license.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/license.html
deleted file mode 100644
index e7d8500..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde-feature/license.html
+++ /dev/null
@@ -1,72 +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>15<sup>th</sup> June, 2004</p>
-
-<h3>Usage Of Content</h3>
-
-<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>
-   
-<h3>Applicable Licenses</h3>   
-   
-<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.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
-	<li>Eclipse Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>)</li>
-	<li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-	<li>IBM Public License 1.0 (available at <a href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>	
-	<li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-	<li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH 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>
-
-<h3>Cryptography</h3>
-
-<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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/.project b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/.project
deleted file mode 100644
index f4bce7b..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.pde.source-feature</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/cpl-v10.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/cpl-v10.html
deleted file mode 100644
index 36aa208..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/eclipse_update_120.jpg b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/eclipse_update_120.jpg
deleted file mode 100644
index 68e3e02..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/feature.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/feature.properties
deleted file mode 100644
index cd87634..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/feature.properties
+++ /dev/null
@@ -1,124 +0,0 @@
-###############################################################################
-# Copyright (c) 2004 IBM Corporation 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 API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse PDE Plug-in Developer Resources
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=Eclipse plug-in development environment, including documentation and source code zips.
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE.ORG SOFTWARE USER AGREEMENT\n\
-15th June, 2004\n\
-\n\
-Usage Of Content\n\
-\n\
-ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by Eclipse.org\n\
-is provided to you under the terms and conditions of the Common Public\n\
-License Version 1.0 ("CPL"). A copy of the CPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/cpl-v10.html.\n\
-For purposes of the CPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments\n\
-("Fragments"), and features ("Features"). A Feature is a bundle of one or\n\
-more Plug-ins and/or Fragments and associated material. Files named\n\
-"feature.xml" may contain a list of the names and version numbers of the\n\
-Plug-ins and/or Fragments associated with a Feature. Plug-ins and Fragments\n\
-are located in directories named "plugins" and Features are located in\n\
-directories named "features".\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Subdirectories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by Eclipse.org is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Eclipse Public License Version 1.0 (available at http://www.eclipse.org/legal/epl-v10.html)\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact Eclipse.org to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n
-########### end of license property ##########################################
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/feature.xml
deleted file mode 100644
index 5abbbc7..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/feature.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature primary="false"  provider-name="%providerName"    label="%featureName"  image="eclipse_update_120.jpg" id="org.eclipse.pde.source"  version="3.1.0">
-	<description >
-		%description
-	</description>
-	<license url="%licenseURL">
-		%license
-	</license>
-	<url>
-		<update label="%updateSiteName" url="http://update.eclipse.org/updates/3.0"/>
-		<discovery label="%updateSiteName" url="http://update.eclipse.org/updates/3.0"/>
-	</url>
-	<plugin    fragment="false"  download-size="0" install-size="0" id="org.eclipse.pde.source" version="3.1.0"/>
-</feature>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/license.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/license.html
deleted file mode 100644
index e7d8500..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.pde.source-feature/license.html
+++ /dev/null
@@ -1,72 +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>15<sup>th</sup> June, 2004</p>
-
-<h3>Usage Of Content</h3>
-
-<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>
-   
-<h3>Applicable Licenses</h3>   
-   
-<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.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
-	<li>Eclipse Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>)</li>
-	<li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-	<li>IBM Public License 1.0 (available at <a href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>	
-	<li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-	<li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH 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>
-
-<h3>Cryptography</h3>
-
-<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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/.project b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/.project
deleted file mode 100644
index 9f53c70..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.platform-feature</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/cpl-v10.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/cpl-v10.html
deleted file mode 100644
index 36aa208..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/eclipse_update_120.jpg b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/eclipse_update_120.jpg
deleted file mode 100644
index 68e3e02..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/feature.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/feature.properties
deleted file mode 100644
index 2e3efd1..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/feature.properties
+++ /dev/null
@@ -1,124 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse Platform
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=Common OS-independent base of the Eclipse platform. (Binary runtime and user documentation.)
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE.ORG SOFTWARE USER AGREEMENT\n\
-15th June, 2004\n\
-\n\
-Usage Of Content\n\
-\n\
-ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by Eclipse.org\n\
-is provided to you under the terms and conditions of the Common Public\n\
-License Version 1.0 ("CPL"). A copy of the CPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/cpl-v10.html.\n\
-For purposes of the CPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments\n\
-("Fragments"), and features ("Features"). A Feature is a bundle of one or\n\
-more Plug-ins and/or Fragments and associated material. Files named\n\
-"feature.xml" may contain a list of the names and version numbers of the\n\
-Plug-ins and/or Fragments associated with a Feature. Plug-ins and Fragments\n\
-are located in directories named "plugins" and Features are located in\n\
-directories named "features".\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Subdirectories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by Eclipse.org is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Eclipse Public License Version 1.0 (available at http://www.eclipse.org/legal/epl-v10.html)\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact Eclipse.org to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n
-########### end of license property ##########################################
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/feature.xml
deleted file mode 100644
index 872f5cb..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/feature.xml
+++ /dev/null
@@ -1,387 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-In the following markup, ignore the "primary" and "application" attributes.
-See https://bugs.eclipse.org/bugs/show_bug.cgi?id=68351 for more details.
--->
-<feature
-      id="org.eclipse.platform"
-      label="%featureName"
-      version="3.1.0"
-      provider-name="%providerName"
-      plugin=""
-      image="eclipse_update_120.jpg"
-      primary="true"
-      application="org.eclipse.ui.ide.workbench">
-
-   <description>
-      %description
-   </description>
-
-   <license url="%licenseURL">
-      %license
-   </license>
-
-   <url>
-      <update label="%updateSiteName" url="http://update.eclipse.org/updates/3.0"/>
-      <discovery label="%updateSiteName" url="http://update.eclipse.org/updates/3.0"/>
-   </url>
-
-   <plugin
-         id="org.apache.ant"
-         download-size="0"
-         install-size="0"
-         version="1.6.2"/>
-
-   <plugin
-         id="org.apache.lucene"
-         download-size="0"
-         install-size="0"
-         version="1.3.0"/>
-
-   <plugin
-         id="org.eclipse.ant.core"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.compare"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.core.boot"
-         download-size="0"
-         install-size="0"
-         version="3.0.0"/>
-         
-   <plugin
-   		 id="org.eclipse.core.filebuffers"
-   		 download-size="0"
-   		 install-size="0"
-   		 version="3.1.0"/>
-   
-   <plugin
-   		 id="org.eclipse.core.expressions"
-   		 download-size="0"
-   		 install-size="0"
-   		 version="3.1.0"/>
-   
-   <plugin
-         id="org.eclipse.core.resources"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.core.runtime"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.core.runtime.compatibility"
-         download-size="0"
-         install-size="0"
-         version="3.0.0"/>
-
-   <plugin
-         id="org.eclipse.osgi"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.osgi.services"
-         download-size="0"
-         install-size="0"
-         version="3.0.0"/>
-
-   <plugin
-         id="org.eclipse.osgi.util"
-         download-size="0"
-         install-size="0"
-         version="3.0.0"/>
-
-   <plugin
-         id="org.eclipse.core.variables"
-         download-size="0"
-         install-size="0"
-         version="3.0.0"/>
-         
-   <plugin
-         id="org.eclipse.debug.core"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.debug.ui"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.help"
-         download-size="0"
-         install-size="0"
-         version="3.0.0"/>
-
-   <plugin
-         id="org.eclipse.help.webapp"
-         download-size="0"
-         install-size="0"
-         version="3.0.0"/>
-
-   <plugin
-         id="org.eclipse.help.base"
-         download-size="0"
-         install-size="0"
-         version="3.0.0"/>
-
-   <plugin
-         id="org.eclipse.help.ui"
-         download-size="0"
-         install-size="0"
-         version="3.0.0"/>
-
-   <plugin
-         id="org.eclipse.help.appserver"
-         download-size="0"
-         install-size="0"
-         version="3.0.0"/>
-
-   <plugin
-         id="org.eclipse.help.ide"
-         download-size="0"
-         install-size="0"
-         version="3.0.0"/>
-
-   <plugin
-         id="org.eclipse.platform"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.platform.doc.user"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.search"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.swt"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.team.core"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.team.cvs.core"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.team.cvs.ssh"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.team.cvs.ssh2"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.team.cvs.ui"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.team.ui"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.tomcat"
-         download-size="0"
-         install-size="0"
-         version="4.1.30"/>
-
-   <plugin
-         id="org.eclipse.text"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.jface"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.jface.text"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-	
-   <plugin
-         id="org.eclipse.ui.console"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.ui.presentations.r21"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-            
-   <plugin
-         id="org.eclipse.ui.intro"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.ui.cheatsheets"
-         download-size="0"
-         install-size="0"
-         version="3.0.0"/>
-            
-   <plugin
-         id="org.eclipse.ui.workbench"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.ui.workbench.texteditor"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.ui.views"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.ui.editors"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-         
-   <plugin
-         id="org.eclipse.ui.forms"
-         download-size="0"
-         install-size="0"
-         version="3.0.0"/>
-         
-   <plugin
-         id="org.eclipse.ui"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.ui.externaltools"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.ui.ide"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"/>
-
-   <plugin
-         id="org.eclipse.update.configurator"
-         download-size="0"
-         install-size="0"
-         version="3.0.0"/>
-
-   <plugin
-         id="org.eclipse.update.core"
-         download-size="0"
-         install-size="0"
-         version="3.0.0"/>
-
-   <plugin
-         id="org.eclipse.update.scheduler"
-         download-size="0"
-         install-size="0"
-         version="3.0.0"/>
-
-   <plugin
-         id="org.eclipse.update.ui"
-         download-size="0"
-         install-size="0"
-         version="3.0.0"/>
-        
-  <!-- Pre-3.0 binary compatibility -->
-   <plugin
-         id="org.eclipse.ui.workbench.compatibility"
-         download-size="0"
-         install-size="0"
-         version="3.1.0"
-         fragment="true"/>
-
-  <!--Aix platform inclusion -->
-  <plugin id="org.eclipse.swt.motif" download-size="0" install-size="0" version="3.1.0" fragment="true" os="aix" ws="motif"/>
-  
-  <!-- HPUX Platform specifics -->
-  <plugin id="org.eclipse.swt.motif" download-size="0" install-size="0" version="3.1.0" fragment="true" os="hpux" ws="motif"/>
-  <plugin id="org.eclipse.core.resources.hpux" download-size="0" install-size="0" version="3.0.0" fragment="true" os="hpux"/>
-
-  <!-- LINUX GTK-->  
-  <plugin id="org.eclipse.swt.gtk" download-size="0" install-size="0" version="3.1.0"  fragment="true" os="linux" ws="gtk" arch="x86" />
-  <plugin id="org.eclipse.swt.gtk" download-size="0" install-size="0" version="3.1.0"  fragment="true" os="linux" ws="gtk" arch="ppc" />
-  <plugin id="org.eclipse.core.resources.linux" download-size="0" install-size="0" version="3.0.0" fragment="true" os="linux"/>
-  <plugin id="org.eclipse.update.core.linux" download-size="0" install-size="0" version="3.0.0" fragment="true" os="linux" />
-
-  <!-- LINUX GTK AMD64-->
-  <plugin id="org.eclipse.swt.gtk64" download-size="0" install-size="0" version="3.1.0"  fragment="true" os="linux" ws="gtk" arch="amd64" />
-
-  <!-- LINUX Motif-->    
-  <plugin id="org.eclipse.swt.motif" download-size="0" install-size="0" version="3.1.0" fragment="true" os="linux" ws="motif"/>
-  <plugin id="org.eclipse.core.resources.linux" download-size="0" install-size="0" version="3.0.0" fragment="true" os="linux"/>
-  <plugin id="org.eclipse.update.core.linux" download-size="0" install-size="0" version="3.0.0" fragment="true" os="linux" />
-
-  <!-- MacOS X Carbon -->  
-  <plugin id="org.eclipse.swt.carbon" download-size="0" install-size="0" version="3.1.0"  fragment="true" os="macosx" ws="carbon"/> 
-  <plugin id="org.eclipse.core.resources.macosx" download-size="0" install-size="0" version="3.0.0" fragment="true" os="macosx" ws="carbon"/>
-  <plugin id="org.eclipse.ui.carbon" download-size="0" install-size="0" version="3.1.0" fragment="true" os="macosx" ws="carbon"/>
-  
-  <!-- QNX Photon -->
-  <plugin id="org.eclipse.swt.photon" download-size="0" install-size="0" version="3.1.0" fragment="true" os="qnx" ws="photon"/>
-  <plugin id="org.eclipse.core.resources.qnx" download-size="0" install-size="0" version="3.0.0" fragment="true" os="qnx" ws="photon"/>
-  
-  <!-- Solaris Motif -->
-  <plugin id="org.eclipse.swt.motif" download-size="0" install-size="0" version="3.1.0" fragment="true" os="solaris" ws="motif"/>
-  
-  <!-- Win32 -->
-  <plugin id="org.eclipse.swt.win32" download-size="0" install-size="0" version="3.1.0" fragment="true" ws="win32"/>
-  <plugin id="org.eclipse.core.resources.win32" download-size="0" install-size="0" version="3.0.0" fragment="true" os="win32"/>
-  <plugin id="org.eclipse.ui.win32" download-size="0" install-size="0" version="3.1.0" fragment="true" ws="win32"/>
-  <plugin id="org.eclipse.update.core.win32" download-size="0" install-size="0" version="3.0.0" fragment="true" os="win32"/>
-</feature>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/license.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/license.html
deleted file mode 100644
index e7d8500..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform-feature/license.html
+++ /dev/null
@@ -1,72 +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>15<sup>th</sup> June, 2004</p>
-
-<h3>Usage Of Content</h3>
-
-<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>
-   
-<h3>Applicable Licenses</h3>   
-   
-<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.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
-	<li>Eclipse Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>)</li>
-	<li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-	<li>IBM Public License 1.0 (available at <a href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>	
-	<li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-	<li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH 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>
-
-<h3>Cryptography</h3>
-
-<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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/.project b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/.project
deleted file mode 100644
index d7ca40c..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.platform.source-feature</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/cpl-v10.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/cpl-v10.html
deleted file mode 100644
index 36aa208..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/eclipse_update_120.jpg b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/eclipse_update_120.jpg
deleted file mode 100644
index 68e3e02..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/feature.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/feature.properties
deleted file mode 100644
index 6ab9956..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/feature.properties
+++ /dev/null
@@ -1,124 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse Platform Plug-in Developer Resources
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=Common OS-independent API documentation and source code zips for the Eclipse Platform.
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE.ORG SOFTWARE USER AGREEMENT\n\
-15th June, 2004\n\
-\n\
-Usage Of Content\n\
-\n\
-ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by Eclipse.org\n\
-is provided to you under the terms and conditions of the Common Public\n\
-License Version 1.0 ("CPL"). A copy of the CPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/cpl-v10.html.\n\
-For purposes of the CPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments\n\
-("Fragments"), and features ("Features"). A Feature is a bundle of one or\n\
-more Plug-ins and/or Fragments and associated material. Files named\n\
-"feature.xml" may contain a list of the names and version numbers of the\n\
-Plug-ins and/or Fragments associated with a Feature. Plug-ins and Fragments\n\
-are located in directories named "plugins" and Features are located in\n\
-directories named "features".\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Subdirectories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by Eclipse.org is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Eclipse Public License Version 1.0 (available at http://www.eclipse.org/legal/epl-v10.html)\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact Eclipse.org to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n
-########### end of license property ##########################################
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/feature.xml
deleted file mode 100644
index 3bdee40..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/feature.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature primary="false"  provider-name="%providerName"    label="%featureName"  image="eclipse_update_120.jpg" id="org.eclipse.platform.source"  version="3.1.0">
-	<description >
-		%description
-	</description>
-	<license url="%licenseURL">
-		%license
-	</license>
-	<url>
-		<update label="%updateSiteName" url="http://update.eclipse.org/updates/3.0"/>
-		<discovery label="%updateSiteName" url="http://update.eclipse.org/updates/3.0"/>
-	</url>
-	<plugin    fragment="false"  download-size="0" install-size="0" id="org.eclipse.platform.doc.isv" version="3.1.0"/>
-	<plugin    fragment="false"  download-size="0" install-size="0" id="org.eclipse.platform.source" version="3.1.0"/>
-	<plugin ws="gtk"  os="linux" fragment="true" arch="ia64" download-size="0" install-size="0" id="org.eclipse.platform.source.linux.gtk.ia64" version="3.1.0"/>
-	<plugin ws="carbon"  os="macosx" fragment="true" arch="ppc" download-size="0" install-size="0" id="org.eclipse.platform.source.macosx.carbon.ppc" version="3.1.0"/>
-	<plugin ws="photon"  os="qnx" fragment="true" arch="x86" download-size="0" install-size="0" id="org.eclipse.platform.source.qnx.photon.x86" version="3.1.0"/>
-	<plugin ws="gtk"  os="linux" fragment="true" arch="ppc" download-size="0" install-size="0" id="org.eclipse.platform.source.linux.gtk.ppc" version="3.1.0"/>
-	<plugin ws="motif"  os="hpux" fragment="true" arch="PA_RISC" download-size="0" install-size="0" id="org.eclipse.platform.source.hpux.motif.PA_RISC" version="3.1.0"/>
-	<plugin ws="motif"  os="aix" fragment="true" arch="ppc" download-size="0" install-size="0" id="org.eclipse.platform.source.aix.motif.ppc" version="3.1.0"/>
-	<plugin ws="gtk"  os="linux" fragment="true" arch="x86" download-size="0" install-size="0" id="org.eclipse.platform.source.linux.gtk.x86" version="3.1.0"/>
-	<plugin ws="win32"  os="win32" fragment="true" arch="x86" download-size="0" install-size="0" id="org.eclipse.platform.source.win32.win32.x86" version="3.1.0"/>
-	<plugin ws="motif"  os="solaris" fragment="true" arch="sparc" download-size="0" install-size="0" id="org.eclipse.platform.source.solaris.motif.sparc" version="3.1.0"/>
-	<plugin ws="gtk"  os="linux" fragment="true" arch="amd64" download-size="0" install-size="0" id="org.eclipse.platform.source.linux.gtk.amd64" version="3.1.0"/>
-	<plugin ws="motif"  os="linux" fragment="true" arch="x86" download-size="0" install-size="0" id="org.eclipse.platform.source.linux.motif.x86" version="3.1.0"/>
-</feature>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/license.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/license.html
deleted file mode 100644
index e7d8500..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.platform.source-feature/license.html
+++ /dev/null
@@ -1,72 +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>15<sup>th</sup> June, 2004</p>
-
-<h3>Usage Of Content</h3>
-
-<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>
-   
-<h3>Applicable Licenses</h3>   
-   
-<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.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
-	<li>Eclipse Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>)</li>
-	<li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-	<li>IBM Public License 1.0 (available at <a href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>	
-	<li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-	<li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH 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>
-
-<h3>Cryptography</h3>
-
-<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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/.project b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/.project
deleted file mode 100644
index 49f7d79..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.sdk-feature</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/cpl-v10.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/cpl-v10.html
deleted file mode 100644
index 36aa208..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/eclipse_update_120.jpg b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/eclipse_update_120.jpg
deleted file mode 100644
index 68e3e02..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/feature.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/feature.properties
deleted file mode 100644
index b46d29a..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/feature.properties
+++ /dev/null
@@ -1,124 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-# feature.properties
-# contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=Eclipse Project SDK
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=SDK for Eclipse.
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE.ORG SOFTWARE USER AGREEMENT\n\
-15th June, 2004\n\
-\n\
-Usage Of Content\n\
-\n\
-ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by Eclipse.org\n\
-is provided to you under the terms and conditions of the Common Public\n\
-License Version 1.0 ("CPL"). A copy of the CPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/cpl-v10.html.\n\
-For purposes of the CPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments\n\
-("Fragments"), and features ("Features"). A Feature is a bundle of one or\n\
-more Plug-ins and/or Fragments and associated material. Files named\n\
-"feature.xml" may contain a list of the names and version numbers of the\n\
-Plug-ins and/or Fragments associated with a Feature. Plug-ins and Fragments\n\
-are located in directories named "plugins" and Features are located in\n\
-directories named "features".\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Subdirectories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by Eclipse.org is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Eclipse Public License Version 1.0 (available at http://www.eclipse.org/legal/epl-v10.html)\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact Eclipse.org to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n
-########### end of license property ##########################################
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/feature.xml
deleted file mode 100644
index f29904c..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/feature.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="org.eclipse.sdk"
-      label="%featureName"
-      version="3.1.0"
-      image= "eclipse_update_120.jpg"
-      provider-name="%providerName">
-
-   <description>
-      %description
-   </description>
-   
-   <license url="%licenseURL">
-     %license
-   </license>
-
-   <url>
-      <update label="%updateSiteName" url="http://update.eclipse.org/updates/3.0"/>
-      <discovery label="%updateSiteName" url="http://update.eclipse.org/updates/3.0"/>
-   </url>
-
-  <includes id="org.eclipse.platform" version="3.1.0" /> 
-  <includes id="org.eclipse.platform.source" version="3.1.0" /> 
-  <includes id="org.eclipse.jdt" version="3.1.0" />
-  <includes id="org.eclipse.jdt.source" version="3.1.0" /> 
-  <includes id="org.eclipse.pde" version="3.1.0" /> 
-  <includes id="org.eclipse.pde.source" version="3.1.0" /> 
-  <plugin id="org.eclipse.sdk" version="3.1.0"/>
-  
-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/license.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/license.html
deleted file mode 100644
index e7d8500..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.sdk-feature/license.html
+++ /dev/null
@@ -1,72 +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>15<sup>th</sup> June, 2004</p>
-
-<h3>Usage Of Content</h3>
-
-<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>
-   
-<h3>Applicable Licenses</h3>   
-   
-<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.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
-	<li>Eclipse Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>)</li>
-	<li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-	<li>IBM Public License 1.0 (available at <a href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>	
-	<li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-	<li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH 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>
-
-<h3>Cryptography</h3>
-
-<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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/META-INF/MANIFEST.MF b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/META-INF/MANIFEST.MF
deleted file mode 100644
index 59499bc..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,2 +0,0 @@
-Manifest-Version: 1.0
-
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/cpl-v10.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/cpl-v10.html
deleted file mode 100644
index 36aa208..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/eclipse_update_120.jpg b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/eclipse_update_120.jpg
deleted file mode 100644
index 68e3e02..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/feature.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/feature.properties
deleted file mode 100644
index d328679..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/feature.properties
+++ /dev/null
@@ -1,141 +0,0 @@
-# /**
-#  * <copyright>
-#  *
-#  * Copyright (c) 2002-2004 IBM Corporation 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 - Initial API and implementation
-#  *
-#  * </copyright>
-#  *
-#  * $Id: feature.properties,v 1.2 2004/05/26 15:16:26 marcelop Exp $
-#  */
-
-# ==============================================================================
-# Do not change the properties between this line and the last line containing:
-# %%% END OF TRANSLATED PROPERTIES %%%
-# Instead, either redefine an existing property, or create a new property,
-# append it to the end of the file, and change the code to use the new name.
-# ==============================================================================
-
-# This file contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=XML Schema Infoset Model (XSD) Documentation
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=Eclipse Modeling Framework. (documentation)
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE.ORG SOFTWARE USER AGREEMENT\n\
-14th August, 2003\n\
-\n\
-Usage Of Content\n\
-\n\
-ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by Eclipse.org\n\
-is provided to you under the terms and conditions of the Common Public\n\
-License Version 1.0 ("CPL"). A copy of the CPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/cpl-v10.html.\n\
-For purposes of the CPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments\n\
-("Fragments"), and features ("Features"). A Feature is a bundle of one or\n\
-more Plug-ins and/or Fragments and associated material. Files named\n\
-"feature.xml" may contain a list of the names and version numbers of the\n\
-Plug-ins and/or Fragments associated with a Feature. Plug-ins and Fragments\n\
-are located in directories named "plugins" and Features are located in\n\
-directories named "features".\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Subdirectories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by Eclipse.org is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact Eclipse.org to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n
-########### end of license property ##########################################
-
-# ==============================================================================
-# %%% END OF TRANSLATED PROPERTIES %%%
-# The above properties have been shipped for translation.
-# ==============================================================================
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/feature.xml
deleted file mode 100644
index fe4f380..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/feature.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-/**
- * <copyright>
- *
- * Copyright (c) 2002-2004 IBM Corporation 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 - Initial API and implementation
- *
- * </copyright>
- *
- * $Id: feature.xml,v 1.1 2004/03/06 18:00:09 marcelop Exp $
- */
--->
-
-<feature
-      id="org.eclipse.xsd.doc"
-      label="%featureName"
-      version="2.0.0"
-      image= "eclipse_update_120.jpg"
-      provider-name="%providerName">
-
-   <description>
-      %description
-   </description>
-
-   <license url="%licenseURL">
-     %license
-   </license>
-
-   <url>
-      <update url="http://update.eclipse.org/updates" label="%updateSiteName"/>
-   </url>
-
-   <plugin
-         id="org.eclipse.xsd.doc"
-         download-size="0"
-         install-size="0"
-         version="2.0.0">
-   </plugin>
-   		
-</feature>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/license.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/license.html
deleted file mode 100644
index af8c380..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.doc_2.0.0/license.html
+++ /dev/null
@@ -1,71 +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>14th August, 2003</p>
-
-<h3>Usage Of Content</h3>
-
-<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>
-   
-<h3>Applicable Licenses</h3>   
-   
-<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.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
-	<li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-	<li>IBM Public License 1.0 (available at <a href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>	
-	<li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-	<li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH 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>
-
-<h3>Cryptography</h3>
-
-<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>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/META-INF/MANIFEST.MF b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/META-INF/MANIFEST.MF
deleted file mode 100644
index 59499bc..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,2 +0,0 @@
-Manifest-Version: 1.0
-
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/cpl-v10.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/cpl-v10.html
deleted file mode 100644
index 36aa208..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/eclipse_update_120.jpg b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/eclipse_update_120.jpg
deleted file mode 100644
index 68e3e02..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/feature.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/feature.properties
deleted file mode 100644
index 0c1959e..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/feature.properties
+++ /dev/null
@@ -1,141 +0,0 @@
-# /**
-#  * <copyright>
-#  *
-#  * Copyright (c) 2002-2004 IBM Corporation 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 - Initial API and implementation
-#  *
-#  * </copyright>
-#  *
-#  * $Id: feature.properties,v 1.2 2004/05/26 15:16:27 marcelop Exp $
-#  */
-
-# ==============================================================================
-# Do not change the properties between this line and the last line containing:
-# %%% END OF TRANSLATED PROPERTIES %%%
-# Instead, either redefine an existing property, or create a new property,
-# append it to the end of the file, and change the code to use the new name.
-# ==============================================================================
-
-# This file contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=XML Schema Infoset Model (XSD) Source
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=Eclipse Modeling Framework. (source code)
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE.ORG SOFTWARE USER AGREEMENT\n\
-14th August, 2003\n\
-\n\
-Usage Of Content\n\
-\n\
-ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by Eclipse.org\n\
-is provided to you under the terms and conditions of the Common Public\n\
-License Version 1.0 ("CPL"). A copy of the CPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/cpl-v10.html.\n\
-For purposes of the CPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments\n\
-("Fragments"), and features ("Features"). A Feature is a bundle of one or\n\
-more Plug-ins and/or Fragments and associated material. Files named\n\
-"feature.xml" may contain a list of the names and version numbers of the\n\
-Plug-ins and/or Fragments associated with a Feature. Plug-ins and Fragments\n\
-are located in directories named "plugins" and Features are located in\n\
-directories named "features".\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Subdirectories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by Eclipse.org is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact Eclipse.org to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n
-########### end of license property ##########################################
-
-# ==============================================================================
-# %%% END OF TRANSLATED PROPERTIES %%%
-# The above properties have been shipped for translation.
-# ==============================================================================
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/feature.xml
deleted file mode 100644
index d5f2b77..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/feature.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-/**
- * <copyright>
- *
- * Copyright (c) 2002-2004 IBM Corporation 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 - Initial API and implementation
- *
- * </copyright>
- *
- * $Id: feature.xml,v 1.1 2004/03/06 18:00:11 marcelop Exp $
- */
--->
-
-<feature
-      id="org.eclipse.xsd.source"
-      label="%featureName"
-      version="2.0.0"
-      image= "eclipse_update_120.jpg"
-      provider-name="%providerName">
-
-   <description>
-      %description
-   </description>
-
-   <license url="%licenseURL">
-     %license
-   </license>
-
-   <url>
-      <update url="http://update.eclipse.org/updates" label="%updateSiteName"/>
-   </url>
-
-   <plugin
-         id="org.eclipse.xsd.source"
-         download-size="0"
-         install-size="0"
-         version="2.0.0">
-   </plugin>
-   
-</feature>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/license.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/license.html
deleted file mode 100644
index af8c380..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd.source_2.0.0/license.html
+++ /dev/null
@@ -1,71 +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>14th August, 2003</p>
-
-<h3>Usage Of Content</h3>
-
-<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>
-   
-<h3>Applicable Licenses</h3>   
-   
-<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.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
-	<li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-	<li>IBM Public License 1.0 (available at <a href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>	
-	<li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-	<li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH 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>
-
-<h3>Cryptography</h3>
-
-<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>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/META-INF/MANIFEST.MF b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/META-INF/MANIFEST.MF
deleted file mode 100644
index 59499bc..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,2 +0,0 @@
-Manifest-Version: 1.0
-
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/cpl-v10.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/cpl-v10.html
deleted file mode 100644
index 36aa208..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/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/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/eclipse_update_120.jpg b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/eclipse_update_120.jpg
deleted file mode 100644
index 68e3e02..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/feature.properties b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/feature.properties
deleted file mode 100644
index 58b3ec7..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/feature.properties
+++ /dev/null
@@ -1,144 +0,0 @@
-# /**
-#  * <copyright>
-#  *
-#  * Copyright (c) 2002-2004 IBM Corporation 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 - Initial API and implementation
-#  *
-#  * </copyright>
-#  *
-#  * $Id: feature.properties,v 1.3 2004/04/28 16:27:45 nickb Exp $ 
-#  */
-
-# ==============================================================================
-# Do not change the properties between this line and the last line containing:
-# %%% END OF TRANSLATED PROPERTIES %%%
-# Instead, either redefine an existing property, or create a new property,
-# append it to the end of the file, and change the code to use the new name.
-# ==============================================================================
-
-# This file contains externalized strings for feature.xml
-# "%foo" in feature.xml corresponds to the key "foo" in this file
-# java.io.Properties file (ISO 8859-1 with "\" escapes)
-# This file should be translated.
-
-# "featureName" property - name of the feature
-featureName=XSD Schema Infoset Model
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "updateSiteName" property - label for the update site
-updateSiteName=Eclipse.org update site
-
-# "description" property - description of the feature
-description=XML Schema Infoset Model
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-ECLIPSE.ORG SOFTWARE USER AGREEMENT\n\
-14th August, 2003\n\
-\n\
-Usage Of Content\n\
-\n\
-ECLIPSE.ORG MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by Eclipse.org\n\
-is provided to you under the terms and conditions of the Common Public\n\
-License Version 1.0 ("CPL"). A copy of the CPL is provided with this\n\
-Content and is also available at http://www.eclipse.org/legal/cpl-v10.html.\n\
-For purposes of the CPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse.org CVS\n\
-repository ("Repository") in CVS modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-Content may be apportioned into plug-ins ("Plug-ins"), plug-in fragments\n\
-("Fragments"), and features ("Features"). A Feature is a bundle of one or\n\
-more Plug-ins and/or Fragments and associated material. Files named\n\
-"feature.xml" may contain a list of the names and version numbers of the\n\
-Plug-ins and/or Fragments associated with a Feature. Plug-ins and Fragments\n\
-are located in directories named "plugins" and Features are located in\n\
-directories named "features".\n\
-\n\
-Features may also include other Features ("Included Features"). Files named\n\
-"feature.xml" may contain a list of the names and version numbers of\n\
-Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-   - The top-level (root) directory\n\
-   - Plug-in and Fragment directories\n\
-   - Subdirectories of the directory named "src" of certain Plug-ins\n\
-   - Feature directories\n\
-\n\
-Note: if a Feature made available by Eclipse.org is installed using the\n\
-Eclipse Update Manager, you must agree to a license ("Feature Update\n\
-License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties". Such Abouts,\n\
-Feature Licenses and Feature Update Licenses contain the terms and\n\
-conditions (or references to such terms and conditions) that govern your\n\
-use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-    - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-    - IBM Public License 1.0 (available at http://oss.software.ibm.com/developerworks/opensource/license10.html)\n\
-    - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-    - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License or Feature Update License\n\
-is provided, please contact Eclipse.org to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use,\n\
-and re-export of encryption software, to see if this is permitted.\n
-########### end of license property ##########################################
-
-# ==============================================================================
-# %%% END OF TRANSLATED PROPERTIES %%%
-# The above properties have been shipped for translation.
-# ==============================================================================
-
-# "secondaryUpdateSiteName" property - label for the secondary update site (on download.eclipse.org)
-secondaryUpdateSiteName=EMF/SDO/XSD Secondary Update Site
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/feature.xml b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/feature.xml
deleted file mode 100644
index 3e51342..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/feature.xml
+++ /dev/null
@@ -1,71 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="org.eclipse.xsd"
-      label="%featureName"
-      version="2.0.0"
-      provider-name="%providerName"
-      image="eclipse_update_120.jpg">
-
-   <description>
-      %description
-   </description>
-
-   <copyright url="http://www.eclipse.org/legal/cpl-v10.html">
-      Copyright (c) 2002-2004 IBM Corporation 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
-   </copyright>
-
-   <license url="%licenseURL">
-      %license
-   </license>
-
-   <url>
-      <update label="%updateSiteName" url="http://update.eclipse.org/updates/"/>
-      <discovery label="%secondaryUpdateSiteName" url="http://download.eclipse.org/tools/emf/updates/"/>
-   </url>
-
-   <requires>
-      <import plugin="org.eclipse.core.resources" version="3.0.0" match="compatible"/>
-      <import plugin="org.eclipse.emf.ecore" version="2.0.0" match="compatible"/>
-   </requires>
-
-   <plugin
-         id="org.eclipse.xsd"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.xsd.edit"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.xsd.editor"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.xsd.test"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.mapping.xsd2ecore"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-   <plugin
-         id="org.eclipse.emf.mapping.xsd2ecore.editor"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-</feature>
diff --git a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/license.html b/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/license.html
deleted file mode 100644
index af8c380..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/eclipse/features/org.eclipse.xsd_2.0.0/license.html
+++ /dev/null
@@ -1,71 +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>14th August, 2003</p>
-
-<h3>Usage Of Content</h3>
-
-<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>
-   
-<h3>Applicable Licenses</h3>   
-   
-<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.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES AND FEATURE UPDATE LICENSES MAY REFER TO THE CPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
-	<li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-	<li>IBM Public License 1.0 (available at <a href="http://oss.software.ibm.com/developerworks/opensource/license10.html">http://oss.software.ibm.com/developerworks/opensource/license10.html</a>)</li>	
-	<li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-	<li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH 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>
-
-<h3>Cryptography</h3>
-
-<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>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/perf/platform.xml b/update/org.eclipse.update.tests.core/data/perf/platform.xml
deleted file mode 100644
index 983e5c4..0000000
--- a/update/org.eclipse.update.tests.core/data/perf/platform.xml
+++ /dev/null
@@ -1,179 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--Created on Mon Aug 23 15:05:43 EDT 2004-->
-<config date="1093287943134" transient="false" version="3.0">
-<site enabled="true" policy="USER-EXCLUDE" updateable="true" url="platform:/base/">
-<feature id="org.eclipse.barrup.rad.feature" url="features/org.eclipse.barrup.rad.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barupdate.dev.product" url="features/org.eclipse.barupdate.dev.product_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barupdate.dev" url="features/org.eclipse.barupdate.dev_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.uml2" url="features/org.eclipse.uml2_1.0.1/" version="1.0.1"/>
-<feature id="org.eclipse.barxtools.comparemerge.ejbddfeature" url="features/org.eclipse.barxtools.comparemerge.ejbdd-feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.serverattach.v5" url="features/org.eclipse.foo.serverattach.v5_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.bardebug.xsl" url="features/org.eclipse.bardebug.xsl_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barxtools.platform.feature" url="features/org.eclipse.barxtools.platform.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barsupport.rad.doc" url="features/org.eclipse.barsupport.rad.doc_1.0.0/" version="1.0.0"/>
-<feature id="org.eclipse.barr2a.rdj.feature" url="features/org.eclipse.barr2a.rdj.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barupdate.test.ct.feature" url="features/org.eclipse.barupdate.test.ct.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barxtools.eDataviz.feature" url="features/org.eclipse.barxtools.eDataviz.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barrad.welcome.feature" url="features/org.eclipse.barrad.welcome.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.bardebug.wsa.launch.load" url="features/org.eclipse.bardebug.wsa.launch.load_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barrup.feature" url="features/org.eclipse.barrup.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barxtools.visualization.feature" url="features/org.eclipse.barxtools.visualization.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barrad.nav.doc.feature" url="features/org.eclipse.barrad.nav.doc.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.y.test" primary="true" url="features/org.eclipse.y.test_3.0.1/" version="3.0.1"/>
-<feature id="org.eclipse.bardebug.activescript.win32" url="features/org.eclipse.bardebug.activescript.win32_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barxtools.platform.win32.feature" url="features/org.eclipse.barxtools.platform.win32.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.portal.tools.feature" url="features/org.eclipse.foo.portal.tools.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.serverattach" url="features/org.eclipse.foo.serverattach_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.y.test.examples" primary="true" url="features/org.eclipse.y.test.examples_3.0.1/" version="3.0.1"/>
-<feature id="org.eclipse.barz.common.ui" url="features/org.eclipse.barz.common.ui_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.ejb" url="features/org.eclipse.barz.ejb_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.y.profiling" primary="true" url="features/org.eclipse.y.profiling_3.0.1/" version="3.0.1"/>
-<feature id="org.eclipse.foo.ejbdeploy.feature.nl1" url="features/org.eclipse.foo.ejbdeploy.feature.nl1_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.emf.integration" url="features/org.eclipse.barz.emf.integration_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.bardebug.javascript" url="features/org.eclipse.bardebug.javascript_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.bardebug.ast.feature" url="features/org.eclipse.bardebug.ast.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.wsvt-feature" url="features/org.eclipse.wsvt-feature_1.0.0/" version="1.0.0"/>
-<feature id="org.eclipse.foo.sib.mediation.develop.feature" url="features/org.eclipse.foo.sib.mediation.develop.feature_1.0.0/" version="1.0.0"/>
-<feature id="org.eclipse.foo.webservice.was.creation.ejb.feature.nl1" url="features/org.eclipse.foo.webservice.was.creation.ejb.feature.nl1_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.webedit.editor.feature" url="features/org.eclipse.foo.webedit.editor.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.data" url="features/org.eclipse.barz.data_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.sib.mediation.deploy.feature" url="features/org.eclipse.foo.sib.mediation.deploy.feature_1.0.0/" version="1.0.0"/>
-<feature id="org.eclipse.foo.e" url="features/org.eclipse.foo.e_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.webservice.was.creation.ejb.feature" url="features/org.eclipse.foo.webservice.was.creation.ejb.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.siteedit.feature" url="features/org.eclipse.foo.siteedit.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.profiling.server.compatible" url="features/org.eclipse.foo.profiling.server.compatible_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.ws" url="features/org.eclipse.barz.ws_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.ejb.samples-feature" url="features/org.eclipse.foo.ejb.samples-feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.activities.feature" url="features/org.eclipse.barz.activities.feature_1.0.0/" version="1.0.0"/>
-<feature id="org.eclipse.foo.examples" url="features/org.eclipse.foo.examples_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barx.sdk" url="features/org.eclipse.barx.sdk_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.bardebug.pdt.win32" url="features/org.eclipse.bardebug.pdt.win32_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.bardebug.wsa" url="features/org.eclipse.bardebug.wsa_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.jve.express" url="features/org.eclipse.foo.jve.express_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.bardata.linux" url="features/org.eclipse.bardata.linux_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barsse.xmlmarkup" url="features/org.eclipse.barsse.xmlmarkup_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.validation" url="features/org.eclipse.barz.validation_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.y.gla" primary="true" url="features/org.eclipse.y.gla_3.0.1/" version="3.0.1"/>
-<feature id="org.eclipse.barz.ws.model" url="features/org.eclipse.barz.ws.model_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barx.ast" url="features/org.eclipse.barx.ast_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barws.ast.st.ext.nl1" url="features/org.eclipse.barws.ast.st.ext.nl1_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.common.utilities" url="features/org.eclipse.barz.common.utilities_1.0.0/" version="1.0.0"/>
-<feature id="org.eclipse.barz.common" url="features/org.eclipse.barz.common_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.xml.model" url="features/org.eclipse.barz.xml.model_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.bardebug.pdt" url="features/org.eclipse.bardebug.pdt_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.navigator" url="features/org.eclipse.barz.navigator_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.webtools.feature" url="features/org.eclipse.foo.webtools.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.emf.integration.core" url="features/org.eclipse.barz.emf.integration.core_1.0.0/" version="1.0.0"/>
-<feature id="org.eclipse.foo.struts.feature" url="features/org.eclipse.foo.struts.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barsse.base" url="features/org.eclipse.barsse.base_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.bardebug.help.doc" url="features/org.eclipse.bardebug.help.doc_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.y.models" url="features/org.eclipse.y.models_3.0.1/" version="3.0.1"/>
-<feature id="org.eclipse.y.logging" url="features/org.eclipse.y.logging_3.0.1/" version="3.0.1"/>
-<feature id="org.eclipse.bardebug.javascript.nl1.feature" url="features/org.eclipse.bardebug.javascript.nl1.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barws.ast.st.batch" url="features/org.eclipse.barws.ast.st.batch_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barsse.snippets" url="features/org.eclipse.barsse.snippets_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barws.rapiddeploy" plugin-identifier="org.eclipse.barws.rapiddeploy.core" url="features/org.eclipse.barws.rapiddeploy_1.0.0/" version="1.0.0"/>
-<feature id="org.eclipse.bardata" url="features/org.eclipse.bardata_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.security" url="features/org.eclipse.foo.security_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.probekit" url="features/org.eclipse.foo.probekit_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.jsf.feature" url="features/org.eclipse.foo.jsf.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.analysis" url="features/org.eclipse.foo.analysis_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.ac-tech" url="features/org.eclipse.foo.ac-tech_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.webservice.was.creation.feature" url="features/org.eclipse.foo.webservice.was.creation.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.ejb" url="features/org.eclipse.foo.ejb_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.ejbdeploy.feature" url="features/org.eclipse.foo.ejbdeploy.feature_5.1.1/" version="5.1.1"/>
-<feature id="org.eclipse.barz.e" url="features/org.eclipse.barz.e_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.ftp" url="features/org.eclipse.foo.ftp_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.y.examples" url="features/org.eclipse.y.examples_3.0.1/" version="3.0.1"/>
-<feature id="org.eclipse.foo.jve.core" url="features/org.eclipse.foo.jve.core_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.y.core" url="features/org.eclipse.y.core_3.0.1/" version="3.0.1"/>
-<feature id="org.eclipse.barz.ws.axis" url="features/org.eclipse.barz.ws.axis_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.jve.e" url="features/org.eclipse.foo.jve.e_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.resources.common.feature" url="features/org.eclipse.foo.resources.common.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barws" url="features/org.eclipse.barws_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.y" url="features/org.eclipse.y_3.0.1/" version="3.0.1"/>
-<feature id="org.eclipse.bardebug.ast.nl1.feature" url="features/org.eclipse.bardebug.ast.nl1.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz" url="features/org.eclipse.barz_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barlpex" url="features/org.eclipse.barlpex_3.0.0/" version="3.0.0"/>
-<feature id="org.eclipse.barxml" url="features/org.eclipse.barxml_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.ws.consumption" url="features/org.eclipse.barz.ws.consumption_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.egl.feature" url="features/org.eclipse.foo.egl.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.server.tomcat" url="features/org.eclipse.barz.server.tomcat_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barws.rapiddeploy.cmdframework" url="features/org.eclipse.barws.rapiddeploy.cmdframework_1.0.0/" version="1.0.0"/>
-<feature id="org.eclipse.foo.ejb.sbf.feature" url="features/org.eclipse.foo.ejb.sbf.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.qev" url="features/org.eclipse.foo.qev_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.ws.ext.feature" url="features/org.eclipse.foo.ws.ext.feature_5.9.0/" version="5.9.0"/>
-<feature id="org.eclipse.barz.xml" url="features/org.eclipse.barz.xml_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barupdate.web.developer" url="features/org.eclipse.barupdate.web.developer_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barws.ast.st.base.nl1" url="features/org.eclipse.barws.ast.st.base.nl1_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.jdt.integration" url="features/org.eclipse.barz.jdt.integration_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.y.source" url="features/org.eclipse.y.source_3.0.1/" version="3.0.1"/>
-<feature id="org.eclipse.foo.gla" url="features/org.eclipse.foo.gla_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.ws.ejb.nl1.feature" url="features/org.eclipse.foo.ws.ejb.nl1.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barws.ast.st.base" url="features/org.eclipse.barws.ast.st.base_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barsupport.rwd.doc" url="features/org.eclipse.barsupport.rwd.doc_1.0.0/" version="1.0.0"/>
-<feature id="org.eclipse.barupdate.pd.prof" url="features/org.eclipse.barupdate.pd.prof_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.webservice.was.creation.feature.nl1" url="features/org.eclipse.foo.webservice.was.creation.feature.nl1_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.wsvtvalidatorfeature" url="features/org.eclipse.wsvtvalidatorfeature_1.0.0/" version="1.0.0"/>
-<feature id="org.eclipse.barws.ast.st.batch.nl1" url="features/org.eclipse.barws.ast.st.batch.nl1_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barws.ast.doc.feature" url="features/org.eclipse.barws.ast.doc.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.ws.ejb.feature" url="features/org.eclipse.foo.ws.ejb.feature_5.9.0/" version="5.9.0"/>
-<feature id="org.eclipse.barws.rapiddeploy.nl1" url="features/org.eclipse.barws.rapiddeploy.nl1_1.0.0/" version="1.0.0"/>
-<feature id="org.eclipse.barz.jca" url="features/org.eclipse.barz.jca_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.xml.validate" url="features/org.eclipse.barz.xml.validate_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.extension" url="features/org.eclipse.barz.extension_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.env.ui" url="features/org.eclipse.barz.env.ui_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.env" url="features/org.eclipse.barz.env_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barupdate.jscrib.framework" url="features/org.eclipse.barupdate.jscrib.framework_1.2.0/" version="1.2.0"/>
-<feature id="org.eclipse.bardebug.pdt.nl1.feature" url="features/org.eclipse.bardebug.pdt.nl1.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barrwd.doc.feature" url="features/org.eclipse.barrwd.doc.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barupdate.orphans" url="features/org.eclipse.barupdate.orphans_1.0.0/" version="1.0.0"/>
-<feature id="org.eclipse.foo.profiling" url="features/org.eclipse.foo.profiling_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.y.probekit" url="features/org.eclipse.y.probekit_3.0.1/" version="3.0.1"/>
-<feature id="org.eclipse.barsse.webmarkup" url="features/org.eclipse.barsse.webmarkup_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.bardata.win32" url="features/org.eclipse.bardata.win32_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.server" url="features/org.eclipse.barz.server_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.jem" url="features/org.eclipse.jem_1.0.0/" version="1.0.0"/>
-<feature id="org.eclipse.foo.project.interchange" url="features/org.eclipse.foo.project.interchange_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.ve" url="features/org.eclipse.ve_1.0.0/" version="1.0.0"/>
-<feature id="org.eclipse.bardebug.wsa.nl1.feature" url="features/org.eclipse.bardebug.wsa.nl1.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.webservice.was.deploy.feature.nl1" url="features/org.eclipse.foo.webservice.was.deploy.feature.nl1_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.ws.ext.nl1.feature" url="features/org.eclipse.foo.ws.ext.nl1.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.bardebug.helpas.doc" url="features/org.eclipse.bardebug.helpas.doc_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.emf.ui.integration" url="features/org.eclipse.foo.emf.ui.integration_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.webservice.was.deploy.feature" url="features/org.eclipse.foo.webservice.was.deploy.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barz.web" url="features/org.eclipse.barz.web_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.foo.profiling.server" url="features/org.eclipse.foo.profiling.server_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barws.ast.st.ext" url="features/org.eclipse.barws.ast.st.ext_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barrup.updatezone.feature" url="features/org.eclipse.barrup.updatezone.feature_1.0.0/" version="1.0.0"/>
-<feature id="org.eclipse.barsamplegallery-feature" url="features/org.eclipse.barsamplegallery-feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.jdt.source" url="features/org.eclipse.jdt.source_3.0.1/" version="3.0.1"/>
-<feature application="org.eclipse.ui.ide.workbench" id="org.eclipse.barupdate.sdp.feature" primary="true" url="features/org.eclipse.barupdate.sdp.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.pde.source" url="features/org.eclipse.pde.source_3.0.1/" version="3.0.1"/>
-<feature id="org.eclipse.foo.lum.utils.feature" url="features/org.eclipse.foo.lum.utils.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.baresupport.client.nl1" url="features/org.eclipse.baresupport.client/" version="0.9.14"/>
-<feature id="org.eclipse.y.logging" url="features/org.eclipse.y.logging_3.0.1/" version="3.0.1"/>
-<feature id="org.eclipse.emf.ecore.sdo.doc" url="features/org.eclipse.emf.ecore.sdo.doc_2.0.0/" version="2.0.0"/>
-<feature id="org.eclipse.foo.logging" url="features/org.eclipse.foo.logging_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barupdate.welcome.feature.nl1" url="features/org.eclipse.barupdate.welcome.feature.nl1/" version="6.0.0"/>
-<feature application="org.eclipse.ui.ide.workbench" id="org.eclipse.platform" primary="true" url="features/org.eclipse.platform_3.0.1/" version="3.0.1"/>
-<feature id="org.eclipse.barcommon.doc.feature" url="features/org.eclipse.barcommon.doc.feature/" version="6.0.0"/>
-<feature id="org.eclipse.jdt" url="features/org.eclipse.jdt_3.0.1/" version="3.0.1"/>
-<feature id="org.eclipse.barsupport.core.doc" url="features/org.eclipse.barsupport.core.doc/" version="1.0.0"/>
-<feature id="org.eclipse.xyz.clearcase" url="features/org.eclipse.xyz.clearcase_6.0.11/" version="6.0.11"/>
-<feature id="org.eclipse.bartutorialgallery-feature" url="features/org.eclipse.bartutorialgallery-feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barupdate.welcome.feature" url="features/org.eclipse.barupdate.welcome.feature/" version="6.0.0"/>
-<feature id="org.eclipse.emf" url="features/org.eclipse.emf_2.0.1/" version="2.0.1"/>
-<feature id="org.eclipse.platform.source" url="features/org.eclipse.platform.source_3.0.1/" version="3.0.1"/>
-<feature id="org.eclipse.barupdate.common.activities.feature" url="features/org.eclipse.barupdate.common.activities.feature_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barupdate.cdi.itlm" url="features/org.eclipse.barupdate.cdi.itlm_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.pde" url="features/org.eclipse.pde_3.0.1/" version="3.0.1"/>
-<feature id="org.eclipse.emf.doc" url="features/org.eclipse.emf.doc_2.0.1/" version="2.0.1"/>
-<feature id="org.eclipse.emf.ecore.sdo" url="features/org.eclipse.emf.ecore.sdo_2.0.1/" version="2.0.1"/>
-<feature id="org.eclipse.barsupport.core.doc.nl1" url="features/org.eclipse.barsupport.core.doc.nl1/" version="1.0.0"/>
-<feature id="org.eclipse.barxtools.comparemerge" url="features/org.eclipse.barxtools.comparemerge_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.barxtools.common.ui.properties" url="features/org.eclipse.barxtools.common.ui.properties_6.0.0/" version="6.0.0"/>
-<feature id="org.eclipse.xsd" url="features/org.eclipse.xsd_2.0.1/" version="2.0.1"/>
-<feature id="org.eclipse.gef" url="features/org.eclipse.gef_3.0.0/" version="3.0.0"/>
-</site>
-</config>
diff --git a/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.feature1.plugin1_1.1.1.jar b/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.feature1.plugin1_1.1.1.jar
deleted file mode 100644
index 0c995d5..0000000
--- a/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.feature1.plugin1_1.1.1.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.feature2.plugin2_2.2.2.jar b/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.feature2.plugin2_2.2.2.jar
deleted file mode 100644
index 0c995d5..0000000
--- a/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.feature2.plugin2_2.2.2.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.tests.dummy_7.9.8.jar b/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.tests.dummy_7.9.8.jar
deleted file mode 100644
index 78f193d..0000000
--- a/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.tests.dummy_7.9.8.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar b/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
deleted file mode 100644
index 2275ade..0000000
--- a/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar b/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
deleted file mode 100644
index ea958c7..0000000
--- a/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml b/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml
deleted file mode 100644
index 7f05d82..0000000
--- a/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<plugin name="JUnit Test Framework" id="org.eclipse.update.core.tests.feature1.plugin1" version="3.5.6" vendor-name="junit.org">

-  <runtime>

-    <library name="junit.jar">

-      <export name="*"/>

-    </library>

-  </runtime>

-</plugin>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.plugin1_1.1.1/src.jar b/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.plugin1_1.1.1/src.jar
deleted file mode 100644
index 2d4d609..0000000
--- a/update/org.eclipse.update.tests.core/data/plugins/org.eclipse.update.plugin1_1.1.1/src.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/reconciliationSites/site1/install/features/feature3/feature.xml b/update/org.eclipse.update.tests.core/data/reconciliationSites/site1/install/features/feature3/feature.xml
deleted file mode 100644
index 3141af8..0000000
--- a/update/org.eclipse.update.tests.core/data/reconciliationSites/site1/install/features/feature3/feature.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature id="org.eclipse.update.core.tests.feature3" image="feature1.gif" label="Third Feature" provider-name="Smart Company" version="1.0.0" >
-  <description>Description</description>
-  <copyright>copyright</copyright>
-  <license>license</license>
-  <url>
-    <update label="URL to update the feature" url="http://www.eclipse.org/"/>
-    <discovery label="Discovery 1" url="http://www.eclipse.org"/>
-    <discovery label="Discovery 2" url="http://www.eclipse.org"/>
-  </url>
-  <plugin download-size="1500" id="org.eclipse.update.plugin1" install-size="1000" fragment="false" nl="us" os="OS_WIN32" version="1.1.1" ws="WS_WIN32"/>
-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/reconciliationSites/site1/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml b/update/org.eclipse.update.tests.core/data/reconciliationSites/site1/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml
deleted file mode 100644
index e01846c..0000000
--- a/update/org.eclipse.update.tests.core/data/reconciliationSites/site1/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<plugin name="JUnit Test Framework" id="org.eclipse.update.core.tests.feature1.plugin1" version="3.5.6" vendor-name="junit.org">
-  <runtime>
-    <library name="junit.jar">
-      <export name="*"/>
-    </library>
-  </runtime>
-</plugin>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/reconciliationSites/site1/plugins/org.eclipse.update.plugin1_1.1.1/src.jar b/update/org.eclipse.update.tests.core/data/reconciliationSites/site1/plugins/org.eclipse.update.plugin1_1.1.1/src.jar
deleted file mode 100644
index 2d4d609..0000000
--- a/update/org.eclipse.update.tests.core/data/reconciliationSites/site1/plugins/org.eclipse.update.plugin1_1.1.1/src.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/reconciliationSites/site2/install/features/feature3/feature.xml b/update/org.eclipse.update.tests.core/data/reconciliationSites/site2/install/features/feature3/feature.xml
deleted file mode 100644
index 68a7de8..0000000
--- a/update/org.eclipse.update.tests.core/data/reconciliationSites/site2/install/features/feature3/feature.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature id="org.eclipse.update.core.tests.feature3" image="feature1.gif" label="Third Feature" provider-name="Smart Company" version="1.0.0" >
-  <description>Description</description>
-  <copyright>copyright</copyright>
-  <license>license</license>
-  <url>
-    <update label="URL to update the feature" url="http://www.eclipse.org/"/>
-    <discovery label="Discovery 1" url="http://www.eclipse.org"/>
-    <discovery label="Discovery 2" url="http://www.eclipse.org"/>
-  </url>
-  <plugin download-size="1500" id="org.eclipse.update.core" install-size="1000" fragment="false" nl="us" os="OS_WIN32" version="2.1.0" ws="WS_WIN32"/>
-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/reconciliationSites/site2/plugins/org.eclipse.update.core_2.0.0/plugin.xml b/update/org.eclipse.update.tests.core/data/reconciliationSites/site2/plugins/org.eclipse.update.core_2.0.0/plugin.xml
deleted file mode 100644
index e01846c..0000000
--- a/update/org.eclipse.update.tests.core/data/reconciliationSites/site2/plugins/org.eclipse.update.core_2.0.0/plugin.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<plugin name="JUnit Test Framework" id="org.eclipse.update.core.tests.feature1.plugin1" version="3.5.6" vendor-name="junit.org">
-  <runtime>
-    <library name="junit.jar">
-      <export name="*"/>
-    </library>
-  </runtime>
-</plugin>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/reconciliationSites/site2/plugins/org.eclipse.update.core_2.0.0/src.jar b/update/org.eclipse.update.tests.core/data/reconciliationSites/site2/plugins/org.eclipse.update.core_2.0.0/src.jar
deleted file mode 100644
index 2d4d609..0000000
--- a/update/org.eclipse.update.tests.core/data/reconciliationSites/site2/plugins/org.eclipse.update.core_2.0.0/src.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/resources.properties b/update/org.eclipse.update.tests.core/data/resources.properties
deleted file mode 100644
index 1a3ab90..0000000
--- a/update/org.eclipse.update.tests.core/data/resources.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-###############################################################################

-# Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

-###############################################################################

-HTTP_PATH_1=/org.eclipse.update.tests.core.updatetests/UpdateManager2/

-HTTP_PATH_2=/org.eclipse.update.tests.core.updatetests/UpdateManager/

-HTTP_PATH_3=/org.eclipse.update.tests.core.updatetests/Site with space/
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/site.xml b/update/org.eclipse.update.tests.core/data/site.xml
deleted file mode 100644
index 3fc60c7..0000000
--- a/update/org.eclipse.update.tests.core/data/site.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<site type="org.eclipse.update.core.file">

-<description url="info/siteInfo.html"/>

-  <feature url="testAPI/features/feature3">

-    <category name="eclipse/UML"/>

-  </feature>

-  <feature url="http://www.eclipse.org/feature2">

-    <category name="eclipse/J2EE"/>

-  </feature>

-  <feature url="http://www.eclipse.org/feature1">

-    <category name="eclipse/J2EE"/>

-  </feature>

-  <archive path="plugins/org.eclipse.update.plugin1_1.1.1.jar" url="plugins/org.eclipse.update.plugin1_1.1.1"/>    

-  <category-def label="J2EE tools" name="eclipse/J2EE"/>

-  <category-def label="EJB Tools" name="eclipse/J2EE/EJB"/>

-  <category-def label="UML tools" name="eclipse/UML"/>

-  <category-def label="Messaging Tools" name="B2B"/>

-  <category-def label="Eclipse Tools" name="eclipse"/>

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/site2/site.xml b/update/org.eclipse.update.tests.core/data/site2/site.xml
deleted file mode 100644
index 39d1c11..0000000
--- a/update/org.eclipse.update.tests.core/data/site2/site.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<site url="Info.html" type="org.eclipse.update.core.file">

-  <feature url="features/feature1"/>

-  <archive path="org.eclipse.update.plugin1" url="plugins/plugin1"/>

-  <archive path="org.eclipse.update.archive2" url="plugins/plugin2"/>

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/bundleAndPluginManifests_1.0.3/META-INF/MANIFEST.MF b/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/bundleAndPluginManifests_1.0.3/META-INF/MANIFEST.MF
deleted file mode 100644
index c223e4f..0000000
--- a/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/bundleAndPluginManifests_1.0.3/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,11 +0,0 @@
-Generated-from: 1077062603708
-Bundle-Name: Test
-Bundle-Version: 1.0.3
-Bundle-SymbolicName: org.eclipse.update.core.tests.bundleAndPluginManifestsBUNDLEPARSED
-Bundle-Vendor: Eclipse.org
-Bundle-ClassPath: plugin.jar
-Legacy: true
-Bundle-Activator: org.eclipse.update.core.tests.bundleAndPluginManifests.Activator
-Require-Bundle: 
- org.eclipse.core.runtime,
- org.eclipse.ui
diff --git a/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/bundleAndPluginManifests_1.0.3/plugin.xml b/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/bundleAndPluginManifests_1.0.3/plugin.xml
deleted file mode 100644
index 6b59ddb..0000000
--- a/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/bundleAndPluginManifests_1.0.3/plugin.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<plugin name="JUnit Test Framework" id="org.eclipse.update.core.tests.bundleAndPluginManifests" version="1.0.3" vendor-name="Eclipse.org">
-</plugin>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/bundleManifest_1.0.1/META-INF/MANIFEST.MF b/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/bundleManifest_1.0.1/META-INF/MANIFEST.MF
deleted file mode 100644
index 656e680..0000000
--- a/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/bundleManifest_1.0.1/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,11 +0,0 @@
-Generated-from: 1077062603708
-Bundle-Name: Test
-Bundle-Version: 1.0.1
-Bundle-SymbolicName: org.eclipse.update.core.tests.bundleManifest; singleton=true
-Bundle-Vendor: Eclipse.org
-Bundle-ClassPath: plugin.jar
-Legacy: true
-Bundle-Activator: org.eclipse.update.core.tests.bundleManifest.Activator
-Require-Bundle: 
- org.eclipse.core.runtime,
- org.eclipse.ui
diff --git a/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/feature1_plugin2_5.0.0/plugin.xml b/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/feature1_plugin2_5.0.0/plugin.xml
deleted file mode 100644
index 7f81c46..0000000
--- a/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/feature1_plugin2_5.0.0/plugin.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<plugin name="JUnit Test Framework" id="org.eclipse.update.core.tests.feature1.plugin2" version="5.0.0" vendor-name="junit.org">

-  <runtime>

-    <library name="junit.jar">

-      <export name="*"/>

-    </library>

-  </runtime>

-</plugin>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/feature1_plugin2_5.0.0/src.jar b/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/feature1_plugin2_5.0.0/src.jar
deleted file mode 100644
index 2d4d609..0000000
--- a/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/feature1_plugin2_5.0.0/src.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/feature1_plugin2_5.0.1/plugin.xml b/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/feature1_plugin2_5.0.1/plugin.xml
deleted file mode 100644
index efb3c26..0000000
--- a/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/feature1_plugin2_5.0.1/plugin.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<plugin name="JUnit Test Framework" id="org.eclipse.update.core.tests.feature1.plugin2" version="5.0.1" vendor-name="junit.org">

-  <runtime>

-    <library name="junit.jar">

-      <export name="*"/>

-    </library>

-  </runtime>

-</plugin>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/feature1_plugin2_5.0.1/src.jar b/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/feature1_plugin2_5.0.1/src.jar
deleted file mode 100644
index 2d4d609..0000000
--- a/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/feature1_plugin2_5.0.1/src.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/notBundleManifest_1.0.2/META-INF/MANIFEST.MF b/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/notBundleManifest_1.0.2/META-INF/MANIFEST.MF
deleted file mode 100644
index 866fb0f..0000000
--- a/update/org.eclipse.update.tests.core/data/siteTestLocalSite/plugins/notBundleManifest_1.0.2/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Generated-from: 1077062603708
-Bundle-Name: Not Valid Bundle Manifest
-Bundle-Version: 1.0.2
-Bundle-Vendor: Eclipse.org
-Bundle-ClassPath: plugin.jar
-Require-Bundle: 
- org.eclipse.core.runtime,
- org.eclipse.ui
diff --git a/update/org.eclipse.update.tests.core/data/testAPI/features/feature3/feature.xml b/update/org.eclipse.update.tests.core/data/testAPI/features/feature3/feature.xml
deleted file mode 100644
index f878d60..0000000
--- a/update/org.eclipse.update.tests.core/data/testAPI/features/feature3/feature.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature id="org.eclipse.update.core.tests.feature3" image="feature1.gif" label="Third Feature" provider-name="Smart Company" version="1.0.0" >
-  <description>Description</description>
-  <copyright>copyright</copyright>
-  <license>license</license>
-  <url>
-    <update label="URL to update the feature" url="http://www.eclipse.org/"/>
-    <discovery label="Discovery 1" url="http://www.eclipse.org"/>
-    <discovery label="Discovery 2" url="http://www.eclipse.org"/>
-  </url>
-  <plugin download-size="1500" id="org.eclipse.update.plugin1" install-size="1000" fragment="false" nl="us" os="WIN32,LINUX" version="1.1.1"/>
-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/testAPI/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml b/update/org.eclipse.update.tests.core/data/testAPI/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml
deleted file mode 100644
index e01846c..0000000
--- a/update/org.eclipse.update.tests.core/data/testAPI/plugins/org.eclipse.update.plugin1_1.1.1/plugin.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<plugin name="JUnit Test Framework" id="org.eclipse.update.core.tests.feature1.plugin1" version="3.5.6" vendor-name="junit.org">
-  <runtime>
-    <library name="junit.jar">
-      <export name="*"/>
-    </library>
-  </runtime>
-</plugin>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/testAPI/plugins/org.eclipse.update.plugin1_1.1.1/src.jar b/update/org.eclipse.update.tests.core/data/testAPI/plugins/org.eclipse.update.plugin1_1.1.1/src.jar
deleted file mode 100644
index 2d4d609..0000000
--- a/update/org.eclipse.update.tests.core/data/testAPI/plugins/org.eclipse.update.plugin1_1.1.1/src.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/testAPI/site.xml b/update/org.eclipse.update.tests.core/data/testAPI/site.xml
deleted file mode 100644
index 4c15d43..0000000
--- a/update/org.eclipse.update.tests.core/data/testAPI/site.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site type="org.eclipse.update.core.file">
-<description url="info/siteInfo.html"/>
-  <feature url="features/feature3">
-    <category name="eclipse/UML"/>
-  </feature>
-  <feature url="http://www.eclipse.org/feature2">
-    <category name="eclipse/J2EE"/>
-  </feature>
-  <feature url="http://www.eclipse.org/feature1">
-    <category name="eclipse/J2EE"/>
-  </feature>
-  <archive path="plugins/org.eclipse.update.plugin1_1.1.1.jar" url="plugins/org.eclipse.update.plugin1_1.1.1"/>    
-  <category-def label="J2EE tools" name="eclipse/J2EE"/>
-  <category-def label="EJB Tools" name="eclipse/J2EE/EJB"/>
-  <category-def label="UML tools" name="eclipse/UML"/>
-  <category-def label="Messaging Tools" name="B2B"/>
-  <category-def label="Eclipse Tools" name="eclipse"/>
-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/validation/site2/.eclipseproduct b/update/org.eclipse.update.tests.core/data/validation/site2/.eclipseproduct
deleted file mode 100644
index 8b829aa..0000000
--- a/update/org.eclipse.update.tests.core/data/validation/site2/.eclipseproduct
+++ /dev/null
@@ -1,3 +0,0 @@
-id=another.product.id

-name=Name of the product

-ver=1.2.4
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/validation/site3/.eclipseextension b/update/org.eclipse.update.tests.core/data/validation/site3/.eclipseextension
deleted file mode 100644
index 6d72df7..0000000
--- a/update/org.eclipse.update.tests.core/data/validation/site3/.eclipseextension
+++ /dev/null
@@ -1 +0,0 @@
-id=id.of.extended.product
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/validation/site4/eclipse/.eclipseextension b/update/org.eclipse.update.tests.core/data/validation/site4/eclipse/.eclipseextension
deleted file mode 100644
index acc84e9..0000000
--- a/update/org.eclipse.update.tests.core/data/validation/site4/eclipse/.eclipseextension
+++ /dev/null
@@ -1 +0,0 @@
-id=different.product.id
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/validation/site5/.eclipseUM b/update/org.eclipse.update.tests.core/data/validation/site5/.eclipseUM
deleted file mode 100644
index 196c522..0000000
--- a/update/org.eclipse.update.tests.core/data/validation/site5/.eclipseUM
+++ /dev/null
@@ -1,3 +0,0 @@
-id=org.eclipse.platform

-name=a Product 

-version=3.5.6
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/validation/site5/eclipse/.eclipseextension b/update/org.eclipse.update.tests.core/data/validation/site5/eclipse/.eclipseextension
deleted file mode 100644
index fff40a3..0000000
--- a/update/org.eclipse.update.tests.core/data/validation/site5/eclipse/.eclipseextension
+++ /dev/null
@@ -1,3 +0,0 @@
-id=org.eclipse.platform
-name=Eclipse Platform
-version=3.1.0
diff --git a/update/org.eclipse.update.tests.core/data/validation/site6/.eclipseUM b/update/org.eclipse.update.tests.core/data/validation/site6/.eclipseUM
deleted file mode 100644
index 597f9f8..0000000
--- a/update/org.eclipse.update.tests.core/data/validation/site6/.eclipseUM
+++ /dev/null
@@ -1 +0,0 @@
-id=org.eclipse.sdk
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/validation/site6/children/children/eclipse/.eclipseextension b/update/org.eclipse.update.tests.core/data/validation/site6/children/children/eclipse/.eclipseextension
deleted file mode 100644
index 597f9f8..0000000
--- a/update/org.eclipse.update.tests.core/data/validation/site6/children/children/eclipse/.eclipseextension
+++ /dev/null
@@ -1 +0,0 @@
-id=org.eclipse.sdk
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/xmls/apitests/org.eclipse.test.feature_1.0.0/feature.xml b/update/org.eclipse.update.tests.core/data/xmls/apitests/org.eclipse.test.feature_1.0.0/feature.xml
deleted file mode 100644
index 1511800..0000000
--- a/update/org.eclipse.update.tests.core/data/xmls/apitests/org.eclipse.test.feature_1.0.0/feature.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<feature id="org.test1.ident1" label="Feature One" nl="en_us,fr,de" os="OS_WIN32,OS_LINUX" provider-name="Object Technology International" version="1.0.0" ws="WS_WIN32,WS_MOTIF,WS_GTK">

-  <description>Test feature for testIdentifier test</description>

-  <copyright>Copyright (c) the company</copyright>

-  <license>Do you accept the license ?</license>

-  <url>

-    <update label="URL to update teh feature" url="http://www.eclipse.org"/>

-    <discovery label="Discovery 1" url="http://www.eclipse.org"/>

-    <discovery label="Discovery 2" url="http://www.eclipse.org"/>

-  </url>

-  <plugin download-size="1500" id="org.eclipse.update.core.tests.feature1.plugin1" install-size="1000" fragment="false" nl="us" os="OS_WIN32" version="3.5.6" ws="WS_WIN32"/>

-  <plugin download-size="1200" id="org.eclipse.update.core.tests.feature1.plugin2" install-size="978" fragment="false" version="5.0.0"/>

-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/xmls/apitests/org.eclipse_test_feature/feature.xml b/update/org.eclipse.update.tests.core/data/xmls/apitests/org.eclipse_test_feature/feature.xml
deleted file mode 100644
index 9f05cda..0000000
--- a/update/org.eclipse.update.tests.core/data/xmls/apitests/org.eclipse_test_feature/feature.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<feature id="org.test1.ident2" label="Feature One" nl="en_us,fr,de" os="OS_WIN32,OS_LINUX" provider-name="Object Technology International" version="1.0.0" ws="WS_WIN32,WS_MOTIF,WS_GTK">

-  <description>Test feature for testIdentifier test</description>

-  <copyright>Copyright (c) the company</copyright>

-  <license>Do you accept the license ?</license>

-  <url>

-    <update label="URL to update teh feature" url="http://www.eclipse.org"/>

-    <discovery label="Discovery 1" url="http://www.eclipse.org"/>

-    <discovery label="Discovery 2" url="http://www.eclipse.org"/>

-  </url>

-  <plugin download-size="1500" url="org.eclipse.update.core.tests.feature1.plugin1" id="org.eclipse.update.core.tests.feature1.plugin1" install-size="1000" fragment="false" nl="us" os="OS_WIN32" version="3.5.6" ws="WS_WIN32"/>

-  <plugin download-size="1200" id="org.eclipse.update.core.tests.feature1.plugin2" install-size="978" fragment="false" version="5.0.0"/>

-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/xmls/feature_1.0.0/feature.xml b/update/org.eclipse.update.tests.core/data/xmls/feature_1.0.0/feature.xml
deleted file mode 100644
index c4ee139..0000000
--- a/update/org.eclipse.update.tests.core/data/xmls/feature_1.0.0/feature.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<feature id="org.eclipse.update.core.tests.feature1" image="feature1.gif" label="Feature One" nl="en,fr,de" os="OS_WIN32,OS_LINUX" provider-name="Object Technology International" version="1.0.4" ws="WS_WIN32,WS_MOTIF,WS_GTK">

-  <description>I believe this is the description of feature 1, well, feature 1 is an exceptional feature that you should install right NOW on your machine... try it.</description>

-  <copyright>Ok, now, this is a very very complex Copyright  not prepared by a lawyer Copyright (c) the company</copyright>

-  <license>#1 Do you accept it #2 you do nto accept it ...Do you accpt it ?</license>

-  <url>

-    <update label="URL to update the feature" url="http://www.eclipse.org/path/feature1/"/>

-    <discovery label="Discovery 1" url="http://www.eclipse.org"/>

-    <discovery label="Discovery 2" url="http://www.eclipse.org"/>

-  </url>

-  <plugin download-size="1500" id="org.eclipse.update.core.tests.feature1.plugin1" install-size="1000" fragment="false" nl="us" os="OS_WIN32" version="3.5.6" ws="WS_WIN32"/>

-  <plugin download-size="1200" id="org.eclipse.update.core.tests.feature1.plugin2" install-size="978" fragment="false" version="5.0.0"/>

-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/data/xmls/feature_1.0.0/feature1.gif b/update/org.eclipse.update.tests.core/data/xmls/feature_1.0.0/feature1.gif
deleted file mode 100644
index 03e30a2..0000000
--- a/update/org.eclipse.update.tests.core/data/xmls/feature_1.0.0/feature1.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/data/xmls/site1/site.xml b/update/org.eclipse.update.tests.core/data/xmls/site1/site.xml
deleted file mode 100644
index 44823c0..0000000
--- a/update/org.eclipse.update.tests.core/data/xmls/site1/site.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<site url="info" type="org.eclipse.update.core.file">

-  <feature id="org.isv.feature3" url="www.eclipse.org/feature3" version="3.4.5">

-    <category name="eclipse/UML"/>

-  </feature>

-  <feature id="org.eclipse.update.core.tests.feature2" url="www.eclipse.org/feature2" version="3.4.6">

-    <category name="eclipse/J2EE"/>

-  </feature>

-  <feature id="org.eclipse.update.core.tests.fature1" url="www.eclipse.org/feature1" version="2.3.5">

-    <category name="eclipse/J2EE"/>

-  </feature>

-  <archive path="org.eclipse.update.plugin1" url="www.eclipse.org/pluign1"/>

-  <archive path="org.eclipse.update.archive2" url="www.eclipse.org/plugin2"/>

-  <archive path="org.eclipse.update.plugin3" url="www.eclipse.org/plugin3"/>

-  <archive path="org.eclipse.unknown.plugin" url="www.eclipse.org/plugins/plugin4"/>

-  <archive path="org.eclipse.update.core.tests.feature1.foo1" url="www.eclipse.org/plugin1"/>

-  <category-def label="J2EE tools" name="eclipse/J2EE"/>

-  <category-def label="EJB Tools" name="eclipse/J2EE/EJB"/>

-  <category-def label="UML tools" name="eclipse/UML"/>

-  <category-def label="Messaging Tools" name="B2B"/>

-  <category-def label="Eclipse tools" name="eclipse"/>

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/plugin.properties b/update/org.eclipse.update.tests.core/plugin.properties
deleted file mode 100644
index 1caa664..0000000
--- a/update/org.eclipse.update.tests.core/plugin.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-###############################################################################

-# Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

-###############################################################################

-

-name = Install/Update Core Tests

-provider-name = Eclipse.org
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/plugin.xml b/update/org.eclipse.update.tests.core/plugin.xml
deleted file mode 100644
index 083a090..0000000
--- a/update/org.eclipse.update.tests.core/plugin.xml
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<?eclipse version="3.0"?>

-<plugin

-   id="org.eclipse.update.tests.core"

-   name="%name"

-   version="3.0.0"

-   provider-name="%provider-name"

-   class="org.eclipse.update.tests.UpdateTestsPlugin">

-

-   <runtime>

-      <library name="updatetests.jar">

-         <export name="*"/>

-      </library>

-   </runtime>

-   <requires>

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

-      <import plugin="org.junit"/>

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

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

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

-      <import plugin="org.eclipse.help.appserver"/>

-      <import plugin="org.eclipse.update.configurator"/>

-      <import plugin="org.eclipse.test.performance"/>

-   </requires>

-

-

-   <extension

-         id="feature1"

-         point="org.eclipse.update.core.featureTypes">

-      <feature-factory

-            class="org.eclipse.update.internal.core.FeatureExecutableFactory">

-      </feature-factory>

-   </extension>

-   <extension

-         id="ftp"

-         point="org.eclipse.update.core.siteTypes">

-      <site-factory

-            class="org.eclipse.update.tests.implementation.SiteFTPFactory">

-      </site-factory>

-   </extension>

-

-</plugin>

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/AllTests.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/AllTests.java
deleted file mode 100644
index d215b5d..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/AllTests.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests;

-

-import junit.framework.Test;

-import junit.framework.TestSuite;

-import org.eclipse.update.tests.api.AllAPITests;

-import org.eclipse.update.tests.branding.*;

-//import org.eclipse.update.tests.configurations.AllConfigurationsTests;

-import org.eclipse.update.tests.core.boot.AllPlatformConfigurationTests;

-import org.eclipse.update.tests.mirror.*;

-import org.eclipse.update.tests.model.AllModelTests;

-import org.eclipse.update.tests.nestedfeatures.AllNestedTests;

-import org.eclipse.update.tests.parser.AllParserTests;

-//import org.eclipse.update.tests.perfms.*;

-import org.eclipse.update.tests.reconciliation.AllReconciliationTests;

-import org.eclipse.update.tests.regularInstall.AllRegularInstallTests;

-//import org.eclipse.update.tests.regularRemove.AllRegularRemoveTests;

-import org.eclipse.update.tests.sitevalidation.AllSiteValidationTests;

-//import org.eclipse.update.tests.standalone.*;

-import org.eclipse.update.tests.types.AllTypesTests;

-import org.eclipse.update.tests.uivalues.AllCoreUITests;

-

-public class AllTests extends TestSuite {

-	public AllTests(String name) {

-		super(name);

-	}

-	public static Test suite() throws Exception {

-		TestSuite suite = new TestSuite();

-		suite.setName("All Update Manager Tests");

-		suite.addTest(AllMirrorTests.suite());	

-		suite.addTest(AllSiteValidationTests.suite());

-		suite.addTest(AllPlatformConfigurationTests.suite());

-		suite.addTest(AllRegularInstallTests.suite());

-		suite.addTest(AllAPITests.suite());

-		suite.addTest(AllParserTests.suite());

-		suite.addTest(AllCoreUITests.suite());

-//		suite.addTest(AllConfigurationsTests.suite());

-		suite.addTest(AllTypesTests.suite());

-//		suite.addTest(AllRegularRemoveTests.suite());

-		suite.addTest(AllNestedTests.suite());	

-		suite.addTest(AllReconciliationTests.suite());					

-		suite.addTest(AllModelTests.suite());

-		suite.addTest(AllBrandingTests.suite());

-		//suite.addTest(AllStandaloneTests.suite());

-		//suite.addTest(AllPerformanceTests.suite());

-		return suite;

-	}

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/UpdateManagerTestCase.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/UpdateManagerTestCase.java
deleted file mode 100644
index a388b2d..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/UpdateManagerTestCase.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests;

-

-

-import java.io.File;

-import java.io.IOException;

-import java.net.*;

-import java.util.*;

-

-import junit.framework.TestCase;

-import org.eclipse.core.runtime.*;

-import org.eclipse.core.runtime.IPluginDescriptor;

-import org.eclipse.core.runtime.Platform;

-import org.eclipse.update.configuration.IConfiguredSite;

-import org.eclipse.update.core.*;

-import org.eclipse.update.core.IFeature;

-import org.eclipse.update.core.IPluginEntry;

-import org.eclipse.update.internal.core.*;

-import org.eclipse.update.internal.core.UpdateManagerUtils;

-/**

- * All Help System Test cases must subclass this base Testcase.

- * See SampleTestCase.java for a template.

- */

-

-public abstract class UpdateManagerTestCase extends TestCase {

-

-	protected static ResourceBundle bundle;

-	protected static String dataPath;

-

-	protected static URL SOURCE_FILE_SITE;

-	protected static URL SOURCE_FILE_SITE_INSTALLED;

-	protected static URL SOURCE_HTTP_SITE;

-	protected static URL TARGET_FILE_SITE;

-

-	private static final String DATA_PATH = "data/";

-

-	/**

-	 * Default Constructor

-	 */

-	public UpdateManagerTestCase(String name) {

-		super(name);

-		try {

-			init();

-		} catch (Exception e) {

-			fail(e.toString());

-			e.printStackTrace();

-		}

-	}

-

-	protected static void init() throws MissingResourceException, IOException, MalformedURLException {

-

-		IPluginDescriptor dataDesc = Platform.getPluginRegistry().getPluginDescriptor("org.eclipse.update.tests.core");

-		URL resolvedURL = Platform.asLocalURL(Platform.resolve(dataDesc.getInstallURL()));

-		URL dataURL = new URL(resolvedURL, DATA_PATH);

-		dataPath = dataURL.getFile();

-		String homePath = (System.getProperty("java.io.tmpdir")).replace(File.separatorChar, '/');

-

-		if (bundle == null) {

-			ClassLoader l = new URLClassLoader(new URL[] { dataURL }, null);

-			bundle = ResourceBundle.getBundle("resources", Locale.getDefault(), l);

-		}

-

-		try {

-			SOURCE_FILE_SITE = new File(dataPath).toURL();

-			SOURCE_FILE_SITE_INSTALLED = new File(dataPath + "testAPI/").toURL();

-			SOURCE_HTTP_SITE = new URL("http", getHttpHost(), getHttpPort(), bundle.getString("HTTP_PATH_1"));

-			TARGET_FILE_SITE = new URL("file", null, homePath + "/target/");

-		} catch (Exception e) {

-			fail(e.toString());

-			e.printStackTrace();

-		}

-

-		//cleanup target 

-		File target = new File(homePath + "/target/");

-		UpdateManagerUtils.removeFromFileSystem(target);

-		// cleanup info about just installed plugins

-		InstallRegistry.cleanup();

-		

-		// setup cache site to false. 

-		// Note: the standalone tests will set it back to true

-		InternalSiteManager.globalUseCache = false;

-	}

-

-	/**

-	 * Simple implementation of setUp. Subclasses are prevented 

-	 * from overriding this method to maintain logging consistency.

-	 * umSetUp() should be overriden instead.

-	 */

-	protected final void setUp() throws Exception {

-		System.out.println("----- " + this.getName());

-		System.out.println(this.getName() + ": setUp...");

-		umSetUp();

-	}

-

-	/**

-	 * Sets up the fixture, for example, open a network connection.

-	 * This method is called before a test is executed.

-	 */

-	protected void umSetUp() throws Exception {

-		// do nothing.

-	}

-

-	/**

-	 * Simple implementation of tearDown.  Subclasses are prevented 

-	 * from overriding this method to maintain logging consistency.

-	 * umTearDown() should be overriden instead.

-	 */

-	protected final void tearDown() throws Exception {

-		System.out.println(this.getName() + ": tearDown...\n");

-		umTearDown();

-	}

-

-	/**

-	 * Tears down the fixture, for example, close a network connection.

-	 * This method is called after a test is executed.

-	 */

-	protected void umTearDown() throws Exception {

-		// do nothing.

-	}

-

-	protected static String getHttpHost() {

-		return UpdateTestsPlugin.getWebAppServerHost();

-	}

-

-	protected static int getHttpPort() {

-		return UpdateTestsPlugin.getWebAppServerPort();

-	}

-

-	protected void remove(IFeature feature, IConfiguredSite configSite) throws CoreException {

-		ISite site = configSite.getSite();

-		remove(feature, site);

-	}

-

-	protected void remove(IFeature feature, ISite site) throws CoreException {

-		site.getFeatureReference(feature);

-		// remove the plugins and features dir

-		String sitePath = site.getURL().getFile();

-		File file = null;

-

-		String featureName = feature.getVersionedIdentifier().getIdentifier().toString() + "_" + feature.getVersionedIdentifier().getVersion().toString();

-		file = new File(sitePath, "features" + File.separator + featureName);

-		System.out.println("****************************************Removing :" + file);

-		UpdateManagerUtils.removeFromFileSystem(file);

-

-		IPluginEntry[] entries = feature.getPluginEntries();

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

-			String name = entries[i].getVersionedIdentifier().getIdentifier().toString() + "_" + entries[i].getVersionedIdentifier().getVersion().toString() + File.separator;

-			file = new File(sitePath, "plugins" + File.separator + name);

-			System.out.println("****************************************Removing :" + file);

-			UpdateManagerUtils.removeFromFileSystem(file);

-			InstallRegistry.unregisterPlugin(entries[i]);

-		}

-	}

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/UpdateTestsPlugin.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/UpdateTestsPlugin.java
deleted file mode 100644
index 1843ffd..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/UpdateTestsPlugin.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests;

-import org.eclipse.core.runtime.*;

-import org.eclipse.help.internal.appserver.WebappManager;

-import org.eclipse.update.internal.core.UpdateCore;

-import org.osgi.framework.*;

-

-/**

- * manages the startuo and shutown of the 

- * web server

- */

-public class UpdateTestsPlugin extends Plugin {

-

-	private static String appServerHost = null;

-	private static int appServerPort = 0;

-	private static UpdateTestsPlugin plugin;

-	private static BundleContext bundleContext;

-	private static boolean initialized=false;

-

-	public static UpdateTestsPlugin getPlugin() {

-		return plugin;

-	}

-

-	/* (non-Javadoc)

-	 * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)

-	 */

-	public void start(BundleContext context) throws Exception {

-		super.start(context);

-		plugin = this;

-		bundleContext = context;

-	}

-	

-	/* (non-Javadoc)

-	 * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)

-	 */

-	public void stop(BundleContext context) throws Exception {

-		WebappManager.stop("org.eclipse.update.tests.core.updatetests");

-		plugin = null;

-		bundleContext = null;

-		super.stop(context);

-	}

-

-	/**

-	 * Returns the host identifier for the web app server

-	 */

-	public static String getWebAppServerHost() {

-		if (!initialized) initialize();

-		return appServerHost;

-	}

-

-	/**

-	 * Returns the port identifier for the web app server

-	 */

-	public static int getWebAppServerPort() {

-		if (!initialized) initialize();		

-		return appServerPort;

-	}

-	/**

-	 * Method initialize.

-	 */

-	private static void initialize() {

-		String text = null;

-		try {

-			WebappManager.start("org.eclipse.update.tests.core.updatetests", "org.eclipse.update.tests.core", new Path("webserver"));

-			appServerHost = WebappManager.getHost();

-			appServerPort = WebappManager.getPort();

-

-			text = "The webServer did start ip:" + appServerHost + ":" + appServerPort;

-		} catch (CoreException e) {

-			text = "The webServer didn't start ";

-			IStatus status = new Status(IStatus.ERROR, "org.eclipse.update.tests.core", IStatus.OK, "WebServer not started. Update Tests results are invalid", null);

-			UpdateCore.warn("",new CoreException(status));

-		}finally {

-			System.out.println(text);

-			initialized = true;

-		}

-	}

-

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/AllAPITests.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/AllAPITests.java
deleted file mode 100644
index ab96b39..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/AllAPITests.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.api;

-import junit.framework.Test;

-import junit.framework.TestSuite;

-

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-/**

- * Manages the API tests

- */

-public class AllAPITests extends UpdateManagerTestCase {

-	/**

-	 * Constructor

-	 */

-	public AllAPITests(String name) {

-		super(name);

-	}

-	

-	/**

-	 * List of API tests

-	 */

-	public static Test suite() throws Exception {

-		TestSuite suite = new TestSuite();

-		suite.setName("API Tests");

-

-		suite.addTest(new TestSuite(TestSiteAPI.class));

-		suite.addTest(new TestSuite(TestLocalSiteAPI.class));		

-		suite.addTest(new TestSuite(TestUpdateManagerUtilsAPI.class));		

-		suite.addTest(new TestSuite(TestDefaultExecutableFeatureAPI.class));

-		suite.addTest(new TestSuite(TestDefaultPackageFeatureAPI.class));

-		suite.addTest(new TestSuite(TestPluginContainerAPI.class));

-		suite.addTest(new TestSuite(TestSiteManagerAPI.class));		

-		suite.addTest(new TestSuite(TestNestedFeatureAPI.class));

-		suite.addTest(new TestSuite(TestFeatureContentProvider_FileFilterAPI.class));

-		return suite;

-	}

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/DefaultFeature.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/DefaultFeature.java
deleted file mode 100644
index 3456bb3..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/DefaultFeature.java
+++ /dev/null
@@ -1,173 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.api;

-

-import java.net.URL;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.update.core.*;

-import org.eclipse.update.core.model.*;

-import org.eclipse.update.internal.core.FeatureExecutableContentProvider;

-/**

- * Abstract Class that implements most of the behavior of a feature

- * A feature ALWAYS belongs to an ISite

- */

-public class DefaultFeature extends Feature {

-

-

-	/**

-	 * Copy constructor

-	 */

-	public DefaultFeature(IFeature sourceFeature, ISite targetSite) throws CoreException {

-		this(targetSite);

-		this.setFeatureContentProvider(sourceFeature.getFeatureContentProvider());

-		this.setIdentifier(sourceFeature.getVersionedIdentifier());

-		this.setLabel(sourceFeature.getLabel());

-		this.setUpdateSiteEntry(sourceFeature.getUpdateSiteEntry());

-		this.setDiscoverySiteEntries(sourceFeature.getDiscoverySiteEntries());

-		this.setProvider(sourceFeature.getProvider());

-		this.setDescription(sourceFeature.getDescription());

-		this.setCopyright(sourceFeature.getCopyright());

-		this.setLicense(sourceFeature.getLicense());

-		this.setPluginEntries(sourceFeature.getPluginEntries());

-		this.setImage(sourceFeature.getImage());

-	}

-	

-	/**

-	 * Constructor

-	 */

-	public DefaultFeature(ISite targetSite) throws CoreException {

-		super();

-		this.setSite(targetSite);		

-	}	

-	

-	

-	/**

-	 * Sets the identifier

-	 * @param identifier The identifier to set

-	 */

-	public void setIdentifier(VersionedIdentifier identifier) {

-		setFeatureIdentifier(identifier.getIdentifier());

-		setFeatureVersion(identifier.getVersion().toString());

-	}

-

-	/**

-	 * Sets the discoverySiteEntries

-	 * @param discoveryInfos The discoveryInfos to set

-	 */

-	public void setDiscoverySiteEntries(IURLEntry[] discoveryInfos) {

-		setDiscoverySiteEntryModels((URLEntryModel[]) discoveryInfos);

-	}

-

-	/**

-	 * Sets the updateSiteEntry

-	 * @param updateInfo The updateInfo to set

-	 */

-	public void setUpdateSiteEntry(IURLEntry updateInfo) {

-		setUpdateSiteEntryModel((URLEntryModel) updateInfo);

-	}

-

-	/**

-	 * Adds a discoveryInfo

-	 * @param discoveryInfo The discoveryInfo to add

-	 */

-	public void addDiscoverySiteEntry(IURLEntry discoveryInfo) {

-		addDiscoverySiteEntryModel((URLEntryModel) discoveryInfo);

-	}

-

-	/**

-	 * Sets the description

-	 * @param description The description to set

-	 */

-	public void setDescription(IURLEntry description) {

-		setDescriptionModel((URLEntryModel) description);

-	}

-

-	/**

-	 * Sets the copyright

-	 * @param copyright The copyright to set

-	 */

-	public void setCopyright(IURLEntry copyright) {

-		setCopyrightModel((URLEntryModel) copyright);

-	}

-

-	/**

-	 * Sets the license

-	 * @param license The license to set

-	 */

-	public void setLicense(IURLEntry license) {

-		setLicenseModel((URLEntryModel) license);

-	}

-

-	/**

-	 * Sets the image

-	 * @param image The image to set

-	 */

-	public void setImage(URL image) {

-		if (image==null) return;

-		setImageURLString(image.toExternalForm());

-	}

-

-	/**

-	 * Adds an import

-	 * @param anImport The import to add

-	 */

-	public void addImport(IImport anImport) {

-		if (anImport != null) {

-			addImportModel((ImportModel) anImport);

-		}

-	}

-

-

-	/**

-	 * Sets the pluginEntries

-	 * @param pluginEntries The pluginEntries to set

-	 */

-	public void setPluginEntries(IPluginEntry[] pluginEntries) {

-		if (pluginEntries != null) {

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

-				addPluginEntry(pluginEntries[i]);

-			}

-		}

-	}

-

-

-	/**

-	 * sets teh URL isf not already present

-	 */

-	public void setURL(URL url) throws CoreException{

-		//if (getFeatureContentProvider()==null){

-			FeatureContentProvider contentProvider = new FeatureExecutableContentProvider(url);

-			this.setFeatureContentProvider(contentProvider);

-			contentProvider.setFeature(this);

-		//}

-	}

-	

-	

-	/*

-	 * @see IPluginContainer#addPluginEntry(IPluginEntry)

-	 */

-	public void addPluginEntry(IPluginEntry pluginEntry) {

-		if (pluginEntry != null) {

-			addPluginEntryModel((PluginEntryModel) pluginEntry);

-		}

-	}

-

-	/*

-	 * @see IFeature#addNonPluginEntry(INonPluginEntry)

-	 */

-	public void addNonPluginEntry(INonPluginEntry dataEntry) {

-		if (dataEntry != null) {

-			addNonPluginEntryModel((NonPluginEntryModel) dataEntry);

-		}

-	}	

-

-	}
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/MyURLEntry.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/MyURLEntry.java
deleted file mode 100644
index 5944db4..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/MyURLEntry.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.api;

-import java.net.MalformedURLException;

-import java.net.URL;

-

-import org.eclipse.update.core.URLEntry;

-

-/**

- * Wrapper around URLEntry

- */

-public class MyURLEntry extends URLEntry {

-	

-	public MyURLEntry(String annotation, URL url) throws MalformedURLException {

-		super();

-		setAnnotation(annotation);

-		if (url!=null) {

-			setURLString(url.toExternalForm());

-			resolve(null,null);

-		}

-	}

-

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestDefaultExecutableFeatureAPI.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestDefaultExecutableFeatureAPI.java
deleted file mode 100644
index 7886db4..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestDefaultExecutableFeatureAPI.java
+++ /dev/null
@@ -1,184 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.api;

-import java.net.MalformedURLException;

-import java.net.URL;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.update.core.*;

-import org.eclipse.update.internal.core.UpdateManagerUtils;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-

-

-public class TestDefaultExecutableFeatureAPI extends UpdateManagerTestCase {

-	

-	private DefaultFeature remoteFeature=null;

-	

-	/**

-	 * Test the testFeatures()

-	 */

-	public TestDefaultExecutableFeatureAPI(String arg0) {

-		super(arg0);

-	}

-	

-	/**

-	 * the feature to test

-	 */

-	private DefaultFeature getFeature() throws MalformedURLException, CoreException {

-		if (remoteFeature == null){

-

-		ISite site = SiteManager.getSite(SOURCE_FILE_SITE, null);

-		URL url = UpdateManagerUtils.getURL(site.getURL(),"testAPI/"+Site.DEFAULT_INSTALLED_FEATURE_PATH+"feature3/",null);

-		SiteFeatureReference ref = new SiteFeatureReference();

-		ref.setSite(site);

-		ref.setURL(url);

-		IFeature feature = ref.getFeature(null);

-		remoteFeature = new DefaultFeature(feature,site);

-

-		}

-		return remoteFeature;

-	}

-

-	public void testIdentifier() throws CoreException, MalformedURLException {

-		String id1 = "xmls/apitests/org.eclipse.test.feature_1.0.0/";

-		String id2 = "xmls/apitests/org.eclipse_test_feature";

-		VersionedIdentifier ident1 = new VersionedIdentifier("org.test1.ident1","1.0.0");

-		VersionedIdentifier ident2 = new VersionedIdentifier("org.test1.ident2","1.0.0");		

-		

-

-			ISite site = SiteManager.getSite(SOURCE_FILE_SITE,null);

-			

-			URL url1 = UpdateManagerUtils.getURL(site.getURL(),id1,null);			

-			remoteFeature = new DefaultFeature(site);

-			remoteFeature.setURL(url1);

-			remoteFeature.setIdentifier(ident1);

-			assertEquals(ident1.toString(),remoteFeature.getVersionedIdentifier().toString());

-	 	

-			 URL url2 = UpdateManagerUtils.getURL(site.getURL(),id2,null);		

-			remoteFeature = new DefaultFeature(site);

-			remoteFeature.setURL(url2);

-			remoteFeature.setIdentifier(ident2);

-			assertEquals(ident2.toString(),remoteFeature.getVersionedIdentifier().toString());

-		

-

-	}

-

-

-

-	public void testSite() throws MalformedURLException, CoreException{

-		String ident1 = Site.DEFAULT_INSTALLED_FEATURE_PATH+"feature3/";		

-

-			ISite site = SiteManager.getSite(SOURCE_FILE_SITE,null);

-			

-			URL id = UpdateManagerUtils.getURL(site.getURL(),ident1,null);			

-			remoteFeature = new DefaultFeature(site);

-			remoteFeature.setURL(id);

-			assertEquals(site,remoteFeature.getSite());

-

-	}

-

-

-	public void testLabel() throws CoreException,MalformedURLException {

-		String label = "dummy label";

-		Feature feature = getFeature();

-		feature.setLabel(label);

-		assertEquals(label,feature.getLabel());

-	}

-

-

-	public void testUpdateURL() throws CoreException,MalformedURLException {

-		URL url = null;

-		String label = "OTI Site";

-		try {

-			url = new URL("http://www.oti.com/");

-			

-		} catch (java.net.MalformedURLException e){} // impossible eh !

-		DefaultFeature feature = getFeature();

-		feature.setUpdateSiteEntry(new MyURLEntry(label, url));

-		assertEquals(url,feature.getUpdateSiteEntry().getURL());

-		assertEquals(label,feature.getUpdateSiteEntry().getAnnotation());

-

-	} 

-

-

-	

-	public void testDiscoveryURLs() throws CoreException,MalformedURLException {

-		IURLEntry[] urlInfo = new MyURLEntry[2];

-		URL[] url = new URL[2];

-		String[] label = new String[2];

-		try {

-			url[0] = new URL("http://www.oti.com/");

-			url[1] = new URL("http://eclipse.org/");

-			label[0] = "OTI Site";

-			label[1] = "Eclipse Site";

-		} catch (java.net.MalformedURLException e){} // impossible eh !

-		DefaultFeature feature = getFeature();

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

-				urlInfo[i] = new MyURLEntry(label[i],url[i]);

-		}

-		feature.setDiscoverySiteEntries(urlInfo);

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

-			assertEquals(urlInfo[i],feature.getDiscoverySiteEntries()[i]);

-		}

-

-	}

-

-

-	public void testProvider() throws CoreException,MalformedURLException {

-		String provider = "not so dummy provider";

-		IFeature feature = getFeature();

-		((Feature)feature).setProvider(provider);

-		assertEquals(provider,feature.getProvider());

-	}

-

-

-

-	public void testDescription() throws CoreException,MalformedURLException {

-		String desc = "pretty long description as a string with \r\n and \t and \n";

-		IURLEntry info = new MyURLEntry(desc,null);

-		DefaultFeature feature = getFeature();

-		feature.setDescription(info);

-		assertEquals(desc,feature.getDescription().getAnnotation());

-	}

-	

-

-	public void testDescription1() throws CoreException, MalformedURLException {

-		URL url = null;

-		try {

-			url = new URL("http://www.oti.com");

-		} catch (MalformedURLException e){/*pretty impossible*/}

-		IURLEntry info = new MyURLEntry(null,url);

-		DefaultFeature feature = getFeature();

-		feature.setDescription(info);

-		assertEquals(url,feature.getDescription().getURL());

-	}	

-	

-

-	public void testDescription2() throws CoreException, MalformedURLException {

-		

- 	 URL url = null;

-		try {

-			url = new URL("http://www.oti.com");

-		} catch (MalformedURLException e){/*pretty impossible*/}

-		String desc = "pretty long description as a string with \r\n and \t and \n";

-		IURLEntry info = new MyURLEntry(desc,url);

-		DefaultFeature feature = getFeature();

-		feature.setDescription(info);

-		String result = feature.getDescription().getAnnotation();

-		assertEquals(desc,result);

-		assertEquals(url,feature.getDescription().getURL());

-	}	

-

-

-

-}

-

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestDefaultPackageFeatureAPI.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestDefaultPackageFeatureAPI.java
deleted file mode 100644
index f1f757d..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestDefaultPackageFeatureAPI.java
+++ /dev/null
@@ -1,175 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.api;

-import java.net.MalformedURLException;

-import java.net.URL;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.update.core.*;

-import org.eclipse.update.internal.core.UpdateManagerUtils;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-

-

-public class TestDefaultPackageFeatureAPI extends UpdateManagerTestCase {

-	

-	private	DefaultFeature remoteFeature=null;

-	

-	/**

-	 * Test the testFeatures()

-	 */

-	public TestDefaultPackageFeatureAPI(String arg0) {

-		super(arg0);

-	}

-	

-	/**

-	 * the feature to test

-	 */

-	private DefaultFeature getFeature() throws MalformedURLException, CoreException {

-		if (remoteFeature == null){

-		ISite site = SiteManager.getSite(SOURCE_FILE_SITE, null);

-		URL id = UpdateManagerUtils.getURL(site.getURL(),"org.eclipse.update.core.feature1_1.0.0.jar",null);	

-		remoteFeature = new DefaultFeature(site);

-		remoteFeature.setURL(id);

-		}

-		return remoteFeature;

-	}

-

-	public void testIdentifier() throws CoreException, MalformedURLException {

-		

-		String id1 = "features/org.eclipse.test.feature_1.0.0.jar";

-		String id2 = "features/org.eclipse_test_feature.jar";

-		VersionedIdentifier ident1 = new VersionedIdentifier("org.test1.ident1","1.0.0");

-		VersionedIdentifier ident2 = new VersionedIdentifier("org.test1.ident2","1.0.0");		

-		

-

-			ISite site = SiteManager.getSite(SOURCE_FILE_SITE, null);

-			

-			URL url1 = UpdateManagerUtils.getURL(site.getURL(),id1,null);			

-			remoteFeature = new DefaultFeature(site);

-			remoteFeature.setURL(url1);

-			remoteFeature.setIdentifier(ident1);

-			assertEquals(ident1.toString(),remoteFeature.getVersionedIdentifier().toString());

-		

-			 URL url2 = UpdateManagerUtils.getURL(site.getURL(),id2,null);		

-			remoteFeature = new DefaultFeature(site);

-			remoteFeature.setURL(url2);

-			remoteFeature.setIdentifier(ident2);			

-			assertEquals(ident2.toString(),remoteFeature.getVersionedIdentifier().toString());

-	}

-

-

-	public void testSite() throws MalformedURLException, CoreException {

-		String ident1 = "org.eclipse.test.feature_1.0.0.jar";		

-

-			ISite site = SiteManager.getSite(SOURCE_FILE_SITE, null);

-			

-			URL id = UpdateManagerUtils.getURL(site.getURL(),ident1,null);		

-			remoteFeature = new DefaultFeature(site);

-			remoteFeature.setURL(id);	

-			assertEquals(site,remoteFeature.getSite());

-

-	}

-

-

-	public void testLabel() throws CoreException, MalformedURLException {

-		String label = "dummy label";

-		Feature feature = getFeature();

-		feature.setLabel(label);

-		assertEquals(label,feature.getLabel());

-	}

-

-	public void testUpdateURL() throws CoreException, MalformedURLException {

-		URL url = null;

-		String label = "OTI Site";

-		try {

-			url = new URL("http://www.oti.com/");

-			

-		} catch (java.net.MalformedURLException e){} // impossible eh !

-		DefaultFeature feature = getFeature();

-		feature.setUpdateSiteEntry(new MyURLEntry(label, url));

-		assertEquals(url,feature.getUpdateSiteEntry().getURL());

-		assertEquals(label,feature.getUpdateSiteEntry().getAnnotation());

-

-	} 

-

-

-	

-	public void testDiscoveryURLs() throws CoreException, MalformedURLException {

-		IURLEntry[] urlInfo = new URLEntry[2];

-		URL[] url = new URL[2];

-		String[] label = new String[2];

-		try {

-			url[0] = new URL("http://www.oti.com/");

-			url[1] = new URL("http://eclipse.org/");

-			label[0] = "OTI Site";

-			label[1] = "Eclipse Site";

-		} catch (java.net.MalformedURLException e){} // impossible eh !

-		DefaultFeature feature = getFeature();

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

-				urlInfo[i] = new MyURLEntry(label[i],url[i]);

-		}

-		feature.setDiscoverySiteEntries(urlInfo);

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

-			assertEquals(urlInfo[i],feature.getDiscoverySiteEntries()[i]);

-		}

-

-

-	}

-

-

-	public void testProvider() throws CoreException, MalformedURLException {

-		String provider = "not so dummy provider";

-		Feature feature = getFeature();

-		feature.setProvider(provider);

-		assertEquals(provider,feature.getProvider());

-	}

-

-

-

-	public void testDescription() throws CoreException, MalformedURLException {

-		String desc = "pretty long description as a string with \r\n and \t and \n";

-		IURLEntry info = new MyURLEntry(desc,null);

-		DefaultFeature feature = getFeature();

-		feature.setDescription(info);

-		assertEquals(desc,feature.getDescription().getAnnotation());

-	}

-	

-

-	public void testDescription1() throws CoreException, MalformedURLException {

-		URL url = null;

-		try {

-			url = new URL("http://www.oti.com");

-		} catch (MalformedURLException e){/*pretty impossible*/}

-		IURLEntry info = new MyURLEntry(null,url);

-		DefaultFeature feature = getFeature();

-		feature.setDescription(info);

-		assertEquals(url,feature.getDescription().getURL());

-	}	

-	

-	public void testDescription2() throws CoreException, MalformedURLException {

-		

-		URL url = null;

-		try {

-			url = new URL("http://www.oti.com");

-		} catch (MalformedURLException e){/*pretty impossible*/}

-		String desc = "pretty long description as a string with \r\n and \t and \n";

-		IURLEntry info = new MyURLEntry(desc,url);

-		DefaultFeature feature = getFeature();

-		feature.setDescription(info);

-		assertEquals(desc,feature.getDescription().getAnnotation());

-		assertEquals(url,feature.getDescription().getURL());

-	}

-

-

-

-}

-

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestFeatureContentProvider_FileFilterAPI.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestFeatureContentProvider_FileFilterAPI.java
deleted file mode 100644
index 55deb03..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestFeatureContentProvider_FileFilterAPI.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.tests.api;
-import org.eclipse.update.core.FeatureContentProvider;
-import org.eclipse.update.internal.core.FeatureExecutableContentProvider;
-import org.eclipse.update.tests.UpdateManagerTestCase;
-
-
-
-public class TestFeatureContentProvider_FileFilterAPI extends UpdateManagerTestCase {
-	
-	
-	/**
-	 * Test the testFeatures()
-	 */
-	public TestFeatureContentProvider_FileFilterAPI(String arg0) {
-		super(arg0);
-	}
-	
-	public void testFileFilter(){
-		
-		String p1 = "/p1/p2/a.*";
-		String p2 = "p1/p2/b.*";
-		String p3 = "/p1/p2/a.txt";
-		String p4 = "/p1/p2/*.txt";
-		
-		String name1 = "/p1/p2/a.txt";
-		String name2 = "/p1/p2/b.txt";
-		String name3 = "/p3/p2/a.txt";
-		String name4 = "p1/p2/a.txt";
-		String name5 = "/p1/p2/b.txt";
-		String name6 = "/p1/p2/c.txt";
-		String name7 = "/p1/p2/p3/a.txt";
-		
-		
-		FeatureContentProvider cp = new FeatureExecutableContentProvider(null);
-		
-		FeatureContentProvider.FileFilter filter1 = cp.new FileFilter(p1);
-		FeatureContentProvider.FileFilter filter2 = cp.new FileFilter(p2);
-		FeatureContentProvider.FileFilter filter3 = cp.new FileFilter(p3);
-		FeatureContentProvider.FileFilter filter4 = cp.new FileFilter(p4);
-
-		assertTrue("1.1",filter1.accept(name1));		
-		assertTrue("1.2",!filter1.accept(name2));		
-		assertTrue("1.3",!filter1.accept(name3));	
-		assertTrue("1.4",!filter1.accept(name4));		
-		assertTrue("1.5",!filter1.accept(name5));		
-		assertTrue("1.6",!filter1.accept(name6));		
-		assertTrue("1.7",!filter1.accept(name7));
-	
-		assertTrue("2.1",!filter2.accept(name1));		
-		assertTrue("2.2",!filter2.accept(name2));		
-		assertTrue("2.3",!filter2.accept(name3));	
-		assertTrue("2.4",!filter2.accept(name4));		
-		assertTrue("2.5",!filter2.accept(name5));		
-		assertTrue("2.6",!filter2.accept(name6));		
-		assertTrue("2.7",!filter2.accept(name7));
-
-		assertTrue("3.1",filter3.accept(name1));		
-		assertTrue("3.2",!filter3.accept(name2));		
-		assertTrue("3.3",!filter3.accept(name3));	
-		assertTrue("3.4",!filter3.accept(name4));		
-		assertTrue("3.5",!filter3.accept(name5));		
-		assertTrue("3.6",!filter3.accept(name6));		
-		assertTrue("3.7",!filter3.accept(name7));
-		
-		assertTrue("4.1",filter4.accept(name1));		
-		assertTrue("4.2",filter4.accept(name2));		
-		assertTrue("4.3",!filter4.accept(name3));	
-		assertTrue("4.4",!filter4.accept(name4));		
-		assertTrue("4.5",filter4.accept(name5));		
-		assertTrue("4.6",filter4.accept(name6));		
-		assertTrue("4.7",!filter4.accept(name7));								
-					
-	}
-}
-
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestLocalSiteAPI.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestLocalSiteAPI.java
deleted file mode 100644
index ab49a5f..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestLocalSiteAPI.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.api;

-import java.net.URL;

-

-import org.eclipse.update.core.*;

-import org.eclipse.update.core.model.CategoryModel;

-import org.eclipse.update.core.model.SiteModel;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-public class TestLocalSiteAPI extends UpdateManagerTestCase {

-	

-	/**

-	 * Test the getFeatures()

-	 */

-	public TestLocalSiteAPI(String arg0) {

-		super(arg0);

-	}

-	

-	public void testFileParsing() throws Exception {

-

-		ISite site = SiteManager.getSite(new URL(SOURCE_FILE_SITE,"siteTestLocalSite/"), null);

-		IArchiveReference[] info = site.getArchives();

-		

-		if (info.length<=0){

-			fail("no plugins in site: "+site.getURL().toExternalForm());

-		}

-		 

-		boolean found1 = false;

-		boolean found2 = false;

-		String name1= "plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar";

-		String name2 = "plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.1.jar";

-		

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

-			if (info[i].getPath().equals(name1)) found1 = true;

-			if (info[i].getPath().equals(name2)) found2 = true;

-		}

-		

-		if (!found1 || !found2){

-			fail("Cannot find plugin : org.eclipse.update.core.tests.feature1.plugin2 version 5.0.0 and 5.0.1 on the site, by parsing file system");

-		}

-		

-

-	}

-	

-	public void testBundleManifestParsing() throws Exception {

-

-		ISite site = SiteManager.getSite(new URL(SOURCE_FILE_SITE,"siteTestLocalSite/"),null);

-		IArchiveReference[] info = site.getArchives();

-		

-		if (info.length<=0){

-			fail("no plugins in site: "+site.getURL().toExternalForm());

-		}

-		 

-		boolean found1 = false;

-		boolean found2 = false;

-		boolean found3 = false;

-		String name1= "plugins/org.eclipse.update.core.tests.bundleManifest_1.0.1.jar";

-		String name2 = "plugins/org.eclipse.update.core.tests.bundleAndPluginManifestsBUNDLEPARSED_1.0.3.jar";

-		String name3 = "plugins/org.eclipse.update.core.tests.bundleAndPluginManifests_1.0.3.jar";

-		

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

-			if (info[i].getPath().equals(name1)) found1 = true;

-			if (info[i].getPath().equals(name2)) found2 = true;

-			if (info[i].getPath().equals(name3)) found3 = true;

-		}

-		

-		if (!found1 || !found2){

-			fail("Cannot find plugin : org.eclipse.update.core.tests.feature1.plugin2 version 5.0.0 and 5.0.1 on the site, by parsing file system");

-		}

-		if (found3){

-			fail("Plugin manifest parsed instead of bundle manifest.");

-		}

-		

-

-	}

-	

-	

-	public void testCategories() throws Exception {

-

-		ISite site = SiteManager.getSite(SOURCE_FILE_SITE, null);

-		

-		ICategory category = new Category("category","Label of category");

-		

-		((SiteModel)site).addCategoryModel((CategoryModel)category);

-		

-		ICategory[] categories = site.getCategories();

-		boolean found = false;

-		for (int index = 0; index < categories.length; index++) {

-			ICategory element = categories[index];

-			if (element.getName().equals("category")) found = true;

-		}

-		if (!found) fail("cannot find category 'category' in site");

-

-		ISiteFeatureReference ref = new SiteFeatureReference();

-		ref.setSite(site);

-		ref.addCategory(category);		

-		categories = ref.getCategories();

-		found = false;

-		for (int index = 0; index < categories.length; index++) {

-			ICategory element = categories[index];

-			if (element.getName().equals("category")) found = true;

-		}

-		if (!found) fail("cannot find category 'category' in feature");

-		

-			}

-

-}

-

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestNestedFeatureAPI.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestNestedFeatureAPI.java
deleted file mode 100644
index 5cf3585..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestNestedFeatureAPI.java
+++ /dev/null
@@ -1,153 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.tests.api;
-import java.net.MalformedURLException;
-import java.net.URL;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.update.core.*;
-import org.eclipse.update.internal.core.UpdateManagerUtils;
-import org.eclipse.update.tests.UpdateManagerTestCase;
-
-public class TestNestedFeatureAPI extends UpdateManagerTestCase {
-
-	/**
-	 * Test the testFeatures()
-	 */
-	public TestNestedFeatureAPI(String arg0) {
-		super(arg0);
-	}
-
-	/**
-	 * the feature to test
-	 */
-	private IFeature getRootFeature() throws MalformedURLException, CoreException {
-		ISite site = SiteManager.getSite(new URL(SOURCE_FILE_SITE, "nestedFeatureSiteTest/site.xml"),null);
-		URL url = UpdateManagerUtils.getURL(site.getURL(), Site.DEFAULT_INSTALLED_FEATURE_PATH + "rootfeature.jar", null);
-		SiteFeatureReference ref = new SiteFeatureReference();
-		ref.setSite(site);
-		ref.setURL(url);
-		ref.setType(ISite.DEFAULT_PACKAGED_FEATURE_TYPE);
-		IFeature feature = ref.getFeature(null);
-		return feature;
-	}
-
-	/**
-	 * the feature to test
-	 */
-	private IFeature getChildFeature() throws MalformedURLException, CoreException {
-
-		ISite site = SiteManager.getSite(new URL(SOURCE_FILE_SITE, "nestedFeatureSiteTest/"), null);
-		URL url = UpdateManagerUtils.getURL(site.getURL(), Site.DEFAULT_INSTALLED_FEATURE_PATH + "org.eclipse.update.core.tests.childrenfeature_2.0.0.jar", null);
-		SiteFeatureReference ref = new SiteFeatureReference();
-		ref.setSite(site);
-		ref.setURL(url);
-		ref.setType(ISite.DEFAULT_PACKAGED_FEATURE_TYPE);
-		IFeature feature = ref.getFeature(null);
-		return feature;
-	}
-
-	/*
-	 * 
-	 */
-	public void testNested() throws Exception {
-
-		IFeature rootFeature = getRootFeature();
-		IFeatureReference[] ref = rootFeature.getIncludedFeatureReferences();
-		IFeature childFeature = getChildFeature();
-		assertEquals("Children feature are not equal", childFeature, ref[0].getFeature(null));
-	}
-
-	/**
-	 * the feature to test
-	 */
-	private IFeature getRootFeature2() throws MalformedURLException, CoreException {
-		ISite site = SiteManager.getSite(new URL(SOURCE_FILE_SITE, "nestedFeatureSiteTest2/site.xml"),null);
-		URL url = UpdateManagerUtils.getURL(site.getURL(), Site.DEFAULT_INSTALLED_FEATURE_PATH + "rootfeature.jar", null);
-		SiteFeatureReference ref = new SiteFeatureReference();
-		ref.setSite(site);
-		ref.setURL(url);
-		ref.setType(ISite.DEFAULT_PACKAGED_FEATURE_TYPE);
-		IFeature feature = ref.getFeature(null);
-		return feature;
-	}
-
-	/**
-	 * the feature to test
-	 */
-	private IFeature getChildFeature2() throws MalformedURLException, CoreException {
-
-		ISite site = SiteManager.getSite(new URL(SOURCE_FILE_SITE, "nestedFeatureSiteTest2/site.xml"),null);
-		URL url = UpdateManagerUtils.getURL(site.getURL(), Site.DEFAULT_INSTALLED_FEATURE_PATH + "childrenfeature.jar", null);
-		SiteFeatureReference ref = new SiteFeatureReference();
-		ref.setSite(site);
-		ref.setURL(url);
-		ref.setType(ISite.DEFAULT_PACKAGED_FEATURE_TYPE);
-		IFeature feature = ref.getFeature(null);
-		return feature;
-	}
-
-	/*
-	 * 
-	 */
-	public void testNested2() throws Exception {
-
-		IFeature rootFeature = getRootFeature2();
-		IFeatureReference[] ref = rootFeature.getIncludedFeatureReferences();
-		IFeature childFeature = getChildFeature2();
-		assertEquals("Children feature are not equal", childFeature, ref[0].getFeature(null));
-	}
-
-//	/**
-//	 * the feature to test
-//	 */
-//	private IFeature getRootFeature3() throws MalformedURLException, CoreException {
-//		ISite site = SiteManager.getSite(new URL(SOURCE_FILE_SITE, "nestedFeatureSiteTest3/site.xml"), null);
-//		URL url = UpdateManagerUtils.getURL(site.getURL(), Site.DEFAULT_INSTALLED_FEATURE_PATH + "rootfeature.jar", null);
-//		SiteFeatureReference ref = new SiteFeatureReference();
-//		ref.setSite(site);
-//		ref.setURL(url);
-//		ref.setType(ISite.DEFAULT_PACKAGED_FEATURE_TYPE);
-//		IFeature feature = ref.getFeature(null);
-//		return feature;
-//	}
-
-//	/**
-//	 * the feature to test
-//	 */
-//	private IFeature getChildFeature3() throws MalformedURLException, CoreException {
-//
-//		ISite site = SiteManager.getSite(new URL(SOURCE_FILE_SITE, "nestedFeatureSiteTest3/site.xml"));
-//		URL url = UpdateManagerUtils.getURL(site.getURL(), Site.DEFAULT_INSTALLED_FEATURE_PATH + "childrenfeature.jar", null);
-//		SiteFeatureReference ref = new SiteFeatureReference();
-//		ref.setSite(site);
-//		ref.setURL(url);
-//		ref.setType(ISite.DEFAULT_PACKAGED_FEATURE_TYPE);
-//		IFeature feature = ref.getFeature(null);
-//		return feature;
-//	}
-
-	/*
-	 * 
-	 */
-	/*	public void testNested3() throws Exception {
-	
-			IFeature rootFeature = getRootFeature3();
-			IFeatureReference[] ref = rootFeature.getIncludedFeatureReferences();
-			IFeature childFeature = getChildFeature3();
-			assertEquals(
-				"Children feature are not equal",
-				childFeature,
-				ref[0].getFeature());
-		}
-	*/
-
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestPluginContainerAPI.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestPluginContainerAPI.java
deleted file mode 100644
index 37e56f3..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestPluginContainerAPI.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.api;

-import java.net.MalformedURLException;

-import java.net.URL;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.update.core.*;

-import org.eclipse.update.internal.core.UpdateManagerUtils;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-public class TestPluginContainerAPI extends UpdateManagerTestCase {

-

-	private Site site;

-	private DefaultFeature feature;

-

-	/**

-	 * the Site to test

-	 */

-	private Site getSite() throws CoreException, MalformedURLException {

-		if (site == null) {

-

-			site = (Site)SiteManager.getSite(new URL(SOURCE_FILE_SITE,"testAPI/"), null);

-

-		}

-		return site;

-	}

-

-	/**

-	 * the feature to test

-	 */

-	private DefaultFeature getFeature() throws MalformedURLException, CoreException {

-		if (feature == null) {

-			ISite site = getSite();

-			URL id = UpdateManagerUtils.getURL(site.getURL(),"org.eclipse.update.core.feature1_1.0.0.jar",null);						

-			feature = new DefaultFeature(site);

-			feature.setURL(id);	

-		}

-		return feature;

-	}

-

-	/**

-	 * Test the getFeatures()

-	 */

-	public TestPluginContainerAPI(String arg0) throws CoreException {

-		super(arg0);

-	}

-

-	public void testAbstractFeature() throws CoreException, MalformedURLException {

-		PluginEntry pluginEntry = new PluginEntry();

-		pluginEntry.setVersionedIdentifier(new VersionedIdentifier("id", "6"));

-		Feature _feature = getFeature();

-		((DefaultFeature)_feature).addPluginEntry(pluginEntry);

-		assertEquals(_feature.getPluginEntryCount(), 1);

-		assertEquals(_feature.getPluginEntries()[0], pluginEntry);

-

-	}

-

-	public void testAbstactSite() throws CoreException, MalformedURLException {

-		PluginEntry pluginEntry = new PluginEntry();

-		pluginEntry.setVersionedIdentifier(new VersionedIdentifier("id", "6"));

-		Site _site = getSite();

-		_site.addPluginEntry(pluginEntry);

-		assertEquals(_site.getPluginEntryCount(), 1);

-		assertEquals(_site.getPluginEntries()[0], pluginEntry);

-

-	}

-

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestSiteAPI.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestSiteAPI.java
deleted file mode 100644
index c2362d4..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestSiteAPI.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.api;

-import java.io.File;

-import java.net.URL;

-

-import org.eclipse.update.core.ISite;

-import org.eclipse.update.core.SiteManager;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-public class TestSiteAPI extends UpdateManagerTestCase {

-	

-	/**

-	 * Test the getFeatures()

-	 */

-	public TestSiteAPI(String arg0) {

-		super(arg0);

-	}

-	

-	public void testURL() throws Exception {

-

-		ISite site = SiteManager.getSite(SOURCE_FILE_SITE, null);

-		assertEquals(new File(site.getURL().getFile()),new File(SOURCE_FILE_SITE.getFile()));

-		

-		ISite site2 = SiteManager.getSite(SOURCE_HTTP_SITE, null);

-		assertEquals(site2.getURL(),new URL("http", getHttpHost(),getHttpPort(), bundle.getString("HTTP_PATH_1")+"site.xml"));

-

-	}

-

-}

-

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestSiteManagerAPI.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestSiteManagerAPI.java
deleted file mode 100644
index 428c465..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestSiteManagerAPI.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.api;

-import java.io.File;

-import java.net.URL;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.update.core.*;

-import org.eclipse.update.configuration.*;

-import org.eclipse.update.internal.core.*;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-public class TestSiteManagerAPI extends UpdateManagerTestCase {

-	

-	/**

-	 * Test the getFeatures()

-	 */

-	public TestSiteManagerAPI(String arg0) {

-		super(arg0);

-	}

-	

-	public void testFile() throws Exception {

-		ISite fileSite = SiteManager.getSite(TARGET_FILE_SITE,null);

-		String site = fileSite.getURL().toExternalForm();		

-		assertEquals(TARGET_FILE_SITE.toExternalForm(), site);

-	}

-	

-	public void testUnknown() throws Exception {

-		URL url = new URL("ftp://255.255.255.255/");

-		try {

-		SiteManager.getSite(url,null);

-		fail("Connected to ftp://255.255.255.255/, should not happen");

-		} catch (CoreException e){

-			// expected

-		} catch (IllegalArgumentException e){

-			// expected as the version of the WebDav HTTP Connection returns so

-		}

-	}

-	

-	public void testLocalSite() throws Exception {

-		

-		ILocalSite site = SiteManager.getLocalSite();

-		IConfiguredSite[] instSites = site.getCurrentConfiguration().getConfiguredSites();

-		assertTrue(instSites.length>0);

-		System.out.println("Local Site:"+instSites[0].getSite().getURL().toExternalForm());

-		

-		ISite remoteSite = SiteManager.getSite(SOURCE_FILE_SITE_INSTALLED,null);

-		IFeature remoteFeature = remoteSite.getFeatureReferences()[0].getFeature(null);

-		remove(remoteFeature,instSites[0].getSite());		

-		instSites[0].getSite().install(remoteFeature,null,null);

-		

-		IFeatureReference[] features = site.getCurrentConfiguration().getConfiguredSites()[0].getSite().getFeatureReferences();

-		assertTrue(features.length>0);

-

-		//cleanup

-		assertNotNull(remoteFeature);		

-		File file = new File(instSites[0].getSite().getURL().getFile()+File.separator+Site.DEFAULT_INSTALLED_FEATURE_PATH+remoteFeature.getVersionedIdentifier());

-		UpdateManagerUtils.removeFromFileSystem(file);

-		file = new File(instSites[0].getSite().getURL().getFile()+File.separator+Site.DEFAULT_PLUGIN_PATH+"org.eclipse.update.plugin1_1.1.1");

-		UpdateManagerUtils.removeFromFileSystem(file);		

-		File localFile = new File(((SiteLocal)SiteManager.getLocalSite()).getLocationURL().getFile());

-		UpdateManagerUtils.removeFromFileSystem(localFile);	

-

-	}

-	

-

-}

-

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestUpdateManagerUtilsAPI.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestUpdateManagerUtilsAPI.java
deleted file mode 100644
index d82488e..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/api/TestUpdateManagerUtilsAPI.java
+++ /dev/null
@@ -1,229 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.api;

-import java.net.URL;

-

-import org.eclipse.update.internal.core.UpdateManagerUtils;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-public class TestUpdateManagerUtilsAPI extends UpdateManagerTestCase {

-	

-	/**

-	 * Test the getFeatures()

-	 */

-	public TestUpdateManagerUtilsAPI(String arg0) {

-		super(arg0);

-	}

-	

-	public void testgetURL() throws Exception {

-		URL url1 = new URL("http://www.eclipse.org");

-		URL url2 = new URL("file://c:/hello");

-		URL url3 = new URL("file:/home/eclipse/");

-		URL url4 = new URL("ftp:/host:8080/path/");

-		URL url5 = new URL("jar:file:/tmp/100100!/");

-		

-		String default1 = "default1/default";

-		String default2 = "/default2/";

-		

-		String str1 = "http://dev.eclipse.org";

-		String str2 = "relative1/path/";

-		String str3 = "/relative2/path";

-		

-		String result1=null;

-		String result2=null;

-		

-		//****************************************************************************************

-		// 1.0

-		result1 = UpdateManagerUtils.getURL(url1,str1,default1).toExternalForm();

-		 result2 = "http://dev.eclipse.org";

-		assertEquals("1.0",result2,result1);

-		

-		// 1.1

-		 result1 = UpdateManagerUtils.getURL(null,str1,null).toExternalForm();

-		 result2 = "http://dev.eclipse.org";

-		assertEquals("1.1",result2,result1);

-		

-		// 1.2

-		 result1 = UpdateManagerUtils.getURL(url1,str1,null).toExternalForm();

-		 result2 = "http://dev.eclipse.org";

-		assertEquals("1.2",result2,result1);

-		

-		// 1.3

-		 result1 = UpdateManagerUtils.getURL(url1,str2,default1).toExternalForm();

-		 result2 = "http://www.eclipse.org/relative1/path/";

-		assertEquals("1.3",result2,result1);

-		

-		// 1.4

-		 result1 = UpdateManagerUtils.getURL(url1,str3,default1).toExternalForm();

-		 result2 = "http://www.eclipse.org/relative2/path";

-		assertEquals("1.4",result2,result1);

-		

-		// 1.5

-		 result1 = UpdateManagerUtils.getURL(url1,null,default1).toExternalForm();

-		 result2 = "http://www.eclipse.org/default1/default";

-		assertEquals("1.5",result2,result1);

-		

-		// 1.6

-		 result1 = UpdateManagerUtils.getURL(url1,null,default2).toExternalForm();

-		 result2 = "http://www.eclipse.org/default2/";

-		assertEquals("1.6",result2,result1);

-		

-		//****************************************************************************************

-		// 2.0

-		 result1 = UpdateManagerUtils.getURL(url2,str1,default1).toExternalForm();

-		 result2 = "http://dev.eclipse.org";

-		assertEquals("2.0",result2,result1);

-		

-		// 2.1

-		 result1 = UpdateManagerUtils.getURL(null,str1,null).toExternalForm();

-		 result2 = "http://dev.eclipse.org";

-		assertEquals("2.1",result2,result1);

-		

-		// 2.2

-		 result1 = UpdateManagerUtils.getURL(url2,str1,null).toExternalForm();

-		 result2 = "http://dev.eclipse.org";

-		assertEquals("2.2",result2,result1);

-		

-		// 2.3

-		 result1 = UpdateManagerUtils.getURL(url2,str2,default1).toExternalForm();

-		 result2 = "file://c:/relative1/path/";

-		assertEquals("2.3",result2,result1);

-		

-		// 2.4

-		 result1 = UpdateManagerUtils.getURL(url2,str3,default1).toExternalForm();

-		 result2 = "file://c:/relative2/path";

-		assertEquals("2.4",result2,result1);

-		

-		// 2.5

-		 result1 = UpdateManagerUtils.getURL(url2,null,default1).toExternalForm();

-		 result2 = "file://c:/default1/default";

-		assertEquals("2.5",result2,result1);

-		

-		// 2.6

-		 result1 = UpdateManagerUtils.getURL(url2,null,default2).toExternalForm();

-		 result2 = "file://c:/default2/";

-		assertEquals("2.6",result2,result1);

-		

-

-		//****************************************************************************************

-		// 3.0

-		 result1 = UpdateManagerUtils.getURL(url3,str1,default1).toExternalForm();

-		 result2 = "http://dev.eclipse.org";

-		assertEquals("3.0",result2,result1);

-		

-		// 3.1

-		 result1 = UpdateManagerUtils.getURL(null,str1,null).toExternalForm();

-		 result2 = "http://dev.eclipse.org";

-		assertEquals("3.1",result2,result1);

-		

-		// 3.2

-		 result1 = UpdateManagerUtils.getURL(url3,str1,null).toExternalForm();

-		 result2 = "http://dev.eclipse.org";

-		assertEquals("3.2",result2,result1);

-		

-		// 3.3

-		 result1 = UpdateManagerUtils.getURL(url3,str2,default1).toExternalForm();

-		 result2 = "file:/home/eclipse/relative1/path/";

-		assertEquals("3.3",result2,result1);

-		

-		// 3.4

-		 result1 = UpdateManagerUtils.getURL(url3,str3,default1).toExternalForm();

-		 result2 = "file:/home/eclipse/relative2/path";

-		assertEquals("3.4",result2,result1);

-		

-		// 3.5

-		 result1 = UpdateManagerUtils.getURL(url3,null,default1).toExternalForm();

-		 result2 = "file:/home/eclipse/default1/default";

-		assertEquals("3.5",result2,result1);

-		

-		// 3.6

-		 result1 = UpdateManagerUtils.getURL(url3,null,default2).toExternalForm();

-		 result2 = "file:/home/eclipse/default2/";

-		assertEquals("3.6",result2,result1);

-				

-		//****************************************************************************************

-		// 4.0

-		 result1 = UpdateManagerUtils.getURL(url4,str1,default1).toExternalForm();

-		 result2 = "http://dev.eclipse.org";

-		assertEquals("4.0",result2,result1);

-		

-		// 4.1

-		 result1 = UpdateManagerUtils.getURL(null,str1,null).toExternalForm();

-		 result2 = "http://dev.eclipse.org";

-		assertEquals("4.1",result2,result1);

-		

-		// 4.2

-		 result1 = UpdateManagerUtils.getURL(url4,str1,null).toExternalForm();

-		 result2 = "http://dev.eclipse.org";

-		assertEquals("4.2",result2,result1);

-		

-		// 4.3

-		 result1 = UpdateManagerUtils.getURL(url4,str2,default1).toExternalForm();

-		 result2 = "ftp:/host:8080/path/relative1/path/";

-		assertEquals("4.3",result2,result1);

-		

-		// 4.4

-		 result1 = UpdateManagerUtils.getURL(url4,str3,default1).toExternalForm();

-		 result2 = "ftp:/host:8080/path/relative2/path";

-		assertEquals("4.4",result2,result1);

-		

-		// 4.5

-		 result1 = UpdateManagerUtils.getURL(url4,null,default1).toExternalForm();

-		 result2 = "ftp:/host:8080/path/default1/default";

-		assertEquals("4.5",result2,result1);

-		

-		// 4.6

-		 result1 = UpdateManagerUtils.getURL(url4,null,default2).toExternalForm();

-		 result2 = "ftp:/host:8080/path/default2/";

-		assertEquals("4.6",result2,result1);

-		

-		//****************************************************************************************

-		// 5.0

-		 result1 = UpdateManagerUtils.getURL(url5,str1,default1).toExternalForm();

-		 result2 = "http://dev.eclipse.org";

-		assertEquals("5.0",result2,result1);

-		

-		// 5.1

-		 result1 = UpdateManagerUtils.getURL(null,str1,null).toExternalForm();

-		 result2 = "http://dev.eclipse.org";

-		assertEquals("5.1",result2,result1);

-		

-		// 5.2

-		 result1 = UpdateManagerUtils.getURL(url5,str1,null).toExternalForm();

-		 result2 = "http://dev.eclipse.org";

-		assertEquals("5.2",result2,result1);

-		

-		// 5.3

-		 result1 = UpdateManagerUtils.getURL(url5,str2,default1).toExternalForm();

-		 result2 = "jar:file:/tmp/100100!/relative1/path/";

-		assertEquals("5.3",result2,result1);

-		

-		// 5.4

-		 result1 = UpdateManagerUtils.getURL(url5,str3,default1).toExternalForm();

-		 result2 = "jar:file:/tmp/100100!/relative2/path";

-		assertEquals("5.4",result2,result1);

-		

-		// 5.5

-		 result1 = UpdateManagerUtils.getURL(url5,null,default1).toExternalForm();

-		 result2 = "jar:file:/tmp/100100!/default1/default";

-		assertEquals("5.5",result2,result1);

-		

-		// 5.6

-		 result1 = UpdateManagerUtils.getURL(url5,null,default2).toExternalForm();

-		 result2 = "jar:file:/tmp/100100!/default2/";

-		assertEquals("5.6",result2,result1);				

-

-	}

-	

-	

-

-}

-

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/branding/AllBrandingTests.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/branding/AllBrandingTests.java
deleted file mode 100644
index 197f60b..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/branding/AllBrandingTests.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.tests.branding;
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.update.tests.UpdateManagerTestCase;
-
-/**
- * Manages the API tests
- */
-public class AllBrandingTests extends UpdateManagerTestCase {
-	/**
-	 * Constructor
-	 */
-	public AllBrandingTests(String name) {
-		super(name);
-	}
-	
-	/**
-	 * List of API tests
-	 */
-	public static Test suite() throws Exception {
-		TestSuite suite = new TestSuite();
-		suite.setName("Branding Tests");
-
-		suite.addTest(new TestSuite(BundleProviderTest.class));	
-		suite.addTest(new TestSuite(ProductTest.class));	
-
-		return suite;
-	}
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/branding/BundleProviderTest.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/branding/BundleProviderTest.java
deleted file mode 100644
index f9b2765..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/branding/BundleProviderTest.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.tests.branding;
-
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.update.internal.configurator.branding.*;
-import org.eclipse.update.tests.UpdateManagerTestCase;
-import org.osgi.framework.*;
-
-public class BundleProviderTest extends UpdateManagerTestCase {
-
-	public BundleProviderTest(String testcase){
-		super(testcase);
-	}
-
-	public void testMain() throws Exception {
-		
-		IBundleGroupProvider[] bundleGroupProviders = Platform.getBundleGroupProviders();
-		for (int i=0; i<bundleGroupProviders.length; i++) {
-			System.out.println("BundleGroupProvider:"+bundleGroupProviders[i].getName());
-			IBundleGroup[] bundleGroups = bundleGroupProviders[i].getBundleGroups();
-			for (int j=0; j<bundleGroups.length; j++) {
-				System.out.println("BundleGroup name:"+bundleGroups[j].getName() +"\n" +
-						"description:" + bundleGroups[j].getDescription() + "\n"+
-						"id:" + bundleGroups[j].getIdentifier() + "\n" +
-						"provider:" + bundleGroups[j].getProviderName() + "\n" +
-						"version:" + bundleGroups[j].getVersion() + "\n" +
-						"license:" + bundleGroups[j].getProperty(IBundleGroupConstants.LICENSE_HREF) + "\n" +
-						"featureImage:" + bundleGroups[j].getProperty(IBundleGroupConstants.FEATURE_IMAGE) + "\n" +
-						"tips and tricks:" + bundleGroups[j].getProperty(IBundleGroupConstants.TIPS_AND_TRICKS_HREF) + "\n" +
-						"welcomePage:" + bundleGroups[j].getProperty(IBundleGroupConstants.WELCOME_PAGE) + "\n" +
-						"welcomePerspective:" + bundleGroups[j].getProperty(IBundleGroupConstants.WELCOME_PERSPECTIVE));
-				System.out.println("bundles:");
-				Bundle[] bundles = bundleGroups[j].getBundles();
-				for (int b=0; b<bundles.length; b++)
-					System.out.println(bundles[b].getSymbolicName());
-				System.out.println();
-			}
-		}
-	}
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/branding/ProductTest.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/branding/ProductTest.java
deleted file mode 100644
index 9b068c1..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/branding/ProductTest.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.tests.branding;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.update.internal.configurator.branding.*;
-import org.eclipse.update.tests.*;
-
-public class ProductTest extends UpdateManagerTestCase {
-
-	public ProductTest(String testcase){
-		super(testcase);
-	}
-
-	public void testMain() throws Exception {
-		
-		IProduct product = Platform.getProduct();
-		if (product == null)
-			System.out.println("No product defined");
-		else
-			System.out.println("Product is: \n" +
-					"name=" + product.getName() + "\n" +
-					"application=" + product.getApplication() + "\n" +
-					"description=" + product.getDescription() + "\n" +
-					"id="+ product.getId() + "\n" +
-					"about_text:"+product.getProperty(IProductConstants.ABOUT_TEXT) +"\n" +
-					"about_image:"+product.getProperty(IProductConstants.ABOUT_IMAGE) +"\n" +
-					"app_name:"+product.getProperty(IProductConstants.APP_NAME) +"\n" +
-					"window_image:"+product.getProperty(IProductConstants.WINDOW_IMAGE) +"\n" +
-					"window_images:"+product.getProperty(IProductConstants.WINDOW_IMAGES) );
-				
-	}
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/configurations/AllConfigurationsTests.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/configurations/AllConfigurationsTests.java
deleted file mode 100644
index bd8748e..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/configurations/AllConfigurationsTests.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.configurations;

-

-import org.eclipse.update.tests.UpdateManagerTestCase;

-import junit.framework.*;

-

-

-public class AllConfigurationsTests extends UpdateManagerTestCase {

-public AllConfigurationsTests(String name) {

-	super(name);

-}

-public static Test suite() {

-	TestSuite suite = new TestSuite();

-	suite.setName("Regular Install Tests");

-	

-//	suite.addTest(new TestSuite(TestRevert.class));

-	suite.addTest(new TestSuite(TestBackward.class));

-		

-	return suite;

-}

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/configurations/TestBackward.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/configurations/TestBackward.java
deleted file mode 100644
index 052d474..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/configurations/TestBackward.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.configurations;

-import java.io.File;

-

-

-import org.eclipse.update.configuration.*;

-import org.eclipse.update.core.*;

-import org.eclipse.update.internal.core.*;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-public class TestBackward extends UpdateManagerTestCase {

-	

-	/**

-	 * Test the getFeatures()

-	 */

-	public TestBackward(String arg0) {

-		super(arg0);

-	}

-	

-	public void testSimpleBackward() throws Exception {

-

-		// cleanup

-		SiteLocal siteLocal = ((SiteLocal)SiteManager.getLocalSite());

-		File localFile = new File(((SiteLocal)SiteManager.getLocalSite()).getLocationURL().getFile());

-		InternalSiteManager.localSite=null;		

-

-		ILocalSite site = SiteManager.getLocalSite();

-		ISite remoteSite = SiteManager.getSite(SOURCE_HTTP_SITE,null);

-		IFeatureReference featureRef = remoteSite.getFeatureReferences()[0];

-		

-		IInstallConfiguration oldInstallConfig = site.getCurrentConfiguration();

-		IConfiguredSite oldConfigSite = oldInstallConfig.getConfiguredSites()[0];

-		

-		((ConfiguredSite)oldConfigSite).setUpdatable(true);	

-		assertNotNull("Reference is null",featureRef);

-		remove(featureRef.getFeature(null),oldConfigSite);	

-		oldConfigSite.install(featureRef.getFeature(null),null,null);

-		site.save();

-	

-		

-		// Activity -> InstallConfig

-		IInstallConfiguration current = site.getCurrentConfiguration();

-//		IActivity activity = current.getActivities()[0];	

-//		assertTrue(activity.getInstallConfiguration().equals(current));

-		

-		// ConfigSite->InstallConfig

-		IConfiguredSite newConfigSite = current.getConfiguredSites()[0];

-		assertTrue(newConfigSite.getInstallConfiguration().equals(current));

-		

-		// cleanup

-		localFile = new File(((SiteLocal)SiteManager.getLocalSite()).getLocationURL().getFile());

-		UpdateManagerUtils.removeFromFileSystem(localFile);			

-	}

-

-}

-

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/configurations/TestRevert.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/configurations/TestRevert.java
deleted file mode 100644
index 88b855a..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/configurations/TestRevert.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.configurations;

-import java.io.File;

-import java.net.URL;

-

-import org.eclipse.update.configuration.*;

-import org.eclipse.update.configurator.*;

-import org.eclipse.update.core.*;

-import org.eclipse.update.internal.core.*;

-import org.eclipse.update.internal.model.ConfigurationPolicyModel;

-import org.eclipse.update.internal.model.ConfiguredSiteModel;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-public class TestRevert extends UpdateManagerTestCase {

-	

-	/**

-	 * Test the getFeatures()

-	 */

-	public TestRevert(String arg0) {

-		super(arg0);

-	}

-	

-	public void testSimpleRevertInstall() throws Exception {

-

-		// cleanup

-		SiteLocal siteLocal = ((SiteLocal)SiteManager.getLocalSite());

-		File localFile = new File(siteLocal.getLocationURL().getFile());

-		UpdateManagerUtils.removeFromFileSystem(localFile);		

-		InternalSiteManager.localSite=null;		

-

-		ILocalSite site = SiteManager.getLocalSite();

-		ISite remoteSite = SiteManager.getSite(SOURCE_HTTP_SITE,null);

-		IFeatureReference featureRef = remoteSite.getFeatureReferences()[0];

-		IFeatureReference featureRef2 = remoteSite.getFeatureReferences()[1];

-		IFeature feature = featureRef.getFeature(null);

-		

-		// old config, no features installed

-		IInstallConfiguration old = site.getCurrentConfiguration();

-		ConfigurationPolicy excludepolicy = new ConfigurationPolicy();

-		excludepolicy.setPolicy(IPlatformConfiguration.ISitePolicy.USER_EXCLUDE);

-		IConfiguredSite oldConfigSite = old.getConfiguredSites()[0];

-		excludepolicy.setConfiguredSiteModel((ConfiguredSiteModel)oldConfigSite);		

-		((ConfiguredSiteModel)oldConfigSite).setConfigurationPolicyModel((ConfigurationPolicyModel)excludepolicy);

-		

-		// install one feature

-		IInstallConfiguration newConfig = site.cloneCurrentConfiguration();

-		IConfiguredSite configSite = newConfig.getConfiguredSites()[0];

-		if (!configSite.getSite().equals(oldConfigSite.getSite())) fail("Config sites are not equals");

-		site.addConfiguration(newConfig);	

-		

-		((ConfiguredSite)configSite).setUpdatable(true);			

-		IFeatureReference installedFeature = configSite.install(feature,null,null);

-		site.save();

-

-		// unconfigure it

-		configSite.unconfigure(installedFeature.getFeature(null));

-

-		// install another feature

-		IFeature feature2 = featureRef2.getFeature(null);

-		IInstallConfiguration newConfig2 = site.cloneCurrentConfiguration();

-		IConfiguredSite anotherConfigSite = newConfig2.getConfiguredSites()[0];

-		if (!anotherConfigSite.getSite().equals(oldConfigSite.getSite())) fail("Config sites are not equals");		

-		site.addConfiguration(newConfig2);		

-		anotherConfigSite.install(feature2,null,null);

-		site.save();

-

-		// revert to old state where no feature where configured

-		site.revertTo(old,null,null);

-		site.save();

-		

-		// check

-		String time = ""+site.getCurrentConfiguration().getCreationDate().getTime();

-		File file = new File(((SiteLocal)SiteManager.getLocalSite()).getLocationURL().getFile());

-		assertTrue("new configuration does not exist", file.exists());

-		

-		

-		//find configured site

-		IConfiguredSite newConfigSite = null;

-		IConfiguredSite[] sites = site.getCurrentConfiguration().getConfiguredSites();

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

-			if (sites[i].getSite().equals(oldConfigSite.getSite())){

-				 newConfigSite = sites[i];

-				 break;

-			}

-		}

-		if (newConfigSite==null) fail("Cannot find configuration site");

-

-		int oldNumber = oldConfigSite.getConfiguredFeatures().length;

-		int newNumber = newConfigSite.getConfiguredFeatures().length;

-		

-		//

-		IFeatureReference[] configFeatures = newConfigSite.getConfiguredFeatures();

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

-			System.out.println(configFeatures[i]);

-		}		

-		assertTrue("Wrong number of configured features old:"+oldNumber+" new:"+newNumber,oldNumber==newNumber);

-		

-		// test only 2 install config in local site

-		int newNumberUnconfiguredFeatures = ((ConfiguredSite)newConfigSite).getConfigurationPolicy().getUnconfiguredFeatures().length;

-		int oldNumberUnconfiguredFeatures = ((ConfiguredSite)oldConfigSite).getConfigurationPolicy().getUnconfiguredFeatures().length;		

-		assertEquals("wrong number of unconfigured features",oldNumberUnconfiguredFeatures+2,newNumberUnconfiguredFeatures);

-		

-		// cleanup

-		localFile = new File(siteLocal.getLocationURL().getFile());;

-		UpdateManagerUtils.removeFromFileSystem(localFile);		

-		localFile = new File(((SiteLocal)SiteManager.getLocalSite()).getLocationURL().getFile());

-		UpdateManagerUtils.removeFromFileSystem(localFile);				

-		UpdateManagerUtils.removeFromFileSystem(file);	

-		time = ""+newConfig.getCreationDate().getTime();

-		file = new File(new URL(((SiteLocal)SiteManager.getLocalSite()).getLocationURL(),"DefaultConfig"+time+".xml").getFile());	

-		UpdateManagerUtils.removeFromFileSystem(file);	

-		time = ""+newConfig2.getCreationDate().getTime();

-		file = new File(new URL(((SiteLocal)SiteManager.getLocalSite()).getLocationURL(),"DefaultConfig"+time+".xml").getFile());	

-		UpdateManagerUtils.removeFromFileSystem(file);	

-	}

-

-}

-

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/core/boot/AllPlatformConfigurationTests.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/core/boot/AllPlatformConfigurationTests.java
deleted file mode 100644
index fc1fef9..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/core/boot/AllPlatformConfigurationTests.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.core.boot;

-

-import junit.framework.Test;

-import junit.framework.TestSuite;

-

-public class AllPlatformConfigurationTests

-	extends PlatformConfigurationTestCase {

-	/**

-	 * Constructor

-	 */

-	public AllPlatformConfigurationTests(String name) {

-		super(name);

-	}

-	

-	/**

-	 * List of API tests

-	 */

-	public static Test suite() throws Exception {

-		TestSuite suite = new TestSuite();

-		suite.setName("PlatformConfiguration Tests");

-

-		suite.addTest(new TestSuite(TestPlatCfgAPI.class));

-

-		return suite;

-	}

-

-}

-

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/core/boot/PlatformConfigurationTestCase.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/core/boot/PlatformConfigurationTestCase.java
deleted file mode 100644
index c9fa01e..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/core/boot/PlatformConfigurationTestCase.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.core.boot;

-

-import java.io.File;

-import java.util.Date;

-

-import junit.framework.TestCase;

-

-public class PlatformConfigurationTestCase extends TestCase {

-	

-	protected String tempDir;

-	

-	public PlatformConfigurationTestCase(String name) {

-		super(name);

-		try {

-			init();

-		} catch (Exception e) {

-			fail(e.toString());

-			e.printStackTrace();

-		}

-	}

-	

-	protected void init() {

-	}

-	

-	protected void setUp() {

-		// get new temp directory for testcase

-		String root = getTempDirectoryName();

-		setupDirectory(root);

-		tempDir = root;

-	}

-	

-	protected void tearDown() {

-		// cleanup testcase temp directory

-		if (tempDir != null)

-			cleanupDirectory(tempDir);

-	}

-	

-	protected String getTempDirectoryName() {

-		String tmp = System.getProperty("java.io.tmpdir");

-		if (!tmp.endsWith(File.separator))

-			tmp += File.separator;

-		return tmp+"eclipse"+File.separator+(new Date().getTime()+File.separator);

-	}

-	

-	protected void setupDirectory(String name) {

-		File dir = new File(name);

-		dir.mkdirs();

-	}

-	

-	protected void cleanupDirectory(String name) {

-		File dir = new File(name);

-		deleteDirectory(dir);

-	}

-	

-	private void deleteDirectory(File dir) {

-		File[] list = dir.listFiles();

-		if (list == null)

-			return;

-			

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

-			if (list[i].isDirectory()) 

-				deleteDirectory(list[i]);

-			if (!list[i].delete())

-				System.out.println("Unable to delete "+list[i].toString());

-		}

-	}

-}

-

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/core/boot/TestPlatCfgAPI.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/core/boot/TestPlatCfgAPI.java
deleted file mode 100644
index d7b8d1f..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/core/boot/TestPlatCfgAPI.java
+++ /dev/null
@@ -1,209 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.core.boot;

-

-import java.io.IOException;

-import java.net.MalformedURLException;

-import java.net.URL;

-

-import junit.framework.Assert;

-import org.eclipse.update.configurator.*;

-import org.eclipse.update.configurator.IPlatformConfiguration.*;

-

-public class TestPlatCfgAPI extends PlatformConfigurationTestCase {

-			

-	public TestPlatCfgAPI(String arg0) {

-		super(arg0);

-	}

-	

-	public void testBasic() throws Exception {

-		

-		// get new config object

-		IPlatformConfiguration cfig = null;

-		try {

-			cfig = ConfiguratorUtils.getPlatformConfiguration(null);

-		} catch (IOException e) {

-			Assert.fail("0.0.0 "+e.toString());

-		}

-		ISiteEntry[] dflt = cfig.getConfiguredSites();

-		Assert.assertEquals("0.0.1",dflt.length,0);

-		

-		// policy tests

-		ISitePolicy p1 = cfig.createSitePolicy(ISitePolicy.USER_INCLUDE, null);

-		Assert.assertEquals("1.0.0",p1.getType(),ISitePolicy.USER_INCLUDE);

-		Assert.assertEquals("1.0.1",p1.getList().length,0);

-		p1.setList(new String[] {"first"});

-		Assert.assertEquals("1.0.2",p1.getList().length,1);

-		Assert.assertEquals("1.0.3",p1.getList()[0],"first");

-		

-		ISitePolicy p2 = cfig.createSitePolicy(ISitePolicy.USER_EXCLUDE, new String[0]);

-		Assert.assertEquals("1.1.0",p2.getType(),ISitePolicy.USER_EXCLUDE);

-		Assert.assertEquals("1.1.1",p2.getList().length,0);

-		p2.setList(new String[] {"first", "second"});

-		Assert.assertEquals("1.1.2",p2.getList().length,2);

-		Assert.assertEquals("1.1.3",p2.getList()[1],"second");

-		

-		// create some urls

-		URL u1 = null;

-		URL u2 = null;

-

-		URL u4 = null;

-		try {

-			u1 = new URL("file:/d:/temp_test_dummy");

-//			u2 = new URL("file://localhost/temp");

-			new URL("http://some.server/temp/");

-			u4 = new URL("http://bad.url");

-		} catch (MalformedURLException e) {

-			Assert.fail("2.0.0 unable to create URL "+e);

-		}

-				

-		// site creation tests

-		ISiteEntry s1 = cfig.createSiteEntry(u1,p2);

-		Assert.assertEquals("3.0.0",s1.getURL(),u1);

-		Assert.assertEquals("3.0.1",s1.getSitePolicy(),p2);

-		s1.setSitePolicy(p1);

-		Assert.assertEquals("3.0.2",s1.getSitePolicy(),p1);

-		

-//		ISiteEntry s2 = cfig.createSiteEntry(u2,p1);

-//		Assert.assertEquals("3.1.0",s2.getURL(),u2);

-//		Assert.assertEquals("3.1.1",s2.getSitePolicy(),p1);

-//		s2.setSitePolicy(p2);

-//		Assert.assertEquals("3.1.2",s2.getSitePolicy(),p2);

-		

-		// configure site tests

-		Assert.assertEquals("3.3.0",cfig.getConfiguredSites().length,0);

-		cfig.configureSite(s1);

-		Assert.assertEquals("3.3.1",cfig.getConfiguredSites().length,1);

-//		cfig.configureSite(s2);

-//		Assert.assertEquals("3.3.2",cfig.getConfiguredSites().length,2);

-//		

-		// lookup site tests

-		Assert.assertEquals("3.4.0",cfig.findConfiguredSite(u1),s1);

-//		Assert.assertEquals("3.4.1",cfig.findConfiguredSite(u2),s2);

-		Assert.assertNull("3.4.3",cfig.findConfiguredSite(u4));

-		

-		// unconfigure site tests

-		cfig.unconfigureSite(s1);

-		Assert.assertEquals("3.5.0",cfig.getConfiguredSites().length,0);

-		Assert.assertNull("3.5.1",cfig.findConfiguredSite(u1));		

-//		cfig.unconfigureSite(s2);

-//		Assert.assertEquals("3.5.2",cfig.getConfiguredSites().length,0);

-//		Assert.assertNull("3.5.3",cfig.findConfiguredSite(u2));	

-	}

-	

-	public void testSaveRestore() throws Exception {

-				

-		Assert.assertNotNull("0.0 Unable to obtain temp directory",tempDir);

-		

-		// get new config object

-		IPlatformConfiguration cfig = null;

-		try {

-			cfig = ConfiguratorUtils.getPlatformConfiguration(null);

-		} catch (IOException e) {

-			Assert.fail("0.0.0 "+e.toString());

-		}

-		ISiteEntry[] sites = cfig.getConfiguredSites();

-		Assert.assertEquals("0.0.1",sites.length,0);

-				

-		// create policies

-		ISitePolicy p1 = cfig.createSitePolicy(ISitePolicy.USER_INCLUDE, null);

-		ISitePolicy p2 = cfig.createSitePolicy(ISitePolicy.USER_EXCLUDE, new String[0]);		

-		ISitePolicy p3 = cfig.createSitePolicy(ISitePolicy.USER_INCLUDE, new String[] {"first"});

-		ISitePolicy p4 = cfig.createSitePolicy(ISitePolicy.USER_EXCLUDE, new String[] {"first", "second"});

-						

-		// create some urls

-		URL u1 = null;

-		URL u2 = null;

-		URL u3 = null;

-		URL u4 = null;

-

-		try {

-			u1 = new URL("file:d:/temp/");

-			u2 = new URL("file://localhost/temp/");

-			u3 = new URL("http://some.server/temp/");

-			u4 = new URL("http://another.server/temp/");

-			new URL("http://one.more.server/temp/");

-		} catch (MalformedURLException e) {

-			Assert.fail("1.0 unable to create URL "+e);

-		}

-		

-		// create and configure sites

-		ISiteEntry s1 = cfig.createSiteEntry(u1,p1);

-		cfig.configureSite(s1);

-		ISiteEntry s2 = cfig.createSiteEntry(u2,p2);

-		cfig.configureSite(s2);

-		ISiteEntry s3 = cfig.createSiteEntry(u3,p3);

-		cfig.configureSite(s3);

-		ISiteEntry s4 = cfig.createSiteEntry(u4,p4);

-		cfig.configureSite(s4);

-		sites = cfig.getConfiguredSites();

-		Assert.assertEquals("1.1",sites.length,4);

-		

-		// do save

-		try {

-			cfig.save();

-			Assert.fail("2.0 was expecting IOException");

-		} catch (IOException e) {

-		}

-		

-		URL cfigURL = null;

-		try {

-			cfigURL = new URL("file:"+tempDir+ "platform.xml");

-		} catch(MalformedURLException e) {

-			Assert.fail("2.1 unable to create URL "+e);

-		}

-		

-		try {

-			cfig.save(cfigURL);

-		} catch (IOException e) {

-			Assert.fail("2.2 "+e);

-		}

-		

-		// reload configuration	

-		try {

-			ConfiguratorUtils.getPlatformConfiguration(cfigURL);

-		} catch (IOException e) {

-			Assert.fail("2.3 "+e.toString());

-		}

-		ISiteEntry[] newSites = cfig.getConfiguredSites();

-		Assert.assertEquals("2.4",newSites.length,4);

-		

-		// check what we've got

-		Assert.assertEquals("3.0.1",sites[0].getURL(),newSites[0].getURL());

-		Assert.assertEquals("3.0.2",sites[0].getSitePolicy().getType(),newSites[0].getSitePolicy().getType());

-		Assert.assertEquals("3.0.3",sites[0].getSitePolicy().getList(),newSites[0].getSitePolicy().getList());

-		

-		Assert.assertEquals("3.1.1",sites[1].getURL(),newSites[1].getURL());

-		Assert.assertEquals("3.1.2",sites[1].getSitePolicy().getType(),newSites[1].getSitePolicy().getType());

-		Assert.assertEquals("3.1.3",sites[1].getSitePolicy().getList(),newSites[1].getSitePolicy().getList());

-		

-		Assert.assertEquals("3.2.1",sites[2].getURL(),newSites[2].getURL());

-		Assert.assertEquals("3.2.2",sites[2].getSitePolicy().getType(),newSites[2].getSitePolicy().getType());

-		Assert.assertEquals("3.2.3",sites[2].getSitePolicy().getList(),newSites[2].getSitePolicy().getList());

-		

-		Assert.assertEquals("3.3.1",sites[3].getURL(),newSites[3].getURL());

-		Assert.assertEquals("3.3.2",sites[3].getSitePolicy().getType(),newSites[3].getSitePolicy().getType());

-		Assert.assertEquals("3.3.3",sites[3].getSitePolicy().getList(),newSites[3].getSitePolicy().getList());

-		

-	}

-	

-	public void testCurrentConfiguration() throws Exception {

-				

-		Assert.assertNotNull("0.0 Unable to obtain temp directory",tempDir);

-		

-		// get new config object

-		IPlatformConfiguration cfig = null;

-		cfig = ConfiguratorUtils.getCurrentPlatformConfiguration();

-		cfig.getPluginPath();

-		cfig.save();

-	}

-}

-

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/core/boot/TestPlatCfgDefault.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/core/boot/TestPlatCfgDefault.java
deleted file mode 100644
index 0a3710a..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/core/boot/TestPlatCfgDefault.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.core.boot;

-

-import org.eclipse.update.configurator.*;

-

-

-public class TestPlatCfgDefault

-	extends PlatformConfigurationTestCase {

-		

-	public TestPlatCfgDefault(String arg0) {

-		super(arg0);

-	}

-	

-	public void testInitial() throws Exception {

-		IPlatformConfiguration cfig = null;

-		cfig = ConfiguratorUtils.getCurrentPlatformConfiguration();

-		IPlatformConfiguration.ISiteEntry se = cfig.getConfiguredSites()[0];

-		IPlatformConfiguration.ISitePolicy sp = cfig.createSitePolicy(IPlatformConfiguration.ISitePolicy.USER_EXCLUDE, new String[] {"1", "2","3","4","5","6","7","8","9","10","11","12"});

-		se.setSitePolicy(sp);

-		cfig.save();

-		System.out.println("done ...");

-	}

-}

-

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/implementation/SiteFTP.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/implementation/SiteFTP.java
deleted file mode 100644
index a49d320..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/implementation/SiteFTP.java
+++ /dev/null
@@ -1,272 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.implementation;

-

-import java.io.InputStream;

-import java.net.URL;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.core.runtime.IProgressMonitor;

-import org.eclipse.update.configuration.*;

-import org.eclipse.update.core.*;

-import org.eclipse.update.core.IFeature;

-import org.eclipse.update.core.IFeatureReference;

-import org.eclipse.update.core.IPluginEntry;

-import org.eclipse.update.core.IURLEntry;

-import org.eclipse.update.core.model.InstallAbortedException;

-import org.eclipse.update.internal.core.*;

-

-public class SiteFTP implements ISite {

-

-	private URL url;

-	public SiteFTP(URL url){

-		this.url = url;

-	}

-

-	/*

-	 * @see ISite#getFeatureReferences()

-	 */

-	public ISiteFeatureReference[] getFeatureReferences() {

-		return null;

-	}

-

-	/*

-	 * @see ISite#install(IFeature, FeatureVerification verifier,IProgressMonitor)

-	 */

-	public IFeatureReference install(IFeature feature,IVerificationListener verificationListener, IProgressMonitor monitor) throws CoreException {

-		return null;

-	}

-

-	/*

-	 * @see ISite#remove(IFeature, IProgressMonitor)

-	 */

-	public void remove(IFeature feature, IProgressMonitor monitor) throws CoreException {

-	}

-

-	/*

-	 * @see ISite#addSiteChangedListener(IConfiguredSiteChangedListener)

-	 */

-	public void addSiteChangedListener(IConfiguredSiteChangedListener listener) {

-	}

-

-	/*

-	 * @see ISite#removeSiteChangedListener(IConfiguredSiteChangedListener)

-	 */

-	public void removeSiteChangedListener(IConfiguredSiteChangedListener listener) {

-	}

-

-	/*

-	 * @see ISite#getURL()

-	 */

-	public URL getURL() {

-		return url;

-	}

-

-	/*

-	 * @see ISite#getType()

-	 */

-	public String getType() {

-		return "org.eclipse.update.tests.ftp";

-	}

-

-	/*

-	 * @see ISite#getCategories()

-	 */

-	public ICategory[] getCategories() {

-		return null;

-	}

-

-	/*

-	 * @see ISite#getArchives()

-	 */

-	public IArchiveReference[] getArchives() {

-		return null;

-	}

- 

-	/*

-	 * @see ISite#addCategory(ICategory)

-	 */

-	public void addCategory(ICategory category) {

-	}

-

-	/*

-	 * @see ISite#save()

-	 */

-	public void save() throws CoreException {

-	}

-

-	/*

-	 * @see IPluginContainer#getPluginEntries()

-	 */

-	public IPluginEntry[] getPluginEntries() {

-		return null;

-	}

-

-	/*

-	 * @see IPluginContainer#getPluginEntryCount()

-	 */

-	public int getPluginEntryCount() {

-		return 0;

-	}

-

-	/*

-	 * @see ISite#getDownloadSizeFor(IFeature)

-	 */

-	public long getDownloadSizeFor(IFeature feature) {

-		return 0;

-	}

-

-	/*

-	 * @see ISite#getInstallSizeFor(IFeature)

-	 */

-	public long getInstallSizeFor(IFeature feature) {

-		return 0;

-	}

-

-

-	/*

-	 * @see IPluginContainer#store(IPluginEntry, String, InputStream)

-	 */

-	public void store(IPluginEntry entry, String name, InputStream inStream) throws CoreException {

-	}

-

-	/*

-	 * @see IAdaptable#getAdapter(Class)

-	 */

-	public Object getAdapter(Class adapter) {

-		return null;

-	}

-

-	/*

-	 * @see IPluginContainer#remove(IPluginEntry)

-	 */

-	public void remove(IPluginEntry entry) throws CoreException {

-	}

-

-	/*

-	 * @see ISite#setSiteContentConsumer(ISiteContentConsumer)

-	 */

-	public void setSiteContentConsumer(ISiteContentConsumer contentConsumer) {

-	}

-

-	/*

-	 * @see ISite#setSiteContentProvider(ISiteContentProvider)

-	 */

-	public void setSiteContentProvider(ISiteContentProvider siteContentProvider) {

-	}

-

-	/*

-	 * @see ISite#getSiteContentProvider()

-	 */

-	public ISiteContentProvider getSiteContentProvider() {

-		return null;

-	}

-

-	/*

-	 * @see ISite#getDefaultPackagedFeatureType()

-	 */

-	public String getDefaultPackagedFeatureType() {

-		return null;

-	}

-

-	/*

-	 * @see ISite#store(IFeature, String, InputStream, IProgressMonitor)

-	 */

-	public void store(IFeature feature, String name, InputStream inStream, IProgressMonitor monitor) throws CoreException {

-	}

-

-

-	/*

-	 * @see IPluginContainer#remove(IPluginEntry, IProgressMonitor)

-	 */

-	public void remove(IPluginEntry entry, IProgressMonitor monitor) throws CoreException {

-	}

-

-	/*

-	 * @see ISite#getCategory(String)

-	 */

-	public ICategory getCategory(String key) {

-		return null;

-	}

-

-	/*

-	 * @see ISite#createSiteContentConsumer(IFeature)

-	 */

-	public ISiteContentConsumer createSiteContentConsumer(IFeature feature) throws CoreException {

-		return null;

-	}

-

-	/*

-	 * @see ISite#getFeatureReference(IFeature)

-	 */

-	public ISiteFeatureReference getFeatureReference(IFeature feature) {

-		return null;

-	}

-

-	/*

-	 * @see ISite#getDescription()

-	 */

-	public IURLEntry getDescription() {

-		return null;

-	}

-

-	/*

-	 * @see ISite#getPluginEntriesOnlyReferencedBy(IFeature)

-	 */

-	public IPluginEntry[] getPluginEntriesOnlyReferencedBy(IFeature feature) throws CoreException {

-		return null;

-	}

-

-	/**

-	 * @see ISite#addPluginEntry(IPluginEntry)

-	 */

-	public void addPluginEntry(IPluginEntry pluginEntry) {

-	}

-

-	/**

-	 * @see org.eclipse.update.core.ISite#install(IFeature, IFeatureReference[], IVerificationListener, IProgressMonitor)

-	 */

-	public IFeatureReference install(IFeature feature, IFeatureReference[] optionalfeatures, IVerificationListener verificationListener, IProgressMonitor monitor) throws InstallAbortedException, CoreException {

-		return null;

-	}

-

-

-	public IConfiguredSite getCurrentConfiguredSite() {

-		return null;

-	}

-

-	public IFeature createFeature(String type, URL url) throws CoreException {

-		return null;

-	}

-

-	/**

-	 * @see org.eclipse.update.core.ISite#createFeature(java.lang.String, java.net.URL, org.eclipse.core.runtime.IProgressMonitor)

-	 */

-	public IFeature createFeature(String type, URL url, IProgressMonitor monitor) throws CoreException {

-		return null;

-	}

-

-

-	/**

-	 * @see org.eclipse.update.core.ISite#getRawFeatureReferences()

-	 */

-	public ISiteFeatureReference[] getRawFeatureReferences() {

-		return null;

-	}

-

-

-	/* (non-Javadoc)

-	 * @see org.eclipse.update.core.ISite#getMirrorSiteEntries()

-	 */

-	public IURLEntry[] getMirrorSiteEntries() throws CoreException {

-		return null;

-	}

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/implementation/SiteFTPFactory.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/implementation/SiteFTPFactory.java
deleted file mode 100644
index 0d4fd25..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/implementation/SiteFTPFactory.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.implementation;

-import java.io.IOException;

-import java.io.InputStream;

-import java.net.MalformedURLException;

-import java.net.URL;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.update.core.*;

-import org.eclipse.update.core.model.*;

-import org.eclipse.update.internal.core.URLEncoder;

-

-public class SiteFTPFactory extends SiteModelFactory implements ISiteFactory {

-

-	public static final String FILE = "a/b/c/";

-

-	/*

-	 * @see ISiteFactory#createSite(URL, boolean)

-	 */

-	public ISite createSite(URL url)

-		throws CoreException, InvalidSiteTypeException {

-		ISite site = null;

-		InputStream siteStream = null;

-

-		try {

-			URL resolvedURL = URLEncoder.encode(url);

-			siteStream = resolvedURL.openStream();

-

-			SiteModelFactory factory = (SiteModelFactory) this;

-			factory.parseSite(siteStream);

-

-			site = new SiteFTP(new URL("http://eclipse.org/" + FILE));

-			

-		} catch (MalformedURLException e) {

-			throw Utilities.newCoreException("Unable to create URL", e);

-		} catch (IOException e) {

-			throw Utilities.newCoreException("Unable to access URL",ISite.SITE_ACCESS_EXCEPTION, e);

-		} finally {

-			try {

-				if (siteStream != null)

-					siteStream.close();

-			} catch (Exception e) {

-			}

-		}

-		return site;

-	}

-

-	/*

-	 * @see SiteModelFactory#canParseSiteType(String)

-	 */

-	public boolean canParseSiteType(String type) {

-		return "org.eclipse.update.tests.core.ftp".equalsIgnoreCase(type);

-	}

-

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/AllMirrorTests.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/AllMirrorTests.java
deleted file mode 100644
index d699186..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/AllMirrorTests.java
+++ /dev/null
@@ -1,40 +0,0 @@
-
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.tests.mirror;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.update.tests.UpdateManagerTestCase;
-
-public class AllMirrorTests extends UpdateManagerTestCase {
-	
-	public AllMirrorTests(String name){
-		super(name);
-	}
-	
-	public static Test suite(){
-		TestSuite suite = new TestSuite();
-		suite.setName("Mirror Tests");
-		
-		// the following will take all the test methods in the class that starts with "test"
-		
-		suite.addTest(new TestSuite(TestRemoteFeatureVersionMirror.class));
-		suite.addTest(new TestSuite(TestRemoteEmbeddedFeatureMirror.class));
-		suite.addTest(new TestSuite(TestRemoteDoubleEmbeddedFeatureMirror.class));
-		
-		// or you can specify the method
-		//suite.addTest(new TestGetFeature("methodThatDoesNotStartWithtest"));
-		return suite;	
-	}
-
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/MirrorManagerTestCase.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/MirrorManagerTestCase.java
deleted file mode 100644
index d70e4d8..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/MirrorManagerTestCase.java
+++ /dev/null
@@ -1,464 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-
-package org.eclipse.update.tests.mirror;
-
-import java.io.*;
-import java.util.ArrayList;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.update.configurator.*;
-import org.eclipse.update.internal.core.UpdateCore;
-import org.eclipse.update.tests.UpdateManagerTestCase;
-
-
-public class MirrorManagerTestCase extends UpdateManagerTestCase{
-	public static int exitValue=-1;
-	public static StringBuffer errOutput;
-	
-	public MirrorManagerTestCase(String arg0){
-		super(arg0);
-	}
-	
-	//WatchDog thread to kill mirroring process if it hangs (or takes too long)
-	public static class Timer extends Thread{
-		private Process proc;
-		
-		public Timer(Process proc){
-			super();
-			this.setDaemon(true);
-			this.proc = proc;
-		}
-		
-		public void run(){
-			try {
-				// Note: normal test on 2.2Ghz P4 is 2.9s 
-				//:. giving 100x leeway to complete process before killing it
-				sleep(300000); 
-				proc.destroy();
-			} catch (Exception e) {
-				e.printStackTrace();
-			}
-		}
-	}
-	
-	// structure to hold category definition names and descriptions
-	class CategoryDefinition {
-		private String name;
-		private String desc;
-		public void setName(String name) {
-			this.name = name;
-		}
-		public void setDesc(String desc) {
-			this.desc = desc;
-		}
-		public String getName() {
-			return name;
-		}
-		public String getDesc() {
-			return desc;
-		}
-	}
-	
-	// structure to hold feature IDs and their category names
-	public class FeatureCategory{
-		private String featureId;
-		private ArrayList category;
-		
-		public FeatureCategory(){
-			category = new ArrayList();
-		}
-		
-		public void setFeatureID(String fid){
-			featureId = fid;
-		}
-		
-		public void addCategory(String cat){
-			category.add(cat);
-		}
-		
-		public String getFeatureID(){
-			return featureId;
-		}
-		
-		public String[] getCategories(){
-			return (String[])category.toArray(new String[category.size()]);
-		}
-	}
-	
-	// StreamConsumer to display output to output files or console
-	public static class StreamConsumer extends Thread {
-		private BufferedReader bReader;
-
-		public StreamConsumer(InputStream inputStream) {
-			super();
-			setDaemon(true);
-			bReader = new BufferedReader(new InputStreamReader(inputStream));
-		}
-
-		public void run() {
-			try {
-				String line;
-				while (null != (line = bReader.readLine())) {
-					System.out.println(line);
-					errOutput.append(line);
-					errOutput.append("\n");
-				}
-			} catch (IOException e) {
-				e.printStackTrace();
-			}
-		}
-	}
-	
-	/**
-	 * Returns a string array consisting of commands and their arguments to
-	 * be run.
-	 * @param remoteLoc - path of remote site (site being mirrored)
-	 * @param toLocalSiteUrl - path of local site (new mirror site)
-	 * @param fid - feature id of featuring being mirror (optional - can be null)
-	 * @param ver - version of feature to be mirrored (optional - can be null)
-	 * @param mirUrl - directory location of policy.xml (optional - can be mull)
-	 * @return
-	 */
-	public String[] getCommand(
-		String remoteLoc,
-		String toLocalSiteUrl,
-		String fid,
-		String ver,
-		String mirUrl) {
-		final String classpath = "startup.jar";
-		final String launcher = "org.eclipse.core.launcher.Main";
-		final String command = "mirror";
-		final String application = "org.eclipse.update.core.standaloneUpdate";
-		final String FLAG_CP = "-cp";
-		final String FLAG_APP = "-application";
-		final String FLAG_CMD = "-command";
-		final String FLAG_FID = "-featureId";
-		final String FLAG_DATA = "-data";
-		final String FLAG_VERSION = "-version";
-		final String FLAG_FROM = "-from";
-		final String FLAG_TO = "-to";
-		final String FLAG_URL = "-mirrorURL";
-		final String FLAG_SPLASH = "-nosplash";
-		final String FLAG_CONSOLELOG = "-consolelog";
-		final String data =
-			UpdateCore.getPlugin().getStateLocation().toOSString();
-		String[] cmd =
-			new String[] {
-				getJavaVMPath(),
-				FLAG_CP,
-				classpath,
-				launcher,
-				FLAG_APP,
-				application,
-				FLAG_CMD,
-				command,
-				FLAG_FROM,
-				(remoteLoc !=null ? remoteLoc : ""),
-				FLAG_TO,
-				toLocalSiteUrl,
-				(fid != null ? FLAG_FID : ""),
-				(fid != null ? fid : ""),
-				(ver != null ? FLAG_VERSION : ""),
-				(ver != null ? ver : ""),
-				(mirUrl != null ? FLAG_URL : ""),
-				(mirUrl != null ? mirUrl : ""),
-				FLAG_SPLASH,
-				FLAG_DATA,
-				data,
-				FLAG_CONSOLELOG};
-		return cmd;
-	}
-	
-	public boolean checkFeatureInSiteXMLExists(String url, String fid, String ver){
-		File site = new File(url + "/site.xml");
-		assertTrue(site.exists());
-		BufferedReader breader;
-		FileReader freader;
-		String text = new String();
-		String jarName = fid + "_" + ver + ".jar";
-		String feature = "<feature url=\"" +
-			"features/" + jarName + 
-			"\" id=\"" + fid + 
-			"\" version=\"" + ver+"\">";
-		try {
-			freader = new FileReader(site);
-			breader = new BufferedReader(freader);
-		} catch (FileNotFoundException e) {
-			// would have been caught by assert above
-			return false;
-		}
-		try {
-			while ((text = breader.readLine()) != null) {
-				text = text.trim();
-				if (text.equals(feature)){
-					breader.close();
-					freader.close();
-					return true;
-				}
-			}
-
-			breader.close();
-			freader.close();
-			return false;
-		} catch (IOException e) {
-			e.printStackTrace();
-			return false;
-		}
-	}
-
-	public void checkSiteXML(String url) throws Exception {
-		File mirror = new File(url);
-		File site = new File(url + "/site.xml");
-		assertTrue(mirror.isDirectory());
-		assertTrue(mirror.exists());
-		assertTrue(site.exists());
-	}
-
-	public void checkPolicyXML(String url) throws Exception {
-		File mirror = new File(url);
-		File site = new File(url + "/policy.xml");
-		assertTrue(mirror.isDirectory());
-		assertTrue(mirror.exists());
-		assertTrue(site.exists());
-	}
-	public boolean checkPolicyURL(String url, String mirrorUrl){
-		File site = new File(url + "/policy.xml");
-		assertTrue(site.exists());
-		BufferedReader breader;
-		FileReader freader;
-		String text = new String();
-
-		try {
-			freader = new FileReader(site);
-			breader = new BufferedReader(freader);
-		} catch (FileNotFoundException e) {
-			// would have been caught by assert above
-			return false;
-		}
-
-		try {
-			while ((text = breader.readLine()) != null) {
-				if (text.indexOf(mirrorUrl)!=-1){
-					breader.close();
-					freader.close();	
-					return true;
-				}
-			}
-
-			breader.close();
-			freader.close();
-			return false;
-		} catch (IOException e) {
-			e.printStackTrace();
-			return false;
-		}
-	}
-
-	public boolean doesCategoryDefinitionExist(String url) {
-		File site = new File(url + "/site.xml");
-		assertTrue(site.exists());
-		BufferedReader breader;
-		FileReader freader;
-		String text = new String();
-
-		try {
-			freader = new FileReader(site);
-			breader = new BufferedReader(freader);
-		} catch (FileNotFoundException e) {
-			// would have been caught by assert above
-			return false;
-		}
-
-		try {
-			while ((text = breader.readLine()) != null) {
-				if (text.indexOf("category-def")!=-1)
-					return true;
-			}
-
-			breader.close();
-			freader.close();
-			return false;
-		} catch (IOException e) {
-			e.printStackTrace();
-			return false;
-		}
-
-	}
-	
-	public String getEclipseRoot() {
-		return ConfiguratorUtils.getInstallURL().toExternalForm().replaceFirst(
-			"file:",
-			"");
-	}
-	
-	public FeatureCategory[] getFeatureCategories(String url){
-		File site = new File(url + "/site.xml");
-		assertTrue(site.exists());
-		BufferedReader breader;
-		FileReader freader;
-		String text = new String();
-		ArrayList featureCategories = new ArrayList();
-		
-		try {
-			freader = new FileReader(site);
-			breader = new BufferedReader(freader);
-		} catch (FileNotFoundException e) {
-			// would have been caught by assert above
-			return new FeatureCategory[0];
-		}
-
-		try {
-			FeatureCategory currTok = new FeatureCategory();
-			boolean add = false;
-			while((text =breader.readLine())!=null){
-				StringTokenizer strTok = new StringTokenizer(text);
-				while (strTok.hasMoreTokens()){
-					String temp = strTok.nextToken();
-					if (temp.equals("</feature>")){
-						add = true;
-					} else if (temp.startsWith("id")){
-						currTok.setFeatureID(temp.split("\"")[1]);
-					} else if (temp.startsWith("name")){
-						currTok.addCategory(temp.split("\"")[1]);
-					}
-				}
-				if (add){
-					featureCategories.add(currTok);
-					currTok = new FeatureCategory();
-					add = false;
-				}
-			}
-
-			breader.close();
-			freader.close();
-			return (FeatureCategory[])featureCategories.toArray(new FeatureCategory[featureCategories.size()]);
-		} catch (IOException e) {
-			System.err.println(e);
-			return new FeatureCategory[0];
-		}
-	}
-	
-	public String getJavaVMPath() {
-		// Create command string for launching the process
-		String vm = System.getProperty("java.vm.name");
-		String executable = "J9".equals(vm) ? "j9" : "java";
-		if (org.eclipse.osgi.service.environment.Constants.OS_WIN32.equals(Platform.getOS()))
-			executable += "w.exe";
-
-		String javaInstallDir =
-			System.getProperty("java.home") + File.separator + "bin";
-		return javaInstallDir + File.separator + executable;
-	}
-	
-	public CategoryDefinition[] getCategoryDefinitions(String url) {
-		File site = new File(url + "/site.xml");
-		assertTrue(site.exists());
-		BufferedReader breader;
-		FileReader freader;
-		String text = new String();
-		ArrayList catDef = new ArrayList();
-
-		try {
-			freader = new FileReader(site);
-			breader = new BufferedReader(freader);
-		} catch (FileNotFoundException e) {
-			// would have been caught by assert above
-			return new CategoryDefinition[0];
-		}
-
-		try {
-			boolean add = false;
-			boolean isDesc = false;
-			CategoryDefinition temp = new CategoryDefinition();
-			while ((text = breader.readLine()) != null) {
-				if (text.trim().startsWith("<category-def")
-					&& text.indexOf("name") != -1) {
-					temp.setName(text.split("\"")[1]);
-					add = false;
-				} else if (text.trim().equals("<description>")) {
-					isDesc = true;
-				} else if (text.trim().equals("</description>")) {
-					isDesc = false;
-				} else if (isDesc) {
-					temp.setDesc(text.trim());
-				} else if (text.trim().equals("</category-def>")) {
-					add = true;
-				}
-				if (add) {
-					catDef.add(temp);
-					add = false;
-					temp = new CategoryDefinition();
-				}
-			}
-
-			breader.close();
-			freader.close();
-			return (CategoryDefinition[])catDef.toArray(new CategoryDefinition[catDef.size()]);
-		} catch (IOException e) {
-			System.err.println(e);
-			return new CategoryDefinition[0];
-		}
-
-	}
-	
-	public int performMirror(String[] cmd_mirror) {
-		File file = new File(getEclipseRoot());
-		try {
-			System.out.println("Launching:");
-			for(int i=0; i<cmd_mirror.length; i++){
-				System.out.print(cmd_mirror[i]+" ");
-			}
-			System.out.println();
-			Process proc =
-				Runtime.getRuntime().exec(cmd_mirror, (String[]) null, file);
-
-			StreamConsumer outputs = new StreamConsumer(proc.getInputStream());
-			outputs.start();
-			StreamConsumer errors = new StreamConsumer(proc.getErrorStream());
-			errors.start();
-			Timer timer = new Timer(proc);
-			timer.start();
-
-			return proc.waitFor();
-		} catch (IOException e) {
-			System.err.println(e);
-		} catch (InterruptedException e) {
-			System.err.println(e);
-		} catch (Exception e) {
-			System.err.println(e);
-		}
-		return -1;
-	}
-
-	// ensure exit without problems
-	public void testExitValue() throws Exception {
-		assertEquals(exitValue, 0);
-	}
-	
-	// ensure output string buffer ends with "Mirror command completed
-	// successfully."
-	// note: output may instead by "Command completed successfully."
-	public void testMirrorSuccess() throws Exception {
-		StringTokenizer tokenizer =
-			new StringTokenizer(
-				errOutput.toString(),
-				"\n");
-		String lastLine = new String();
-		while (tokenizer.hasMoreTokens()){
-			lastLine = tokenizer.nextToken();
-		}
-		assertTrue(
-			lastLine.equals("Mirror command completed successfully.")
-				|| lastLine.equals("Command completed successfully."));
-	}
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/TestRemoteDoubleEmbeddedFeatureMirror.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/TestRemoteDoubleEmbeddedFeatureMirror.java
deleted file mode 100644
index e4cad27..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/TestRemoteDoubleEmbeddedFeatureMirror.java
+++ /dev/null
@@ -1,215 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-
-package org.eclipse.update.tests.mirror;
-
-import java.io.File;
-import java.util.ArrayList;
-
-import org.eclipse.update.tests.UpdateTestsPlugin;
-
-public class TestRemoteDoubleEmbeddedFeatureMirror extends MirrorManagerTestCase {
-	private static boolean isMirrored;
-
-	public TestRemoteDoubleEmbeddedFeatureMirror(String arg0) {
-		super(arg0);
-		errOutput = new StringBuffer();
-		isMirrored = false;
-	}
-
-	public void umSetUp() {
-		String featureId = "update.feature1c";
-		String version = "3.0.0";
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteDoubleEmbeddedFeatureMirror";
-		String mirrorURL = "http://update.eclipse.org/my-mirror-url";
-		// first mirror
-		String fromRemoteSiteUrl =
-			"file:"
-				+ dataPath
-				+ "mirrors/update-site1";
-		if (!isMirrored) {
-			exitValue =
-				performMirror(
-					getCommand(fromRemoteSiteUrl,toLocalSiteUrl, null, null, mirrorURL));
-		
-		// end of first mirror
-		fromRemoteSiteUrl =
-			"file:"
-			+ dataPath
-			+ "mirrors/update-site5";
-			exitValue =
-				performMirror(
-					getCommand(fromRemoteSiteUrl,toLocalSiteUrl, featureId, version, mirrorURL));
-			isMirrored = true;
-		}
-	}
-
-	// make sure each feature is under its correct category names
-	public void testFeatureCategories() throws Exception{
-		String fromRemoteSiteUrl =
-		        dataPath
-				+ "mirrors/update-site5";
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteDoubleEmbeddedFeatureMirror";
-		FeatureCategory[] mirrorFeatures = getFeatureCategories(toLocalSiteUrl);
-		FeatureCategory[] required = new FeatureCategory[1];
-		required[0] = new FeatureCategory();
-		required[0].setFeatureID("update.feature1c");
-		required[0].addCategory("Site5-Category1");
-		assertTrue(checkFeatureCategoriesContained(required, mirrorFeatures));
-	}
-	
-	// ensure exit without problems
-	public void testExitValue() throws Exception {
-		super.testExitValue();
-	}
-	
-	// ensure category definitions exist
-	public void testCategoryDefinitionsExist() throws Exception {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteDoubleEmbeddedFeatureMirror";
-		assertTrue(doesCategoryDefinitionExist(toLocalSiteUrl));
-	}
-
-	// ensure feature exists per site.xml
-	public void testFeatureInSiteXMLExists() {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteDoubleEmbeddedFeatureMirror";
-		String featureId = "update.feature1c";
-		String version = "3.0.0";
-		assertTrue(
-			checkFeatureInSiteXMLExists(toLocalSiteUrl, featureId, version));
-	}
-
-	// ensure site.xml is generated
-	public void testSiteXMLExists() throws Exception {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteDoubleEmbeddedFeatureMirror";
-		checkSiteXML(toLocalSiteUrl);
-	}
-
-	// ensure policy.xml is generated
-	public void testPolicyXMLExists() throws Exception {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteDoubleEmbeddedFeatureMirror";
-		checkPolicyXML(toLocalSiteUrl);
-	}
-
-	// ensure policy.xml references the correct mirrorURL
-	public void testPolicyURL() throws Exception {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteDoubleEmbeddedFeatureMirror";
-		String mirrorURL = "http://update.eclipse.org/my-mirror-url";
-		assertTrue(checkPolicyURL(toLocalSiteUrl, mirrorURL));
-	}
-
-	// ensure all jars in features directory mirrored
-	public void testAllFeatureJarsExist() throws Exception {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteDoubleEmbeddedFeatureMirror";
-		String[] featureJars = { "update.feature1b_2.0.0.jar" };
-		assertTrue(checkAllFeatureJars(toLocalSiteUrl, featureJars));
-	}
-
-	// ensure all jars in plugins directory mirrored
-	public void testAllPluginJarsExist() throws Exception {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteDoubleEmbeddedFeatureMirror";
-		String[] pluginJars =
-			{ "com.plugin1_1.0.0.jar", "com.plugin1a_1.0.1.jar" };
-		assertTrue(checkAllPluginJars(toLocalSiteUrl, pluginJars));
-	}
-
-	// ensure output string buffer ends with "Mirror command completed
-	// successfully."
-	// note: output may instead by "Command completed successfully."
-	public void testMirrorSuccess() throws Exception {
-		super.testMirrorSuccess();
-	}
-	
-	public boolean checkAllFeatureJars(String url, String[] jarNames) {
-		File featuresDir = new File(url + "/features");
-		assertTrue(featuresDir.exists());
-		assertTrue(featuresDir.isDirectory());
-		String[] list = featuresDir.list();
-
-		ArrayList ls = new ArrayList();
-		for (int i = 0; i < list.length; i++) {
-			ls.add(list[i]);
-		}
-
-		for (int j = 0; j < jarNames.length; j++) {
-			assertTrue(ls.contains(jarNames[j]));
-		}
-		return true;
-	}
-
-	public boolean checkAllPluginJars(String url, String[] jarNames) {
-		File pluginsDir = new File(url + "/plugins");
-		assertTrue(pluginsDir.exists());
-		assertTrue(pluginsDir.isDirectory());
-		String[] list = pluginsDir.list();
-
-		ArrayList ls = new ArrayList();
-		for (int i = 0; i < list.length; i++) {
-			ls.add(list[i]);
-		}
-
-		for (int j = 0; j < jarNames.length; j++) {
-			assertTrue(ls.contains(jarNames[j]));
-		}
-		return true;
-	}
-
-	public boolean checkFeatureCategoriesContained(FeatureCategory[] required,FeatureCategory[] localDefs){
-		boolean hasMatch;
-		for (int i = 0 ; i<required.length; i++){
-			hasMatch = false;
-			for (int j = 0; j<localDefs.length; j++){
-				if (localDefs[j].getFeatureID().equals(required[i].getFeatureID()) &&
-					checkCategoriesMatch(localDefs[j].getCategories(), required[i].getCategories())){
-						hasMatch = true;
-						j=localDefs.length;
-				}
-			}
-			if (!hasMatch)
-				return false;
-		}
-		return true;
-	}
-	
-	public boolean checkCategoriesMatch(String[] localCat, String[] remoteCat){
-		boolean hasMatch;
-		for (int i = 0; i<localCat.length; i++){
-			hasMatch = false;
-			for (int j = 0; j<remoteCat.length; i++){
-				if (localCat[i].equals(remoteCat[j])){
-					hasMatch = true;
-					j=remoteCat.length;
-				}
-			}
-			if(!hasMatch)
-				return false;
-		}
-		return true;
-	}
-
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/TestRemoteEmbeddedFeatureMirror.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/TestRemoteEmbeddedFeatureMirror.java
deleted file mode 100644
index 86ea260..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/TestRemoteEmbeddedFeatureMirror.java
+++ /dev/null
@@ -1,189 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-
-package org.eclipse.update.tests.mirror;
-
-import java.io.File;
-import java.util.ArrayList;
-
-import org.eclipse.update.tests.UpdateTestsPlugin;
-
-public class TestRemoteEmbeddedFeatureMirror extends MirrorManagerTestCase {
-	private static boolean isMirrored;
-
-	public TestRemoteEmbeddedFeatureMirror(String arg0) {
-		super(arg0);
-		errOutput = new StringBuffer();
-		isMirrored = false;
-	}
-
-	public void umSetUp() {
-		String featureId = "update.feature1c";
-		String version = "3.0.0";
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteEmbeddedFeatureMirror";
-		String mirrorURL = "http://update.eclipse.org/my-mirror-url";
-		String fromRemoteSiteUrl =
-				"file:"
-				+ dataPath
-				+ "mirrors/update-site4";
-		if (!isMirrored) {
-			exitValue =
-				performMirror(
-					getCommand(fromRemoteSiteUrl,toLocalSiteUrl, featureId, version, mirrorURL));
-			isMirrored = true;
-		}
-	}
-
-	// ensure exit without problems
-	public void testExitValue() throws Exception {
-		super.testExitValue();
-	}
-
-	// ensure all category definitions exist
-	public void testCategoryDefinitionsExist() throws Exception {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteEmbeddedFeatureMirror";
-		assertTrue(doesCategoryDefinitionExist(toLocalSiteUrl));
-	}
-
-	public void testFeatureInSiteXMLExists() {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteEmbeddedFeatureMirror";
-		String featureId = "update.feature1c";
-		String version = "3.0.0";
-		assertTrue(
-			checkFeatureInSiteXMLExists(toLocalSiteUrl, featureId, version));
-	}
-
-	// ensure site.xml is generated
-	public void testSiteXMLExists() throws Exception {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteEmbeddedFeatureMirror";
-		checkSiteXML(toLocalSiteUrl);
-	}
-
-	// ensure policy.xml is generated
-	public void testPolicyXMLExists() throws Exception {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteEmbeddedFeatureMirror";
-		checkPolicyXML(toLocalSiteUrl);
-	}
-
-	// ensure policy.xml uses the correct mirrorURL
-	public void testPolicyURL() throws Exception {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteEmbeddedFeatureMirror";
-		String mirrorURL = "http://update.eclipse.org/my-mirror-url";
-		assertTrue(checkPolicyURL(toLocalSiteUrl, mirrorURL));
-	}
-
-	// ensure all jars in features directory mirrored
-	public void testAllFeatureJarsExist() throws Exception {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteEmbeddedFeatureMirror";
-		String[] featureJars = { "update.feature1_1.0.0.jar", "update.feature1_1.0.1.jar", "update.feature1b_2.0.0.jar", "update.feature1c_3.0.0.jar" };
-		assertTrue(checkAllFeatureJars(toLocalSiteUrl, featureJars));
-	}
-
-	// ensure all jars in plugins directory mirrored
-	public void testAllPluginJarsExist() throws Exception {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteEmbeddedFeatureMirror";
-		String[] pluginJars =
-			{ "com.plugin1_1.0.0.jar", "com.plugin1a_1.0.1.jar" };
-		assertTrue(checkAllPluginJars(toLocalSiteUrl, pluginJars));
-	}
-
-	// ensure output string buffer ends with "Mirror command completed
-	// successfully."
-	// note: output may instead by "Command completed successfully."
-	public void testMirrorSuccess() throws Exception {
-		super.testMirrorSuccess();
-	}
-
-	public boolean checkAllFeatureJars(String url, String[] jarNames) {
-		File featuresDir = new File(url + "/features");
-		assertTrue(featuresDir.exists());
-		assertTrue(featuresDir.isDirectory());
-		String[] list = featuresDir.list();
-
-		ArrayList ls = new ArrayList();
-		for (int i = 0; i < list.length; i++) {
-			ls.add(list[i]);
-		}
-
-		assertEquals(list.length, jarNames.length);
-		for (int j = 0; j < jarNames.length; j++) {
-			assertTrue(ls.contains(jarNames[j]));
-		}
-		return true;
-	}
-
-	public boolean checkAllPluginJars(String url, String[] jarNames) {
-		File pluginsDir = new File(url + "/plugins");
-		assertTrue(pluginsDir.exists());
-		assertTrue(pluginsDir.isDirectory());
-		String[] list = pluginsDir.list();
-
-		ArrayList ls = new ArrayList();
-		for (int i = 0; i < list.length; i++) {
-			ls.add(list[i]);
-		}
-
-		assertEquals(list.length, jarNames.length);
-		for (int j = 0; j < jarNames.length; j++) {
-			assertTrue(ls.contains(jarNames[j]));
-		}
-		return true;
-	}
-
-	public boolean checkCategoryDefinitionsContained(CategoryDefinition[] localDefs, CategoryDefinition[] remoteDefs){
-		boolean hasMatch;
-		for (int i = 0 ; i<localDefs.length; i++){
-			hasMatch = false;
-			for (int j = 0; j<remoteDefs.length; j++){
-				if (localDefs[i].getName().equals(remoteDefs[j].getName())
-						&& localDefs[i].getDesc().equals(remoteDefs[j].getDesc()))
-					hasMatch = true;
-			}
-			if (!hasMatch)
-				return false;
-		}
-		return true;
-	}
-	
-
-
-	// start testing category definitions
-	public void testCategoryDefinitions() throws Exception {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteEmbeddedFeatureMirror";
-		String fromRemoteSiteUrl =
-		        dataPath
-				+ "mirrors/update-site4";
-		CategoryDefinition[] localDefs = getCategoryDefinitions(toLocalSiteUrl);
-		CategoryDefinition[] remoteDefs = getCategoryDefinitions(fromRemoteSiteUrl);
-		assertTrue(checkCategoryDefinitionsContained(localDefs, remoteDefs));
-	}
-
-
-
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/TestRemoteFeatureVersionMirror.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/TestRemoteFeatureVersionMirror.java
deleted file mode 100644
index f3a0b25..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/mirror/TestRemoteFeatureVersionMirror.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-
-package org.eclipse.update.tests.mirror;
-
-import java.io.File;
-
-import org.eclipse.update.tests.UpdateTestsPlugin;
-
-public class TestRemoteFeatureVersionMirror extends MirrorManagerTestCase {
-	private static boolean isMirrored;
-	
-	public TestRemoteFeatureVersionMirror(String arg0) {
-		super(arg0);
-		errOutput = new StringBuffer();
-		isMirrored = false;
-	}
-
-	public void umSetUp() {
-		String featureId = "update.feature1";
-		String version = "1.0.0";
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteFeatureVersionMirror";
-		String mirrorURL = "http://update.eclipse.org/my-mirror-url";
-		String fromRemoteSiteUrl = "file:" + dataPath + "mirrors/update-site1";
-		if (!isMirrored) {
-			exitValue =
-				performMirror(
-					getCommand(fromRemoteSiteUrl,toLocalSiteUrl, featureId, version, mirrorURL));
-			isMirrored = true;
-		}
-	}
-
-	// ensure exit without problems
-	public void testExitValue() throws Exception {
-		super.testExitValue();
-	}
-
-	// ensure all category definitions exist
-	public void testCategoryDefinitionsExist() throws Exception {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteFeatureVersionMirror";
-		assertTrue(doesCategoryDefinitionExist(toLocalSiteUrl));
-	}
-
-	// ensure feature exists per site.xml
-	public void testFeatureInSiteXMLExists(){
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteFeatureVersionMirror";
-		String featureId = "update.feature1";
-		String version = "1.0.0";
-		assertTrue(checkFeatureInSiteXMLExists(toLocalSiteUrl, featureId, version));
-	}
-	
-	// ensure site.xml is generated
-	public void testSiteXMLExists() throws Exception {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteFeatureVersionMirror";
-		checkSiteXML(toLocalSiteUrl);
-	}
-
-	// ensure policy.xml is generated
-	public void testPolicyXMLExists() throws Exception {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteFeatureVersionMirror";
-		checkPolicyXML(toLocalSiteUrl);
-	}
-	
-	// ensure policy.xml uses the correct mirrorURL
-	public void testPolicyURL() throws Exception{
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteFeatureVersionMirror";
-		String mirrorURL = "http://update.eclipse.org/my-mirror-url";
-		assertTrue(checkPolicyURL(toLocalSiteUrl, mirrorURL));
-	}
-
-	// ensure all jars for features and plugins mirrored
-	public void testAllJarsExist() throws Exception {
-		String toLocalSiteUrl =
-			UpdateTestsPlugin.getPlugin().getStateLocation()
-				+ "/temp/testRemoteFeatureVersionMirror";
-		String featureId = "update.feature1";
-		String version = "1.0.0";
-		String jarName = featureId + "_" + version + ".jar";
-		File file = new File(toLocalSiteUrl + "/features/" + jarName);
-		assertTrue(file.exists());
-	}
-
-	// ensure output string buffer ends with "Mirror command completed
-	// successfully."
-	// note: output may instead by "Command completed successfully."
-	public void testMirrorSuccess() throws Exception {
-		super.testMirrorSuccess();
-	}
-
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/AllModelTests.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/AllModelTests.java
deleted file mode 100644
index dad8de5..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/AllModelTests.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.model;

-import junit.framework.Test;

-import junit.framework.TestSuite;

-

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-/**

- * Manages the API tests

- */

-public class AllModelTests extends UpdateManagerTestCase {

-	/**

-	 * Constructor

-	 */

-	public AllModelTests(String name) {

-		super(name);

-	}

-	

-	/**

-	 * List of API tests

-	 */

-	public static Test suite() throws Exception {

-		TestSuite suite = new TestSuite();

-		suite.setName("Model Tests");

-

-		suite.addTest(new TestSuite(FeatureMain.class));

-		suite.addTest(new TestSuite(SiteMain.class));		

-

-		return suite;

-	}

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/FeatureMain.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/FeatureMain.java
deleted file mode 100644
index 803b5bb..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/FeatureMain.java
+++ /dev/null
@@ -1,183 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.model;

-

-import java.io.*;

-import java.net.URL;

-import java.util.ResourceBundle;

-

-import org.eclipse.update.core.model.*;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-public class FeatureMain extends UpdateManagerTestCase {

-

-	public FeatureMain(String testcase){

-		super(testcase);

-	}

-

-	public void testMain() throws Exception {

-		

-		FeatureModelFactory factory = new FeatureModelFactory();

-		InputStream is = null;

-		FeatureModel feature = null;

-		

-		System.out.println("Parsing feature ...");

-		try {

-			is = FeatureMain.class.getResourceAsStream("feature.xml");		

-			feature = factory.parseFeature(is);

-		} finally {

-			if (is != null) {

-				try { is.close();} catch(IOException e) {}

-			}

-		}

-		

-		String base = "http://another.server/feature.xml";

-		System.out.println("Resolving feature using "+base+" ...");

-		ResourceBundle bundle = null;

-		bundle = ResourceBundle.getBundle("org/eclipse/update/tests/model/test");

-		feature.resolve(new URL(base), new URL(base));

-	}

-	

-//	private static void writeFeature(PrintWriter w, int level, FeatureModel feature) {

-//		if (feature == null) return;

-//		

-//		String in = getIndent(level);

-//		w.println(in+"<?xml version=\"1.0\" encoding=\"UTF-8\"?>");

-//		

-//		w.println(in+"<feature");

-//		w.println(in+"   "+"id=\""+feature.getFeatureIdentifier()+"\"");

-//		w.println(in+"   "+"version=\""+feature.getFeatureVersion()+"\"");

-//		w.println(in+"   "+"label=\""+feature.getLabel()+"\"");

-//		w.println(in+"   "+"provider-name=\""+feature.getProvider()+"\"");

-//		w.println(in+"   "+"image=\""+feature.getImageURLString()+"\" -> "+feature.getImageURL());

-//		w.println(in+"   "+"os=\""+feature.getOS()+"\"");

-//		w.println(in+"   "+"ws=\""+feature.getWS()+"\"");

-//		w.println(in+"   "+"nl=\""+feature.getNL()+"\"");

-//		w.println(in+"   "+"application=\""+feature.getApplication()+"\"");

-//		w.println(in+"   "+">");

-//		

-//		writeDescription(w, level+1, feature.getDescriptionModel());

-//		writeCopyright(w, level+1, feature.getCopyrightModel());

-//		writeLicense(w, level+1, feature.getLicenseModel());

-//		writeURLs(w, level+1, feature);

-//		writePrereqs(w, level+1, feature);

-//		writePluginEntries(w, level+1, feature);

-//		writeNonPluginEntries(w, level+1, feature);

-//		         

-//        w.println(in+"</feature>");

-//	}

-//	

-//	private static void writeDescription(PrintWriter w, int level, URLEntryModel ue) {

-//		String in = getIndent(level);

-//		w.println("");

-//		w.println(in+"<description url=\""+ue.getURLString()+"\" -> "+ue.getURL()+">");

-//		w.println(in+ue.getAnnotation());

-//		w.println(in+"</description>");

-//	}

-//	

-//	private static void writeCopyright(PrintWriter w, int level, URLEntryModel ue) {

-//		String in = getIndent(level);

-//		w.println("");

-//		w.println(in+"<copyright url=\""+ue.getURLString()+"\" -> "+ue.getURL()+">");

-//		w.println(in+ue.getAnnotation());

-//		w.println(in+"</copyright>");

-//	}

-//	

-//	private static void writeLicense(PrintWriter w, int level, URLEntryModel ue) {

-//		String in = getIndent(level);

-//		w.println("");

-//		w.println(in+"<license url=\""+ue.getURLString()+"\" -> "+ue.getURL()+">");

-//		w.println(in+ue.getAnnotation());

-//		w.println(in+"</license>");

-//	}

-//	

-//	private static void writeURLs(PrintWriter w, int level, FeatureModel feature) {

-//		String in = getIndent(level);

-//		String in2 = getIndent(level+1);

-//		w.println("");

-//		w.println(in+"<url>");

-//		

-//		URLEntryModel update = feature.getUpdateSiteEntryModel();

-//		w.println(in2+"<update");

-//		w.println(in2+"   "+"url=\""+update.getURLString()+"\" -> "+update.getURL());

-//		w.println(in2+"   "+"label=\""+update.getAnnotation()+"\"");

-//		w.println(in2+"   "+"/>");

-//		

-//		URLEntryModel[] discovery = feature.getDiscoverySiteEntryModels();

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

-//			w.println(in2+"<discovery");

-//			w.println(in2+"   "+"url=\""+discovery[i].getURLString()+"\" -> "+discovery[i].getURL());

-//			w.println(in2+"   "+"label=\""+discovery[i].getAnnotation()+"\"");

-//			w.println(in2+"   "+"/>");

-//		}

-//		

-//		w.println(in+"</url>");

-//	}

-//	

-//	private static void writePrereqs(PrintWriter w, int level, FeatureModel feature) {

-//		String in = getIndent(level);

-//		String in2 = getIndent(level+1);

-//		w.println("");

-//		w.println(in+"<requires>");

-//		

-//		ImportModel[] imp = feature.getImportModels();

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

-//			w.println(in2+"<import");

-//			w.println(in2+"   "+"plugin=\""+imp[i].getIdentifier()+"\"");

-//			w.println(in2+"   "+"version=\""+imp[i].getVersion()+"\"");

-//			w.println(in2+"   "+"match=\""+imp[i].getMatchingRuleName()+"\"");

-//			w.println(in2+"   "+"/>");

-//		}

-//		

-//		w.println(in+"</requires>");

-//	}

-//	

-//	private static void writePluginEntries(PrintWriter w, int level, FeatureModel feature) {

-//		String in = getIndent(level);

-//		w.println("");

-//		

-//		PluginEntryModel[] plugin = feature.getPluginEntryModels();

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

-//			w.println(in+"<plugin");

-//			w.println(in+"   "+"id=\""+plugin[i].getPluginIdentifier()+"\"");

-//			w.println(in+"   "+"version=\""+plugin[i].getPluginVersion()+"\"");

-//			w.println(in+"   "+"fragment=\""+plugin[i].isFragment()+"\"");

-//			w.println(in+"   "+"os=\""+plugin[i].getOS()+"\"");

-//			w.println(in+"   "+"ws=\""+plugin[i].getWS()+"\"");

-//			w.println(in+"   "+"nl=\""+plugin[i].getNL()+"\"");

-//			w.println(in+"   "+"download-size=\""+plugin[i].getDownloadSize()+"\"");

-//			w.println(in+"   "+"install-size=\""+plugin[i].getInstallSize()+"\"");

-//			w.println(in+"   "+"/>");

-//		}

-//	}

-//	

-//	private static void writeNonPluginEntries(PrintWriter w, int level, FeatureModel feature) {

-//		String in = getIndent(level);

-//		w.println("");

-//		

-//		NonPluginEntryModel[] data = feature.getNonPluginEntryModels();

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

-//			w.println(in+"<data");

-//			w.println(in+"   "+"id=\""+data[i].getIdentifier()+"\"");

-//			w.println(in+"   "+"download-size=\""+data[i].getDownloadSize()+"\"");

-//			w.println(in+"   "+"install-size=\""+data[i].getInstallSize()+"\"");

-//			w.println(in+"   "+"/>");

-//		}

-//	}

-//	

-//	

-//	private static String getIndent(int level) {

-//		String indent = "";

-//		for (int i=0; i<level; i++) 

-//			indent += "   ";

-//		return indent;

-//	}

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/SiteMain.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/SiteMain.java
deleted file mode 100644
index cc49bf2..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/SiteMain.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.model;

-

-import java.io.*;

-import java.net.URL;

-

-import org.eclipse.update.core.SiteFeatureReferenceModel;

-import org.eclipse.update.core.model.*;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-public class SiteMain extends UpdateManagerTestCase {

-	

-	public SiteMain(String name){

-		super(name);

-	}

-

-	public void testMain() throws Exception {

-		

-		StringWriter strWriter=new StringWriter();

-		PrintWriter w = new PrintWriter(strWriter);

-

-		process("site_old_format.xml",w);

-		process("site.xml",w);

-		try {

-			process("site_with_type.xml",w);

-			fail("InvalidSiteTypeException not thrown");

-		} catch (InvalidSiteTypeException e) {

-			assertEquals(e.getNewType(),"some.other.site.type");

-		} finally {

-			System.out.println(strWriter);

-			w.close();

-		}

-	}

-	

-	private static void process(String xml, PrintWriter w) throws Exception {

-		

-		SiteModelFactory factory = new SiteModelFactory();

-		InputStream is = null;

-		SiteModel site = null;

-		

-		w.println("");

-		w.println("Parsing site map ...");

-		try {

-			is = SiteMain.class.getResourceAsStream(xml);		

-			site = factory.parseSite(is);

-		}  finally {

-			if (is != null) {

-				try { is.close();} catch(IOException e) {}

-			}

-		}

-		

-		if (site == null) return;

-		

-		String base = "http://another.server/site.xml";

-		w.println("Resolving site using "+base+" ...");

-		site.resolve(new URL(base), null);

-		

-		w.println("Writing site ...");

-		writeSite(w,0,site);

-	}

-	

-	private static void writeSite(PrintWriter w, int level, SiteModel site) {

-		if (site == null) return;

-		

-		String in = getIndent(level);

-		w.println(in+"<?xml version=\"1.0\" encoding=\"UTF-8\"?>");

-		

-		w.println(in+"<site");

-		w.println(in+"   "+"type=\""+site.getType()+"\"");

-		w.println(in+"   "+">");

-		

-		writeDescription(w, level+1, site.getDescriptionModel());

-		writeFeatures(w, level+1, site);

-		writeArchives(w, level+1, site);

-		writeCategoryDefs(w, level+1, site);

-         

-        w.println(in+"</feature>");

-	}

-	

-	private static void writeDescription(PrintWriter w, int level, URLEntryModel ue) {

-		if (ue == null) return;

-		String in = getIndent(level);

-		w.println("");

-		w.println(in+"<description url=\""+ue.getURLString()+"\" -> "+ue.getURL()+">");

-		w.println(in+ue.getAnnotation());

-		w.println(in+"</description>");

-	}

-	

-	private static void writeFeatures(PrintWriter w, int level, SiteModel site) {

-		String in = getIndent(level);

-		getIndent(level+1);

-		w.println("");

-		

-		SiteFeatureReferenceModel[] features = site.getFeatureReferenceModels();

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

-			w.println(in+"<feature");

-			w.println(in+"   "+"type=\""+features[i].getType()+"\"");

-			w.println(in+"   "+"url=\""+features[i].getURLString()+"\" -> "+features[i].getURL());

-			w.println(in+"   "+">");

-			writeCategories(w, level+1, features[i]);

-			w.println(in+"</feature>");

-		}

-	}

-	

-	private static void writeArchives(PrintWriter w, int level, SiteModel site) {

-		String in = getIndent(level);

-		w.println("");

-		

-		ArchiveReferenceModel[] archive = site.getArchiveReferenceModels();

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

-			w.println(in+"<archive");

-			w.println(in+"   "+"path=\""+archive[i].getPath()+"\"");

-			w.println(in+"   "+"url=\""+archive[i].getURLString()+"\" -> "+archive[i].getURL());

-			w.println(in+"   "+"/>");

-		}

-	}

-	

-	private static void writeCategoryDefs(PrintWriter w, int level, SiteModel site) {

-		String in = getIndent(level);

-		getIndent(level+1);

-		w.println("");

-		

-		CategoryModel[] cat = site.getCategoryModels();

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

-			w.println(in+"<category-def");

-			w.println(in+"   "+"name=\""+cat[i].getName()+"\"");

-			w.println(in+"   "+"label=\""+cat[i].getLabel()+"\"");

-			w.println(in+"   "+">");

-			writeDescription(w, level+1, cat[i].getDescriptionModel());

-			w.println(in+"</category-def>");

-		}

-	}

-	

-	private static void writeCategories(PrintWriter w, int level, SiteFeatureReferenceModel feature) {

-		String in = getIndent(level);

-		String[] cat = feature.getCategoryNames();

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

-			w.println(in+"<category name=\""+cat[i]+"\"");

-		}

-	}

-	

-	private static String getIndent(int level) {

-		String indent = "";

-		for (int i=0; i<level; i++) 

-			indent += "   ";

-		return indent;

-	}

-}

-

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/feature.xml b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/feature.xml
deleted file mode 100644
index 1db9650..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/feature.xml
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-

-<feature id="my.feature" version="3.7.1" label="%s1" provider-name="VK Inc."

-         image="images/feature.gif" os="Win32" ws="Win32" nl="en_CA,en_US"

-         application="org.eclipse.ui.workbench">

-

-   <install-handler url="install/handler.html" library="custom.jar" class="InstallHandler"/>

-   

-   <description url="http://www.tools.com/features/my.feature">

-      Description of my.feature

-   </description>

-   

-   <copyright url="copyright/my.feature">

-      Copyright for my.feature

-   </copyright>

-   

-   <license url="%url1">

-      License for my.feature

-   </license>

-   

-   <url>

-      <update url="http://www.tools.com/update" label="Update site"/>

-      <discovery url="http://www.tools.com/discovery1" label="%s2"/>

-      <discovery url="%url2" label="%s3 Discovery site 2"/>

-      <discovery url="%url3 http://www.tools.com/discovery3" label="Discovery site 3"/>

-   </url>

-   

-   <requires>

-      <import plugin="plugin.1" version="1.0.0" match="perfect"/>

-      <import plugin="plugin.2" version="3.2.0"/>

-      <import plugin="plugin.3"/>

-   </requires>

-   

-   <plugin id="my.plugin.1" version="1.0.0" fragment="true"

-           os="Win32" ws="Win32" nl="en_US" download-size="23456" install-size="1234567"/>

-   <plugin id="my.plugin.2" version="1.0.1"/>

-   <plugin id="my.plugin.3" version="1.0.2"/>

-   

-   <data id="examples.zip" download-size="23456" install-size="1234567"/>

-   <data id="custom/rt.jar"/>

-

-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/site.xml b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/site.xml
deleted file mode 100644
index 7516f26..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/site.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-

-<site>

-

-   <description url="http://www.tools.com/updateSite">

-      Site description

-   </description>

-

-   <feature type="my.feature.type" url="feature1.jar">

-      <category name="tools"/>

-      <category name="utilities"/>

-      <category name="windows.tools"/>

-   </feature>

-   

-   <feature type="" url="file:/feature2.jar">

-      <category name="utilities"/>

-   </feature>

-   

-   

-   <archive path="first/archive" url="archive1.jar"/>

-   <archive path="second/archive" url="archive2.jar"/>

-   

-   <category-def name="tools" label="Development Tools">

-      <description url="http://www.tools.com/tools">

-         This is description for tools

-      </description>

-   </category-def>

-   

-   <category-def name="utilities" label="Utilities">

-      <description url="tools.html"/>/

-   </category-def>

-   

-   <category-def name="windows.tools" label="Windows Development Tools"/>

-

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/site_old_format.xml b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/site_old_format.xml
deleted file mode 100644
index dd10ef7..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/site_old_format.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-

-<site url="www.tools.com/updateSite">

-

-   <feature type="my.feature.type" url="feature1.jar">

-      <category name="tools"/>

-      <category name="utilities"/>

-      <category name="windows.tools"/>

-   </feature>

-   

-   <feature type="" url="feature2.jar">

-      <category name="utilities"/>

-   </feature>

-  

-   <archive path="first/archive" url="archive1.jar"/>

-   <archive path="second/archive" url="archive2.jar"/>

-   

-   <category-def name="tools" label="Development Tools">

-      <description url="http://www.tools.com/tools">

-         This is description for tools

-      </description>

-   </category-def>

-   

-   <category-def name="utilities" label="Utilities">

-      <description url="utilities.html"/>

-   </category-def>

-   

-   <category-def name="windows.tools" label="Windows Development Tools"/>

-

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/site_with_type.xml b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/site_with_type.xml
deleted file mode 100644
index 2ee3a3f..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/site_with_type.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-

-<site url="http://www.tools.com/updateSite" type="some.other.site.type">

-

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/test.properties b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/test.properties
deleted file mode 100644
index 4201818..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/model/test.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-###############################################################################

-# Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

-###############################################################################

-s1 = String 1

-s2 = String 2

-url1 = relative/index.html

-url2 = http://some.server/tools.html

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/nativeTests/TestLocalSystemInfo.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/nativeTests/TestLocalSystemInfo.java
deleted file mode 100644
index ffcccbd..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/nativeTests/TestLocalSystemInfo.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.tests.nativeTests;
-import java.io.File;
-
-import org.eclipse.update.configuration.IVolume;
-import org.eclipse.update.configuration.LocalSystemInfo;
-import org.eclipse.update.tests.UpdateManagerTestCase;
-
-public class TestLocalSystemInfo extends UpdateManagerTestCase {
-
-	/**
-	 * Test the natives
-	 */
-	public TestLocalSystemInfo(String arg0) {
-		super(arg0);
-	}
-
-	public void testNative() throws Exception {
-	
-		// mount point
-       IVolume[] a = LocalSystemInfo.getVolumes();
-        if (a==null) throw new Exception("cannot find native library");
-		System.out.println("Found "+a.length+" mount points.");
-		for (int i =0; i<a.length;i++){
-			System.out.print("#"+i+" - "+a[i]);
-			
-			File root = a[i].getFile();
-			String label = a[i].getLabel();
-			if (label==null) label="NO LABEL";
-			int type = a[i].getType();
-			long size = LocalSystemInfo.getFreeSpace(root);
-			System.out.println(" ->:"+label+":"+getType(type)+":"+getSize(size));
-		}
-	}
-	
-	private String getType(int type){
-		switch (type) {
-			case LocalSystemInfo.VOLUME_FIXED :
-				return "VOLUME FIXED";
-			case LocalSystemInfo.VOLUME_REMOTE :
-				return "VOLUME REMOTE";
-			case LocalSystemInfo.VOLUME_REMOVABLE :
-				return "VOLUME REMOVABLE";
-			case LocalSystemInfo.VOLUME_CDROM :
-				return "VOLUME CDROM";				
-			case LocalSystemInfo.VOLUME_UNKNOWN :
-				return "VOLUME UNKNOWN";
-			default :
-				return "WRONG VOLUME INFO";
-		}
-	}
-	
-	private String getSize(long size){
-		if (size==LocalSystemInfo.SIZE_UNKNOWN) return "UNKNOWN SIZE";
-		
-		long kb = size/(1024*1024);
-		return new String(size+" ("+kb+"MB)");
-	}
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/nestedfeatures/AllNestedTests.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/nestedfeatures/AllNestedTests.java
deleted file mode 100644
index dc233c0..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/nestedfeatures/AllNestedTests.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.tests.nestedfeatures;
-import org.eclipse.update.tests.UpdateManagerTestCase;
-import junit.framework.*;
-
-public class AllNestedTests extends UpdateManagerTestCase {
-public AllNestedTests(String name) {
-	super(name);
-}
-public static Test suite() {
-	TestSuite suite = new TestSuite();
-	suite.setName("Nested Install Tests");
-	
-	// the following will take all teh test methods in teh class that start with 'test'
-
-	suite.addTest(new TestSuite(TestInstall.class));
-
-	// or you can specify the method
-	//suite.addTest(new TestGetFeature("methodThatDoesNotStartWithtest"));	
-	
-	return suite;
-}
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/nestedfeatures/TestInstall.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/nestedfeatures/TestInstall.java
deleted file mode 100644
index b4f5070..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/nestedfeatures/TestInstall.java
+++ /dev/null
@@ -1,301 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.tests.nestedfeatures;
-import java.io.File;
-import java.net.URL;
-
-import org.eclipse.update.core.*;
-import org.eclipse.update.internal.core.*;
-import org.eclipse.update.tests.UpdateManagerTestCase;
-
-public class TestInstall extends UpdateManagerTestCase {
-
-	/**
-	 * Constructor for Test1
-	 */
-	public TestInstall(String arg0) {
-		super(arg0);
-	}
-
-	public void testFileSite() throws Exception {
-		
-		//cleanup target 
-		File target = new File(TARGET_FILE_SITE.getFile());
-		UpdateManagerUtils.removeFromFileSystem(target);		
-		InstallRegistry.cleanup();
-		
-
-		ISite remoteSite =
-			SiteManager.getSite(new URL(SOURCE_FILE_SITE, "nestedFeatureSiteTest/site.xml"),null);
-		IFeature remoteFeature = remoteSite.getFeatureReferences()[0].getFeature(null);
-		ISite localSite = SiteManager.getSite(TARGET_FILE_SITE,null);
-		localSite.install(remoteFeature, null, null);
-
-		// verify root Feature
-		String site = localSite.getURL().getFile();
-		IPluginEntry[] entries = remoteFeature.getPluginEntries();
-		assertTrue("no plugins entry", (entries != null && entries.length != 0));
-		String pluginName = entries[0].getVersionedIdentifier().toString();
-		File pluginFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName);
-		assertTrue(
-			"plugin files not installed locally:" + pluginFile,
-			pluginFile.exists());
-		File pluginXMLFile =
-			new File(
-				site,
-				Site.DEFAULT_PLUGIN_PATH + pluginName + File.separator + "plugin.xml");
-		assertTrue("plugin.xml file not installed locally", pluginXMLFile.exists());
-
-		File featureFile =
-			new File(
-				site,
-				Site.DEFAULT_INSTALLED_FEATURE_PATH
-					+ remoteFeature.getVersionedIdentifier().toString());
-		assertTrue(
-			"feature info not installed locally:" + featureFile,
-			featureFile.exists());
-
-		// clean plugins & feature
-		for (int i = 0; i < entries.length; i++) {
-			pluginName = entries[i].getVersionedIdentifier().toString();
-			pluginFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName);
-			UpdateManagerUtils.removeFromFileSystem(pluginFile);
-			InstallRegistry.unregisterPlugin(entries[i]);
-		}
-		UpdateManagerUtils.removeFromFileSystem(featureFile);
-
-		// verify child Feature
-		IFeature childFeature =
-			remoteFeature.getIncludedFeatureReferences()[0].getFeature(null);
-		entries = childFeature.getPluginEntries();
-		assertTrue("no plugins entry", (entries != null && entries.length != 0));
-		pluginName = entries[0].getVersionedIdentifier().toString();
-		pluginFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName);
-		assertTrue(
-			"plugin files not installed locally:" + pluginFile,
-			pluginFile.exists());
-		pluginXMLFile =
-			new File(
-				site,
-				Site.DEFAULT_PLUGIN_PATH + pluginName + File.separator + "plugin.xml");
-		assertTrue("plugin.xml file not installed locally", pluginXMLFile.exists());
-
-		featureFile =
-			new File(
-				site,
-				Site.DEFAULT_INSTALLED_FEATURE_PATH
-					+ childFeature.getVersionedIdentifier().toString());
-		assertTrue(
-			"feature info not installed locally:" + featureFile,
-			featureFile.exists());
-
-		// clean plugins
-		for (int i = 0; i < entries.length; i++) {
-			pluginName = entries[0].getVersionedIdentifier().toString();
-			pluginFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName);
-			UpdateManagerUtils.removeFromFileSystem(pluginFile);
-		}
-
-		// clean features
-		UpdateManagerUtils.removeFromFileSystem(featureFile);
-		UpdateManagerUtils.removeFromFileSystem(new File(localSite.getURL().getFile()));
-		InstallRegistry.cleanup();
-	}
-
-	/**
-	 * 
-	 */
-	public void testHTTPSite() throws Exception {
-
-		ISite remoteSite =
-			SiteManager.getSite(new URL(SOURCE_HTTP_SITE, "nestedFeatureSiteTest/"),null);
-		IFeatureReference[] features = remoteSite.getFeatureReferences();
-		IFeature remoteFeature = null;
-
-		if (features == null || features.length == 0)
-			fail("No features on the site");
-
-		for (int i = 0; i < features.length; i++) {
-			if (features[i].getURL().toExternalForm().endsWith("rootfeature.jar")) {
-				remoteFeature = features[i].getFeature(null);
-				break;
-			}
-		}
-
-		assertNotNull("Cannot find rootfeature.jar on site", remoteFeature);
-		ISite localSite = SiteManager.getSite(TARGET_FILE_SITE,null);
-		localSite.install(remoteFeature, null, null);
-
-		// rootfeature.jar should not be in the local site
-		IFeatureReference[] localFeatures = localSite.getFeatureReferences();
-		if (localFeatures == null || localFeatures.length == 0)
-			fail("No features on the target site");
-
-		boolean found = false;
-		for (int i = 0; i < localFeatures.length; i++) {
-			if (localFeatures[i].getURL().toExternalForm().endsWith("rootfeature.jar")) {
-				found = true;
-				break;
-			}
-		}
-
-		assertTrue(
-			"Found rootfeature.jar on target site. Target site feature ref shouldnot contain JAR file",
-			!found);
-
-		// check root
-		String site = localSite.getURL().getFile();
-		IPluginEntry[] entries = remoteFeature.getPluginEntries();
-		assertTrue("no plugins entry", (entries != null && entries.length != 0));
-
-		String pluginName = entries[0].getVersionedIdentifier().toString();
-		File pluginFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName);
-		assertTrue(
-			"plugin files not installed locally:" + pluginFile,
-			pluginFile.exists());		
-		File pluginXMLFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName+ File.separator + "plugin.xml");
-		assertTrue(
-			"plugin info not installed locally:" + pluginXMLFile,
-			pluginXMLFile.exists());
-
-		File featureFile =
-			new File(
-				site,
-				Site.DEFAULT_INSTALLED_FEATURE_PATH
-					+ remoteFeature.getVersionedIdentifier().toString());
-		assertTrue("feature info not installed locally", featureFile.exists());
-
-		// clean plugins & feature
-		for (int i = 0; i < entries.length; i++) {
-			pluginName = entries[i].getVersionedIdentifier().toString();
-			pluginFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName);
-			UpdateManagerUtils.removeFromFileSystem(pluginFile);
-			InstallRegistry.unregisterPlugin(entries[i]);
-		}
-		UpdateManagerUtils.removeFromFileSystem(featureFile);
-
-		// verify child Feature
-		IFeature childFeature =
-			remoteFeature.getIncludedFeatureReferences()[0].getFeature(null);
-		entries = childFeature.getPluginEntries();
-		assertTrue("no plugins entry", (entries != null && entries.length != 0));
-		pluginName = entries[0].getVersionedIdentifier().toString();
-		pluginFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName);
-		assertTrue(
-			"plugin files not installed locally:" + pluginFile,
-			pluginFile.exists());
-		pluginXMLFile =
-			new File(
-				site,
-				Site.DEFAULT_PLUGIN_PATH + pluginName + File.separator + "plugin.xml");
-		assertTrue("plugin.xml file not installed locally", pluginXMLFile.exists());
-
-		featureFile =
-			new File(
-				site,
-				Site.DEFAULT_INSTALLED_FEATURE_PATH
-					+ childFeature.getVersionedIdentifier().toString());
-		assertTrue(
-			"feature info not installed locally:" + featureFile,
-			featureFile.exists());
-
-		// clean plugins
-		for (int i = 0; i < entries.length; i++) {
-			pluginName = entries[0].getVersionedIdentifier().toString();
-			pluginFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName);
-			UpdateManagerUtils.removeFromFileSystem(pluginFile);
-		}
-
-		// clean features
-		UpdateManagerUtils.removeFromFileSystem(featureFile);
-		UpdateManagerUtils.removeFromFileSystem(new File(localSite.getURL().getFile()));
-	}
-
-//	public void testInstall() throws Exception {
-//
-//		// cleanup local files...
-//		URL localURL = ((SiteLocal) SiteManager.getLocalSite()).getLocationURL();
-//		File localFile = new File(localURL.getFile());
-//		UpdateManagerUtils.removeFromFileSystem(localFile);
-//		InstallRegistry.cleanup();
-//
-//		URL INSTALL_SITE = null;
-//		try {
-//			INSTALL_SITE = new URL(SOURCE_FILE_SITE, "nestedFeatureSiteTest/site.xml");
-//		} catch (Exception e) {
-//			fail(e.toString());
-//			e.printStackTrace();
-//		}
-//
-//		ISite remoteSite = SiteManager.getSite(INSTALL_SITE,null);
-//		IFeatureReference[] features = remoteSite.getFeatureReferences();
-//		IFeature remoteFeature = null;
-//
-//		if (features == null || features.length == 0)
-//			fail("No features on the site");
-//
-//		for (int i = 0; i < features.length; i++) {
-//			if (features[i].getURL().toExternalForm().endsWith("rootfeature.jar")) {
-//				remoteFeature = features[i].getFeature(null);
-//				break;
-//			}
-//		}
-//
-//		assertNotNull("Cannot find rootfeature.jar on site", remoteFeature);
-//		ILocalSite localSite = SiteManager.getLocalSite();
-//		IConfiguredSite site =
-//			localSite.getCurrentConfiguration().getConfiguredSites()[0];
-//
-//		((ConfiguredSite)site).setUpdatable(true);
-//		site.install(remoteFeature, null, null);
-//
-//		IPluginEntry[] entries = remoteFeature.getPluginEntries();
-//		assertTrue("no plugins entry", (entries != null && entries.length != 0));
-//
-//		String sitePath = site.getSite().getURL().getFile();
-//		String pluginName = entries[0].getVersionedIdentifier().toString();
-//		File pluginFile = new File(sitePath, Site.DEFAULT_PLUGIN_PATH + pluginName);
-//		assertTrue("plugin info not installed locally"+pluginFile, pluginFile.exists());
-//
-//		File featureFile =
-//			new File(
-//				sitePath,
-//				Site.DEFAULT_INSTALLED_FEATURE_PATH
-//					+ remoteFeature.getVersionedIdentifier().toString());
-//		assertTrue("feature info not installed locally", featureFile.exists());
-//
-//		//cleanup
-//		File file =
-//			new File(
-//				site.getSite().getURL().getFile()
-//					+ File.separator
-//					+ Site.DEFAULT_INSTALLED_FEATURE_PATH
-//					+ remoteFeature.getVersionedIdentifier());
-//		// clean plugins
-//		for (int i = 0; i < entries.length; i++) {
-//			pluginName = entries[0].getVersionedIdentifier().toString();
-//			pluginFile =
-//				new File(
-//					site.getSite().getURL().getFile(),
-//					Site.DEFAULT_PLUGIN_PATH + pluginName);
-//			UpdateManagerUtils.removeFromFileSystem(pluginFile);
-//		}
-//
-//		UpdateManagerUtils.removeFromFileSystem(file);
-//		UpdateManagerUtils.removeFromFileSystem(pluginFile);
-//		UpdateManagerUtils.removeFromFileSystem(localFile);
-//		UpdateManagerUtils.removeFromFileSystem(
-//			new File(
-//				((InstallConfiguration) localSite.getCurrentConfiguration())
-//					.getURL()
-//					.getFile()));
-//	}
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/parser/AllParserTests.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/parser/AllParserTests.java
deleted file mode 100644
index 4cc01a9..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/parser/AllParserTests.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.parser;

-

-import org.eclipse.update.tests.UpdateManagerTestCase;

-import junit.framework.*;

-

-

-public class AllParserTests extends UpdateManagerTestCase {

-public AllParserTests(String name) {

-	super(name);

-}

-public static Test suite() {

-	TestSuite suite = new TestSuite();

-	suite.setName("Parsing Tests");

-	

-	// the following will take all teh test methods in teh class that start with 'test'

-	suite.addTest(new TestSuite(TestFeatureParse.class));

-	suite.addTest(new TestSuite(TestSiteParse.class));	

-	suite.addTest(new TestSuite(TestCategories.class));		

-	

-	// or you can specify the method

-	//suite.addTest(new TestGetFeature("methodThatDoesNotStartWithtest"));	

-	

-	return suite;

-}

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/parser/TestCategories.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/parser/TestCategories.java
deleted file mode 100644
index 8a2566c..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/parser/TestCategories.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.parser;

-import java.net.URL;

-

-import org.eclipse.update.core.*;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-public class TestCategories extends UpdateManagerTestCase {

-	/**

-	 * Constructor for Test1

-	 */

-	public TestCategories(String arg0) {

-		super(arg0);

-	}

-

-	public void testCategories() throws Exception {

-

-		URL remoteUrl = new URL(SOURCE_FILE_SITE + "xmls/site1/");

-		ISite remoteSite = SiteManager.getSite(remoteUrl,null);

-

-		ISiteFeatureReference[] feature = remoteSite.getFeatureReferences();

-		//ICategory[] categories = remoteSite.getCategories();

-

-		ICategory featureCategory = feature[0].getCategories()[0];

-

-		assertEquals("UML tools", featureCategory.getLabel());

-

-	}

-

-	public void testOrderedCategories() throws Exception {

-

-		URL remoteUrl = new URL(SOURCE_FILE_SITE + "xmls/site1/");

-		ISite remoteSite = SiteManager.getSite(remoteUrl,null);

-

-		ICategory[] categories = remoteSite.getCategories();

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

-			System.out.println("Cat ordered->" + categories[i].getName());

-		}

-

-		assertEquals("Eclipse tools", categories[1].getLabel());

-

-	}

-

-	public void testTranslatedCategories() throws Exception {

-

-		ISite remoteSite = SiteManager.getSite(SOURCE_HTTP_SITE,null);

-

-		ICategory[] categories = remoteSite.getCategories();

-

-		assertEquals("Required Drivers", categories[0].getLabel());

-

-	}

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/parser/TestFeatureParse.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/parser/TestFeatureParse.java
deleted file mode 100644
index 665980f..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/parser/TestFeatureParse.java
+++ /dev/null
@@ -1,132 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.parser;

-

-import java.net.URL;

-

-import org.eclipse.update.core.*;

-import org.eclipse.update.core.model.DefaultFeatureParser;

-import org.eclipse.update.core.model.FeatureModel;

-import org.eclipse.update.core.model.URLEntryModel;

-import org.eclipse.update.internal.core.*;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-import org.xml.sax.SAXParseException;

-

-public class TestFeatureParse extends UpdateManagerTestCase {

-

-	/**

-	 * Constructor for Test1

-	 */

-	public TestFeatureParse(String arg0) {

-		super(arg0);

-	}

-

-	public void testParse() throws Exception {

-

-		String xmlFile = "xmls/feature_1.0.0/";

-		ISite remoteSite = SiteManager.getSite(SOURCE_FILE_SITE, null);

-		URL url = UpdateManagerUtils.getURL(remoteSite.getURL(), xmlFile, null);

-

-		SiteFeatureReference ref = new SiteFeatureReference();

-		ref.setSite(remoteSite);

-		ref.setURL(url);

-		IFeature feature = ref.getFeature(null);

-

-		String prov = feature.getProvider();

-		assertEquals("Object Technology International", prov);

-

-	}

-

-	public void testParseValid1() throws Exception {

-

-		try {

-			URL remoteURL = new URL(SOURCE_FILE_SITE + "parsertests/feature1.xml");

-			DefaultFeatureParser parser = new DefaultFeatureParser();

-			parser.init(new FeatureExecutableFactory());

-			URL resolvedURL = URLEncoder.encode(remoteURL);

-			FeatureModel remoteFeature = parser.parse(resolvedURL.openStream());

-			remoteFeature.resolve(remoteURL, null);

-

-		} catch (SAXParseException e) {

-			fail("Exception should NOT be thrown");

-		}

-	}

-

-	public void testParseValid1bis() throws Exception {

-

-		try {

-			URL remoteURL = new URL(SOURCE_FILE_SITE + "parsertests/feature1bis.xml");

-			DefaultFeatureParser parser = new DefaultFeatureParser();

-			parser.init(new FeatureExecutableFactory());

-			URL resolvedURL = URLEncoder.encode(remoteURL);

-			FeatureModel remoteFeature = parser.parse(resolvedURL.openStream());

-			remoteFeature.resolve(remoteURL, null);

-

-		} catch (SAXParseException e) {

-			fail("Exception should NOT be thrown");

-		}

-	}

-

-	public void testParseValid2() throws Exception {

-

-		try {

-			URL remoteURL = new URL(SOURCE_FILE_SITE + "parsertests/feature2.xml");

-			DefaultFeatureParser parser = new DefaultFeatureParser();

-			parser.init(new FeatureExecutableFactory());

-			URL resolvedURL = URLEncoder.encode(remoteURL);

-			FeatureModel remoteFeature = parser.parse(resolvedURL.openStream());

-			remoteFeature.resolve(remoteURL, null);

-

-		} catch (SAXParseException e) {

-			fail("Exception should not be thrown" + e.getMessage());

-		}

-	}

-

-	public void testParseValid3() throws Exception {

-

-		try {

-			URL remoteURL = new URL(SOURCE_FILE_SITE + "parsertests/feature3.xml");

-			DefaultFeatureParser parser = new DefaultFeatureParser();

-			parser.init(new FeatureExecutableFactory());

-			URL resolvedURL = URLEncoder.encode(remoteURL);

-			FeatureModel remoteFeature = parser.parse(resolvedURL.openStream());

-			remoteFeature.resolve(remoteURL, null);

-

-			String copyrightString = remoteFeature.getCopyrightModel().getURL().getFile();

-			boolean resolved = copyrightString.indexOf(SiteManager.getOS()) != -1;

-			assertTrue("Copyright URL not resolved:" + copyrightString, resolved);

-		} catch (SAXParseException e) {

-			fail("Exception should not be thrown" + e.getMessage());

-		}

-	}

-

-	// parse type

-	public void testParseValid4() throws Exception {

-

-		try {

-			URL remoteURL = new URL(SOURCE_FILE_SITE + "parsertests/feature4.xml");

-			DefaultFeatureParser parser = new DefaultFeatureParser();

-			parser.init(new FeatureExecutableFactory());

-			URL resolvedURL = URLEncoder.encode(remoteURL);

-			FeatureModel remoteFeature = parser.parse(resolvedURL.openStream());

-			remoteFeature.resolve(remoteURL, null);

-

-			URLEntryModel[] models = remoteFeature.getDiscoverySiteEntryModels();

-			assertTrue("Discovery model is not a Web Model", models[0].getType()==IURLEntry.WEB_SITE);

-			URLEntryModel copyright = remoteFeature.getCopyrightModel();

-			assertTrue("Copyright model is not an Update Model", copyright.getType()==IURLEntry.UPDATE_SITE);

-			

-		} catch (SAXParseException e) {

-			fail("Exception should not be thrown" + e.getMessage());

-		}

-	}

-

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/parser/TestSiteParse.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/parser/TestSiteParse.java
deleted file mode 100644
index 1a970a0..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/parser/TestSiteParse.java
+++ /dev/null
@@ -1,288 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.parser;

-

-import java.io.File;

-import java.net.URL;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.update.core.*;

-import org.eclipse.update.core.model.*;

-import org.eclipse.update.internal.core.SiteFileFactory;

-import org.eclipse.update.internal.core.URLEncoder;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-import org.xml.sax.SAXParseException;

-

-public class TestSiteParse extends UpdateManagerTestCase {

-

-	/**

-	 * Constructor for Test1

-	 */

-	public TestSiteParse(String arg0) {

-		super(arg0);

-	}

-

-	public void testParse() throws Exception {

-

-		URL remoteUrl = new URL(SOURCE_FILE_SITE + "xmls/site1/");

-		ISite remoteSite = SiteManager.getSite(remoteUrl,null);

-

-		//IFeatureReference[] feature = remoteSite.getFeatureReferences();

-		//ICategory[] categories = remoteSite.getCategories();

-

-		String path = remoteUrl.getFile();

-		String path2 = remoteSite.getDescription().getURL().getFile();

-		assertEquals(new File(path + "index.html"), new File(path2));

-

-	}

-

-	public void testNumberOfFeatures() throws Exception {

-

-		URL remoteURL = new URL("http", getHttpHost(), getHttpPort(), bundle.getString("HTTP_PATH_2"));

-		ISite remoteSite = SiteManager.getSite(remoteURL,null);

-

-		IFeatureReference[] feature = remoteSite.getFeatureReferences();

-		assertEquals(feature.length, 2);

-

-	}

-

-	public void testParseValid1() throws Exception {

-

-		URL remoteURL = new URL(SOURCE_FILE_SITE + "parsertests/site.xml");

-		DefaultSiteParser parser = new DefaultSiteParser();

-		parser.init(new SiteFileFactory());

-		URL resolvedURL = URLEncoder.encode(remoteURL);

-		SiteModel remoteSite = parser.parse(resolvedURL.openStream());

-		remoteSite.resolve(remoteURL, null);

-

-		FeatureReferenceModel[] feature = remoteSite.getFeatureReferenceModels();

-		CategoryModel[] categories = remoteSite.getCategoryModels();

-		ArchiveReferenceModel[] archives = remoteSite.getArchiveReferenceModels();

-

-		assertTrue("Wrong number of features", feature.length == 6);

-		assertTrue("Wrong number of categories", categories.length == 3);

-		assertTrue("Wrong number of archives", archives.length == 0);

-

-		String path = new URL(SOURCE_FILE_SITE + "parsertests/").getFile();

-		String path2 = remoteSite.getDescriptionModel().getURL().getFile();

-		assertEquals(path + "index.html", path2);

-

-	}

-

-	public void testParseValid2() throws Exception {

-

-		URL remoteURL = new URL(SOURCE_FILE_SITE + "parsertests/reddot.xml");

-		DefaultSiteParser parser = new DefaultSiteParser();

-		parser.init(new SiteFileFactory());

-		URL resolvedURL = URLEncoder.encode(remoteURL);

-		SiteModel remoteSite = parser.parse(resolvedURL.openStream());

-		remoteSite.resolve(remoteURL, null);

-

-		FeatureReferenceModel[] feature = remoteSite.getFeatureReferenceModels();

-		CategoryModel[] categories = remoteSite.getCategoryModels();

-		ArchiveReferenceModel[] archives = remoteSite.getArchiveReferenceModels();

-

-		assertTrue("Wrong number of features", feature.length == 2);

-		assertTrue("Wrong number of categories", categories.length == 1);

-		assertTrue("Wrong number of archives", archives.length == 2);

-

-		String valideString = "This category contains all of the <currently> available versions of Red Dot feature. <greeting>Hello, world!</greeting>";

-		assertEquals(valideString, remoteSite.getCategoryModels()[0].getDescriptionModel().getAnnotation());

-

-		String path = new URL(SOURCE_FILE_SITE + "parsertests/").getFile();

-		String path2 = remoteSite.getDescriptionModel().getURL().getFile();

-		assertEquals(path + "index.html", path2);

-

-	}

-

-	public void testParseValid3() throws Exception {

-

-		URL remoteURL = new URL(SOURCE_FILE_SITE + "parsertests/reddot1.xml");

-		DefaultSiteParser parser = new DefaultSiteParser();

-		parser.init(new SiteFileFactory());

-		URL resolvedURL = URLEncoder.encode(remoteURL);

-		SiteModel remoteSite = parser.parse(resolvedURL.openStream());

-		remoteSite.resolve(remoteURL, null);

-

-		FeatureReferenceModel[] feature = remoteSite.getFeatureReferenceModels();

-		CategoryModel[] categories = remoteSite.getCategoryModels();

-		ArchiveReferenceModel[] archives = remoteSite.getArchiveReferenceModels();

-

-		assertTrue("Wrong number of features", feature.length == 2);

-		assertTrue("Wrong number of categories", categories.length == 1);

-		assertTrue("Wrong number of archives", archives.length == 2);

-

-		String valideString = "This category contains all of the <currently> available versions of Red Dot feature.";

-		assertEquals(valideString, remoteSite.getCategoryModels()[0].getDescriptionModel().getAnnotation());

-

-		String path = new URL(SOURCE_FILE_SITE + "parsertests/").getFile();

-		String path2 = remoteSite.getDescriptionModel().getURL().getFile();

-		assertEquals(path + "index.html", path2);

-

-	}

-

-	public void testParseValid4() throws Exception {

-

-		URL remoteURL = new URL(SOURCE_FILE_SITE + "SiteURLTest/data/site.xml");

-		DefaultSiteParser parser = new DefaultSiteParser();

-		parser.init(new SiteFileFactory());

-		URL resolvedURL = URLEncoder.encode(remoteURL);

-		SiteModel remoteSite = parser.parse(resolvedURL.openStream());

-		remoteSite.resolve(remoteURL, null);

-

-		FeatureReferenceModel[] feature = remoteSite.getFeatureReferenceModels();

-		//CategoryModel[] categories = remoteSite.getCategoryModels();

-		ArchiveReferenceModel[] archives = remoteSite.getArchiveReferenceModels();

-

-		assertTrue("Wrong number of features", feature.length == 2);

-		assertTrue("Wrong number of archives", archives.length == 3);

-

-		URL path1 = new URL(SOURCE_FILE_SITE + "SiteURLTest/data/artifacts/features/helpFeature.jar");

-		URL url1 = feature[0].getURL();

-		assertEquals(path1, url1);

-		URL path2 = new URL(SOURCE_FILE_SITE + "SiteURLTest/data/artifacts/plugins/help.jar");

-		assertEquals(path2, archives[0].getURL());

-

-		String path = new URL(SOURCE_FILE_SITE + "SiteURLTest/data/info/").getFile();

-		String path3 = remoteSite.getDescriptionModel().getURL().getFile();

-		assertEquals(path + "siteInfo.html", path3);

-

-	}

-

-	public void testParseValid5() throws Exception {

-

-		URL remoteURL = new URL(SOURCE_FILE_SITE + "parsertests/site2.xml");

-		DefaultSiteParser parser = new DefaultSiteParser();

-		parser.init(new SiteFileFactory());

-		URL resolvedURL = URLEncoder.encode(remoteURL);

-		SiteModel remoteSite = parser.parse(resolvedURL.openStream());

-		remoteSite.resolve(remoteURL, null);

-

-		FeatureReferenceModel[] featureRef = remoteSite.getFeatureReferenceModels();

-		//CategoryModel[] categories = remoteSite.getCategoryModels();

-		ArchiveReferenceModel[] archives = remoteSite.getArchiveReferenceModels();

-

-		assertTrue("Wrong number of features", featureRef.length == 1);

-		assertTrue("Wrong number of archives", archives.length == 0);

-

-		try {

-			((FeatureReference) featureRef[0]).getFeature(null);

-		} catch (CoreException e) {

-			Throwable e1 = e.getStatus().getException();

-			if (e1.getMessage().indexOf("not-eclipse") == -1) {

-				throw e;

-			}

-		}

-	}

-

-	public void testParseValid6() throws Exception {

-

-		URL remoteURL = new URL(SOURCE_FILE_SITE + "parsertests/site4.xml");

-		DefaultSiteParser parser = new DefaultSiteParser();

-		parser.init(new SiteFileFactory());

-		URL resolvedURL = URLEncoder.encode(remoteURL);

-		SiteModel remoteSite = parser.parse(resolvedURL.openStream());

-		remoteSite.resolve(remoteURL, null);

-

-		FeatureReferenceModel[] featureRef = remoteSite.getFeatureReferenceModels();

-		//CategoryModel[] categories = remoteSite.getCategoryModels();

-		ArchiveReferenceModel[] archives = remoteSite.getArchiveReferenceModels();

-

-		assertTrue("Wrong number of features", featureRef.length == 2);

-		assertTrue("Wrong number of archives", archives.length == 0);

-

-		try {

-			((FeatureReference) featureRef[0]).getFeature(null);

-		} catch (CoreException e) {

-			Throwable e1 = e.getStatus().getException();

-			String msg = e1.getMessage().replace(File.separatorChar, '/');

-			if (msg.indexOf("_1.0.0.jar/feature.xml") == -1) {

-				throw e;

-			}

-		}

-	}

-

-	public void testParseUnknownCategory() throws Exception {

-

-		URL remoteURL = new URL(SOURCE_FILE_SITE + "parsertests/site3.xml");

-		DefaultSiteParser parser = new DefaultSiteParser();

-		parser.init(new SiteFileFactory());

-		URL resolvedURL = URLEncoder.encode(remoteURL);

-		SiteModel remoteSite = parser.parse(resolvedURL.openStream());

-		remoteSite.resolve(remoteURL, null);

-

-		FeatureReferenceModel[] featureRef = remoteSite.getFeatureReferenceModels();

-		ICategory[] categories = ((SiteFeatureReference) featureRef[0]).getCategories();

-		assertTrue(categories.length == 0);

-	}

-

-	public void testParseValid7() throws Exception {

-

-		try {

-			URL remoteURL = new URL(SOURCE_FILE_SITE + "parsertests/site7.xml");

-			DefaultSiteParser parser = new DefaultSiteParser();

-			parser.init(new SiteFileFactory());

-			URL resolvedURL = URLEncoder.encode(remoteURL);

-			SiteModel remoteSite = parser.parse(resolvedURL.openStream());

-			remoteSite.resolve(remoteURL, null);

-

-		} catch (SAXParseException e) {

-			fail("Exception should not be thrown" + e.getMessage());

-		}

-	}

-

-	public void testParseValid8() throws Exception {

-

-		try {

-			URL remoteURL = new URL(SOURCE_FILE_SITE + "parsertests/site8.xml");

-			DefaultSiteParser parser = new DefaultSiteParser();

-			parser.init(new SiteFileFactory());

-			URL resolvedURL = URLEncoder.encode(remoteURL);

-			SiteModel remoteSite = parser.parse(resolvedURL.openStream());

-			remoteSite.resolve(remoteURL, null);

-

-		} catch (SAXParseException e) {

-			fail("Exception should not be thrown" + e.getMessage());

-		}

-	}

-

-	public void testParseValid9() throws Exception {

-

-		try {

-			URL remoteURL = new URL(SOURCE_FILE_SITE + "parsertests/site9.xml");

-			DefaultSiteParser parser = new DefaultSiteParser();

-			parser.init(new SiteFileFactory());

-			URL resolvedURL = URLEncoder.encode(remoteURL);

-			SiteModel remoteSite = parser.parse(resolvedURL.openStream());

-			remoteSite.resolve(remoteURL, null);

-		} catch (SAXParseException e) {

-			fail("Exception should not be thrown" + e.getMessage());

-		}

-	}

-

-	public void testParseValid10() throws Exception {

-

-		SiteModel remoteSite = null;

-		try {

-			URL remoteURL = new URL(SOURCE_FILE_SITE + "parsertests/site10.xml");

-			DefaultSiteParser parser = new DefaultSiteParser();

-			parser.init(new SiteFileFactory());

-			URL resolvedURL = URLEncoder.encode(remoteURL);

-			remoteSite = parser.parse(resolvedURL.openStream());

-			remoteSite.resolve(remoteURL, null);

-		} catch (SAXParseException e) {

-			fail("Exception should not be thrown" + e.getMessage());

-		}

-		FeatureReferenceModel[] models = remoteSite.getFeatureReferenceModels();

-		assertEquals("Invalid versioned identifier", models[0].getFeatureIdentifier(), "org.eclipse.test.feature");

-	}

-

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/perfms/AllPerformanceTests.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/perfms/AllPerformanceTests.java
deleted file mode 100644
index e669b7d..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/perfms/AllPerformanceTests.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.tests.perfms;
-
-import org.eclipse.update.tests.UpdateManagerTestCase;
-import junit.framework.*;
-
-
-public class AllPerformanceTests extends UpdateManagerTestCase {
-public AllPerformanceTests(String name) {
-	super(name);
-}
-public static Test suite() {
-	TestSuite suite = new TestSuite();
-	suite.setName("Update Performance Tests");
-	
-	// the following will take all teh test methods in the class that start with 'test'
-	suite.addTest(new TestSuite(TestStartup.class));
-	return suite;
-}
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/perfms/TestStartup.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/perfms/TestStartup.java
deleted file mode 100644
index cf2d9e1..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/perfms/TestStartup.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.tests.perfms;
-//import java.net.*;
-
-import java.io.*;
-import java.net.*;
-
-import org.eclipse.update.configurator.*;
-import org.eclipse.update.internal.configurator.*;
-import org.eclipse.test.performance.*;
-import org.eclipse.update.tests.*;
-
-
-
-public class TestStartup extends UpdateManagerTestCase {
-	public TestStartup(String arg0) {
-		super(arg0);
-	}
-	
-
-	public void testConfigurationCreation() {
-		Performance perf= Performance.getDefault();
-		PerformanceMeter performanceMeter= perf.createPerformanceMeter(perf.getDefaultScenarioId(this));
-		perf.tagAsGlobalSummary(performanceMeter, "Configuration creation", Dimension.ELAPSED_PROCESS);
-		
-		try {
-			for (int i= 0; i < 10; i++) {
-				performanceMeter.start();
-				try {
-					URL platformXml = new URL("file", "",dataPath + "/" + "perf/platform.xml");
-					IPlatformConfiguration config = new PlatformConfigurationFactory().getPlatformConfiguration(platformXml);
-				} catch (IOException e) {
-					System.out.println("Cannot create configuration for performance measurement");
-				}
-				performanceMeter.stop();
-	 		}
-			performanceMeter.commit();
-			perf.assertPerformance(performanceMeter);
-	 	} finally {
-			performanceMeter.dispose();
-	 	}
-	}
-	
-	public void testConfigurationDetection() {
-		Performance perf= Performance.getDefault();
-		PerformanceMeter performanceMeter= perf.createPerformanceMeter(perf.getDefaultScenarioId(this));
-		perf.tagAsGlobalSummary(performanceMeter, "Configuration detection", Dimension.ELAPSED_PROCESS);
-
-		try {
-			for (int i= 0; i < 10; i++) {
-				performanceMeter.start();
-				try {
-					URL siteURL = new URL("file", "",dataPath + "/" + "perf/eclipse");
-					SiteEntry site = new SiteEntry(siteURL);
-					site.loadFromDisk(0);
-				} catch (Exception e) {
-					System.out.println("Cannot create site entry for performance measurement");
-				}
-				performanceMeter.stop();
-	 		}
-			performanceMeter.commit();
-			perf.assertPerformance(performanceMeter);
-	 	} finally {
-			performanceMeter.dispose();
-	 	}
-	}
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/reconciliation/AllReconciliationTests.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/reconciliation/AllReconciliationTests.java
deleted file mode 100644
index 8b9d17a..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/reconciliation/AllReconciliationTests.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.tests.reconciliation;
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.update.tests.UpdateManagerTestCase;
-
-/**
- * Manages the API tests
- */
-public class AllReconciliationTests extends UpdateManagerTestCase {
-	/**
-	 * Constructor
-	 */
-	public AllReconciliationTests(String name) {
-		super(name);
-	}
-	
-	/**
-	 * List of API tests
-	 */
-	public static Test suite() throws Exception {
-		TestSuite suite = new TestSuite();
-		suite.setName("API Tests");
-
-
-		suite.addTest(new TestSuite(TestSiteReconciliation.class));
-
-		return suite;
-	}
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/reconciliation/TestSiteReconciliation.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/reconciliation/TestSiteReconciliation.java
deleted file mode 100644
index 8b1b0e1..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/reconciliation/TestSiteReconciliation.java
+++ /dev/null
@@ -1,169 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.tests.reconciliation;
-import java.io.*;
-import java.net.*;
-
-import org.eclipse.update.configuration.*;
-import org.eclipse.update.configurator.*;
-import org.eclipse.update.configurator.IPlatformConfiguration;
-import org.eclipse.update.configurator.IPlatformConfiguration.*;
-import org.eclipse.update.core.*;
-import org.eclipse.update.internal.core.*;
-import org.eclipse.update.tests.*;
-
-public class TestSiteReconciliation extends UpdateManagerTestCase {
-	
-
-	
-
-	/**
-	 * Test the getFeatures()
-	 */
-	public TestSiteReconciliation(String arg0) {
-		super(arg0);
-	}
-
-	private void addConfigSite(int policy, URL url,String[] listOfPlugins) throws Exception {
-		String xmlFile = ((SiteLocal)SiteManager.getLocalSite()).getLocationURL().getFile();
-		UpdateManagerUtils.removeFromFileSystem(new File(xmlFile));		
-		InternalSiteManager.localSite=null;
-		// get new config object
-		IPlatformConfiguration cfig = ConfiguratorUtils.getCurrentPlatformConfiguration();
-		ISitePolicy p1 = cfig.createSitePolicy(policy, listOfPlugins);	
-		ISiteEntry s1 = cfig.createSiteEntry(url,p1);
-		cfig.configureSite(s1);	
-	}
-	
-	private void removeConfigSite(URL url) throws Exception {
-		// get new config object
-		IPlatformConfiguration cfig = ConfiguratorUtils.getCurrentPlatformConfiguration();
-		ISiteEntry s1 = cfig.findConfiguredSite(url);
-		assertNotNull("Unable to find site entry:"+url,s1);
-		cfig.unconfigureSite(s1);
-		cfig.save();
-	}	
-	/**
-	 * Site 1 contains a feature which needs a plugin taht is not on the path when we start
-	 * it will never be configured
-	 */
-	public void testNewSiteInclude1() throws Exception {
-	
-		int policy  = ISitePolicy.USER_INCLUDE;
-		URL url = new URL("file",null,dataPath+"reconciliationSites/site1/");
-		String[] plugins = new String[]{};
-		addConfigSite(policy,url, plugins);
-
-		ILocalSite local = SiteManager.getLocalSite();
-		((SiteLocal)local).setStamp(0);
-		IConfiguredSite[] newSites = local.getCurrentConfiguration().getConfiguredSites();
-		IConfiguredSite newSite = null;
-		for (int i = 0; i < newSites.length; i++) {
-			if (UpdateManagerUtils.sameURL(newSites[i].getSite().getURL(),url)){
-				newSite = newSites[i];
-			}
-		}
-		
-		if (newSite==null) fail("Site not found in configuration");
-		
-		IFeatureReference[] ref = newSite.getConfiguredFeatures();
-		assertEquals("Wrong number of configured features",0,ref.length);		
-		ref = ((ConfiguredSite)newSite).getConfigurationPolicy().getUnconfiguredFeatures();
-		assertEquals("Wrong number of unconfigured features",0,ref.length);		
-		
-		removeConfigSite(url);
-	}
-
-	public void testNewSiteExclude1() throws Exception {
-		
-		int policy  = ISitePolicy.USER_EXCLUDE;
-		URL url = new URL("file",null,dataPath+"reconciliationSites/site1/");
-		String[] plugins = new String[]{};
-		addConfigSite(policy,url, plugins);
-		
-		ILocalSite local = SiteManager.getLocalSite();
-		((SiteLocal)local).setStamp(0);		
-		IConfiguredSite[] newSites = local.getCurrentConfiguration().getConfiguredSites();
-		IConfiguredSite newSite = null;
-		for (int i = 0; i < newSites.length; i++) {
-			if (UpdateManagerUtils.sameURL(newSites[i].getSite().getURL(),url)){
-				newSite = newSites[i];
-			}
-		}
-		
-		if (newSite==null) fail("Site not found in configuration");
-		
-		IFeatureReference[] ref = newSite.getConfiguredFeatures();
-		assertEquals("Wrong number of configured features",0,ref.length);		
-		ref = ((ConfiguredSite)newSite).getConfigurationPolicy().getUnconfiguredFeatures();
-		assertEquals("Wrong number of unconfigured features",0,ref.length);				
-		removeConfigSite(url);
-	}
-
-	/**
-	 * Site 2 contains a feature which needs a plugin taht is on the path when we start
-	 * it will be configured
-	 */
-	public void testNewSiteInclude2() throws Exception {
-		
-		int policy  = ISitePolicy.USER_INCLUDE;
-		URL url = new URL("file",null,dataPath+"reconciliationSites/site2/");
-		String[] plugins = new String[]{};
-		addConfigSite(policy,url, plugins);
-		ILocalSite local = SiteManager.getLocalSite();
-		((SiteLocal)local).setStamp(0);		
-		IConfiguredSite[] newSites = local.getCurrentConfiguration().getConfiguredSites();
-		IConfiguredSite newSite = null;
-		for (int i = 0; i < newSites.length; i++) {
-			if (UpdateManagerUtils.sameURL(newSites[i].getSite().getURL(),url)){
-				newSite = newSites[i];
-			}
-		}
-		
-		if (newSite==null) fail("Site not found in configuration");
-		
-		IFeatureReference[] ref = newSite.getConfiguredFeatures();
-		assertEquals("Wrong number of configured features",0,ref.length);
-		ref = ((ConfiguredSite)newSite).getConfigurationPolicy().getUnconfiguredFeatures();
-		assertEquals("Wrong number of unconfigured features",0,ref.length);
-		
-		removeConfigSite(url);
-	}
-
-
-
-	public void testNewSiteExclude2() throws Exception {
-		
-		int policy  = ISitePolicy.USER_EXCLUDE;
-		URL url = new URL("file",null,dataPath+"reconciliationSites/site2/");
-		String[] plugins = new String[]{};
-		addConfigSite(policy,url, plugins);
-		ILocalSite local = SiteManager.getLocalSite();
-		((SiteLocal)local).setStamp(0);		
-		IConfiguredSite[] newSites = local.getCurrentConfiguration().getConfiguredSites();
-		IConfiguredSite newSite = null;
-		for (int i = 0; i < newSites.length; i++) {
-			if (UpdateManagerUtils.sameURL(newSites[i].getSite().getURL(),url)){
-				newSite = newSites[i];
-			}
-		}
-		
-		if (newSite==null) fail("Site not found in configuration");
-		
-		IFeatureReference[] ref = newSite.getConfiguredFeatures();
-		assertEquals("Wrong number of configured features",0,ref.length);
-		ref = ((ConfiguredSite)newSite).getConfigurationPolicy().getUnconfiguredFeatures();
-		assertEquals("Wrong number of unconfigured features",0,ref.length);
-
-		removeConfigSite(url);
-	}
-}
-
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/AllRegularInstallTests.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/AllRegularInstallTests.java
deleted file mode 100644
index d857b55..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/AllRegularInstallTests.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.regularInstall;

-

-import org.eclipse.update.tests.UpdateManagerTestCase;

-import junit.framework.*;

-

-

-public class AllRegularInstallTests extends UpdateManagerTestCase {

-public AllRegularInstallTests(String name) {

-	super(name);

-}

-public static Test suite() {

-	TestSuite suite = new TestSuite();

-	suite.setName("Regular Install Tests");

-	

-	// the following will take all teh test methods in teh class that start with 'test'

-

-	suite.addTest(new TestSuite(TestInstall.class));

-	suite.addTest(new TestSuite(TestInstallURLSIteXML.class));	

-	suite.addTest(new TestSuite(TestSpaceInInstall.class));	

-	suite.addTest(new TestSuite(TestGetFeature.class));

-	suite.addTest(new TestSuite(TestExecutableInstall.class));	

-	suite.addTest(new TestSuite(TestExecutablePackagedInstall.class));		

-	suite.addTest(new TestSuite(TestDataEntryInstall.class));

-	suite.addTest(new TestSuite(TestLocalSite.class));		

-	

-	// or you can specify the method

-	//suite.addTest(new TestGetFeature("methodThatDoesNotStartWithtest"));	

-	

-	return suite;

-}

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/MultipleTestLocalSite.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/MultipleTestLocalSite.java
deleted file mode 100644
index f0325b2..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/MultipleTestLocalSite.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.regularInstall;

-

-import org.eclipse.update.tests.UpdateManagerTestCase;

-import junit.framework.*;

-

-

-public class MultipleTestLocalSite extends UpdateManagerTestCase {

-public MultipleTestLocalSite(String name) {

-	super(name);

-}

-public static Test suite() {

-	TestSuite suite = new TestSuite();

-	suite.setName("Multiple Test Local Site");

-	

-	// the following will take all teh test methods in teh class that start with 'test'

-	

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

-		suite.addTest(new TestSuite(TestLocalSite.class));

-	}

-	

-	return suite;

-}

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestDataEntryInstall.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestDataEntryInstall.java
deleted file mode 100644
index c22e94c..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestDataEntryInstall.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.regularInstall;

-import java.io.File;

-import java.net.URL;

-

-import org.eclipse.update.core.*;

-import org.eclipse.update.internal.core.UpdateManagerUtils;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-public class TestDataEntryInstall extends UpdateManagerTestCase {

-	/**

-	 * Constructor for Test1

-	 */

-	public TestDataEntryInstall(String arg0) {

-		super(arg0);

-	}

-

-	/**

-	 * With site.xml

-	 */

-	public void testDataEntrySite() throws Exception {

-

-		//cleanup target 

-		File target = new File(TARGET_FILE_SITE.getFile());

-		UpdateManagerUtils.removeFromFileSystem(target);

-		

-		URL newURL =new File(dataPath + "dataEntrySiteTest/site1/site.xml").toURL();

-		ISite remoteSite = SiteManager.getSite(newURL,null);

-		IFeatureReference[] featuresRef = remoteSite.getFeatureReferences();

-		ISite localSite = SiteManager.getSite(TARGET_FILE_SITE,null);

-		IFeature remoteFeature = null;

-		

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

-			remoteFeature = featuresRef[i].getFeature(null);

-			localSite.install(remoteFeature, null,null);

-

-			// verify

-			String site = localSite.getURL().getFile();

-			INonPluginEntry[] entries = remoteFeature.getNonPluginEntries();

-			assertTrue("no data entry", (entries != null && entries.length != 0));

-			String pluginName = entries[0].getIdentifier().toString();

-			File pluginFile = new File(site, Site.DEFAULT_INSTALLED_FEATURE_PATH + remoteFeature.getVersionedIdentifier().toString()+File.separator+ pluginName);

-			assertTrue("data files not installed locally:"+pluginFile, pluginFile.exists());

-		} 

-

-		//cleanup target 

-		UpdateManagerUtils.removeFromFileSystem(target);

-

-

-	}

-	

-	

-	/**

-	 * With site.xml

-	 */

-	public void testDataEntrySitePackaged() throws Exception {

-

-		//cleanup target 

-		File target = new File(TARGET_FILE_SITE.getFile());

-		UpdateManagerUtils.removeFromFileSystem(target);

-		

-		URL newURL =new File(dataPath + "dataEntrySiteTest/site2/site.xml").toURL();

-		ISite remoteSite = SiteManager.getSite(newURL,null);

-		IFeatureReference[] featuresRef = remoteSite.getFeatureReferences();

-		ISite localSite = SiteManager.getSite(TARGET_FILE_SITE,null);

-		IFeature remoteFeature = null;

-		

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

-			remoteFeature = featuresRef[i].getFeature(null);

-			localSite.install(remoteFeature, null,null);

-

-			// verify

-			String site = localSite.getURL().getFile();

-			INonPluginEntry[] entries = remoteFeature.getNonPluginEntries();

-			assertTrue("no data entry", (entries != null && entries.length != 0));

-			entries[0].getIdentifier().toString();

-			File pluginFile = new File(site, Site.DEFAULT_INSTALLED_FEATURE_PATH + remoteFeature.getVersionedIdentifier().toString()+File.separator+ "nondata"+File.separator+"file1.zip");

-			assertTrue("Data file inside the jar not installed locally:"+pluginFile, pluginFile.exists());

-			pluginFile = new File(site, Site.DEFAULT_INSTALLED_FEATURE_PATH + remoteFeature.getVersionedIdentifier().toString()+File.separator+ "file.zip");

-			assertTrue("Data file outside the jar not installed locally:"+pluginFile, pluginFile.exists());

-			

-		} 

-		

-

-		//cleanup target 

-		UpdateManagerUtils.removeFromFileSystem(target);

-

-

-	}	

-	

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestExecutableInstall.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestExecutableInstall.java
deleted file mode 100644
index b99411f..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestExecutableInstall.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.regularInstall;

-

-import java.io.File;

-import java.util.Locale;

-

-import org.eclipse.update.core.*;

-import org.eclipse.update.internal.core.*;

-import org.eclipse.update.internal.core.UpdateManagerUtils;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-

-public class TestExecutableInstall extends UpdateManagerTestCase {

-

-	/**

-	 * Constructor for Test1

-	 */

-	public TestExecutableInstall(String arg0) {

-		super(arg0);

-	}

-	

-

-

-	public void testFileSite() throws Exception{

-		

-		//cleanup target 

-		File target = new File(TARGET_FILE_SITE.getFile());

-		UpdateManagerUtils.removeFromFileSystem(target);		

-		InstallRegistry.cleanup();

-		

-		ISite remoteSite = SiteManager.getSite(SOURCE_FILE_SITE_INSTALLED,null);

-		IFeatureReference[] remoteFeatureReference = remoteSite.getFeatureReferences();

-		IFeature remoteFeature = remoteFeatureReference[0].getFeature(null);

-		ISite localSite = SiteManager.getSite(TARGET_FILE_SITE,null);

-		assertNotNull(remoteFeature);

-		remove(remoteFeature,localSite);		

-		localSite.install(remoteFeature,null,null);

-		

-		// verify

-		String site = localSite.getURL().getFile();

-		IPluginEntry[] entries = remoteFeature.getRawPluginEntries();

-		assertTrue("no plugins entry",(entries!=null && entries.length!=0));

-		String pluginName= entries[0].getVersionedIdentifier().toString();

-		File pluginFile = new File(site,Site.DEFAULT_PLUGIN_PATH+pluginName);

-		if (Locale.getDefault().toString().indexOf("us") != -1)

-			assertTrue("plugin files not installed locally",pluginFile.exists());

-

-		File featureFile = new File(site,Site.DEFAULT_INSTALLED_FEATURE_PATH+remoteFeature.getVersionedIdentifier().toString());

-		assertTrue("feature info not installed locally:"+featureFile,featureFile.exists());

-		assertTrue("feature is a file, not a directory:"+featureFile,featureFile.isDirectory());

-

-		

-		File featureFileXML = new File(site,Site.DEFAULT_INSTALLED_FEATURE_PATH+remoteFeature.getVersionedIdentifier().toString()+File.separator+"feature.xml");

-		assertTrue("feature info not installed locally: no feature.xml",featureFileXML.exists());

-

-		//cleanup target 

-		UpdateManagerUtils.removeFromFileSystem(target);

-		

-	}

-

-}

-

-

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestExecutablePackagedInstall.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestExecutablePackagedInstall.java
deleted file mode 100644
index 4385887..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestExecutablePackagedInstall.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.regularInstall;

-import java.io.File;

-import java.net.URL;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.update.core.*;

-import org.eclipse.update.internal.core.*;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-public class TestExecutablePackagedInstall extends UpdateManagerTestCase {

-	/**

-	 * Constructor for Test1

-	 */

-	public TestExecutablePackagedInstall(String arg0) {

-		super(arg0);

-	}

-

-	/**

-	 * With site.xml

-	 */

-	public void testFilePackageExecutableFeatureSite() throws Exception {

-

-		//cleanup target  

-		File target = new File(TARGET_FILE_SITE.getFile());

-		UpdateManagerUtils.removeFromFileSystem(target);

-		

-		URL newURL = new File(dataPath + "ExecutableFeaturePackagedSite/data2/site.xml").toURL();

-		ISite remoteSite = SiteManager.getSite(newURL,null);

-		IFeatureReference[] featuresRef = remoteSite.getFeatureReferences();

-		ISite localSite = SiteManager.getSite(TARGET_FILE_SITE,null);

-		IFeature remoteFeature = null;

-		

-		// at least one executable feature and on packaged

-		boolean execFeature = false;

-		boolean packFeature = false;

-

-		if (featuresRef.length==0) fail ("no feature found");

-	

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

-			remoteFeature = featuresRef[i].getFeature(null);

-			remove(remoteFeature,localSite);			

-			localSite.install(remoteFeature, null,null);

-			

-			if (remoteFeature.getFeatureContentProvider() instanceof FeaturePackagedContentProvider) packFeature = true;

-			if (remoteFeature.getFeatureContentProvider() instanceof FeatureExecutableContentProvider) execFeature = true;

-

-			// verify

-			String site = localSite.getURL().getFile();

-			IPluginEntry[] entries = remoteFeature.getRawPluginEntries();

-			assertTrue("no plugins entry", (entries != null && entries.length != 0));

-			String pluginName = entries[0].getVersionedIdentifier().toString();

-			File pluginFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName);

-			assertTrue("plugin files not installed locally:"+pluginFile, pluginFile.exists());

-

-			File featureFile = new File(site, Site.DEFAULT_INSTALLED_FEATURE_PATH + remoteFeature.getVersionedIdentifier().toString());

-			assertTrue("feature info not installed locally:"+featureFile, featureFile.exists());

-

-			File featureFileXML = new File(site, Site.DEFAULT_INSTALLED_FEATURE_PATH + remoteFeature.getVersionedIdentifier().toString() + File.separator + "feature.xml");

-			assertTrue("feature info not installed locally: no feature.xml", featureFileXML.exists());

-		}

-

-		if (!execFeature && !packFeature){

-			fail("cannot find one executable and one package feature on teh site");

-		}

-

-		//cleanup target 

-		UpdateManagerUtils.removeFromFileSystem(target);

-

-

-	}

-	

-	

-	/**

-	 * Without site.xml

-	 */

-	public void testFileNoSiteXMLSite() throws Exception {

-

-		//cleanup target 

-		File target = new File(TARGET_FILE_SITE.getFile());

-		UpdateManagerUtils.removeFromFileSystem(target);

-		

-		URL newURL = new File(dataPath + "ExecutableFeaturePackagedSite/data/").toURL();

-		ISite remoteSite = SiteManager.getSite(newURL,null);

-		IFeatureReference[] featuresRef = remoteSite.getFeatureReferences();

-		ISite localSite = SiteManager.getSite(TARGET_FILE_SITE,null);

-		IFeature remoteFeature = null;

-		

-		// at least one executable feature and on packaged

-		boolean execFeature = false;

-		boolean packFeature = false;

-

-		if (featuresRef.length==0) fail ("no feature found");

-	

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

-			try {

-				remoteFeature = featuresRef[i].getFeature(null);

-			} catch (CoreException e){

-				Throwable e1 = e.getStatus().getException();

-				String msg = e1.getMessage().replace(File.separatorChar,'/');

-				if (msg.indexOf("CVS/feature.xml")==-1){

-					throw e;

-				}				

-			}

-			if (remoteFeature!=null){

-				remove(remoteFeature,localSite);

-				localSite.install(remoteFeature,null, null);

-				

-				if (remoteFeature.getFeatureContentProvider() instanceof FeaturePackagedContentProvider) packFeature = true;

-				if (remoteFeature.getFeatureContentProvider() instanceof FeatureExecutableContentProvider) execFeature = true;

-	

-				// verify

-				String site = localSite.getURL().getFile();

-				IPluginEntry[] entries = remoteFeature.getRawPluginEntries();

-				assertTrue("no plugins entry", (entries != null && entries.length != 0));

-				String pluginName = entries[0].getVersionedIdentifier().toString();

-				File pluginFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName);

-				assertTrue("plugin files not installed locally:"+pluginFile, pluginFile.exists());

-	

-				File featureFile = new File(site, Site.DEFAULT_INSTALLED_FEATURE_PATH + remoteFeature.getVersionedIdentifier().toString());

-				assertTrue("feature info not installed locally:"+featureFile, featureFile.exists());

-	

-				File featureFileXML = new File(site, Site.DEFAULT_INSTALLED_FEATURE_PATH + remoteFeature.getVersionedIdentifier().toString() + File.separator + "feature.xml");

-				assertTrue("feature info not installed locally: no feature.xml", featureFileXML.exists());

-			}

-		}

-

-		if (!execFeature && !packFeature){

-			fail("cannot find one executable and one package feature on teh site");

-		}

-

-		//cleanup target 

-		UpdateManagerUtils.removeFromFileSystem(target);

-

-

-	}

-	

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestGetFeature.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestGetFeature.java
deleted file mode 100644
index 518a0eb..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestGetFeature.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.regularInstall;

-

-import org.eclipse.update.core.*;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-

-public class TestGetFeature extends UpdateManagerTestCase {

-

-	/**

-	 * Test the getFeatures()

-	 */

-	public TestGetFeature(String arg0) {

-		super(arg0);

-	}

-	

-	

-	public void testFeatureFileSite() throws Exception{

-		

-		ISite remoteSite = SiteManager.getSite(SOURCE_FILE_SITE,null);

-		IFeatureReference[] remoteFeatures = remoteSite.getFeatureReferences();

-		if (remoteFeatures==null || remoteFeatures.length==0) fail("No feature available for testing");

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

-			System.out.println("feature:"+remoteFeatures[i].getURL().toExternalForm());

-		}

-	}

-

-

-	public void testFeatureHTTPSite() throws Exception{ 

-		

-		ISite remoteSite = SiteManager.getSite(SOURCE_HTTP_SITE,null);

-		IFeatureReference[] remoteFeatures = remoteSite.getFeatureReferences();

-		if (remoteFeatures==null || remoteFeatures.length==0) fail("No feature available for testing");		

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

-			System.out.println("feature:"+remoteFeatures[i].getURL().toExternalForm());

-		}

-	}

-}

-

-

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestInstall.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestInstall.java
deleted file mode 100644
index b999543..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestInstall.java
+++ /dev/null
@@ -1,313 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.regularInstall;

-import java.io.File;

-import java.net.MalformedURLException;

-import java.net.URL;

-import java.util.Locale;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.update.core.*;

-import org.eclipse.update.configuration.*;

-import org.eclipse.update.internal.core.*;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-public class TestInstall extends UpdateManagerTestCase {

-

-	/**

-	 * 

-	 */

-	public static final String PACKAGED_FEATURE_TYPE = "packaged"; //$NON-NLS-1$

-

-	public class Listener implements IConfiguredSiteChangedListener {

-

-		public boolean notified = false;

-

-		public void featureInstalled(IFeature feature) {

-			notified = true;

-			System.out.println("Notified DefaultFeature Installed");

-		}

-

-		public void featureRemoved(IFeature feature) {

-		}

-

-		public void featureConfigured(IFeature feature) {

-		};

-		public void featureUnconfigured(IFeature feature) {

-		};

-

-		public boolean isNotified() {

-			return notified;

-		}

-	}

-

-	/**

-	 * Constructor for Test1

-	 */

-	public TestInstall(String arg0) {

-		super(arg0);

-	}

-

-	private IFeature getFeature1(ISite site)

-		throws MalformedURLException, CoreException {

-		SiteFeatureReference ref = new SiteFeatureReference();

-		ref.setSite(site);

-		ref.setURLString("features/org.eclipse.update.core.tests.feature1_1.0.4.jar");

-		ref.setType(getDefaultInstallableFeatureType());

-		ref.resolve(site.getURL(), null);

-		return ref.getFeature(null);

-	}

-

-	public void testFileSite() throws Exception {

-

-		ISite remoteSite = SiteManager.getSite(SOURCE_FILE_SITE,null);

-		IFeature remoteFeature = getFeature1(remoteSite);

-		ISite localSite = SiteManager.getSite(TARGET_FILE_SITE,null);

-		localSite.install(remoteFeature, null, null);

-

-		// verify

-		String site = localSite.getURL().getFile();

-		IPluginEntry[] entries = remoteFeature.getPluginEntries();

-		assertTrue("no plugins entry", (entries != null && entries.length != 0));

-		String pluginName = entries[0].getVersionedIdentifier().toString();

-		File pluginFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName);

-		assertTrue("plugin files not installed locally:"+pluginFile, pluginFile.exists());

-		File pluginXMLFile =

-			new File(

-				site,

-				Site.DEFAULT_PLUGIN_PATH + pluginName + File.separator + "plugin.xml");

-		assertTrue("plugin.xml file not installed locally", pluginXMLFile.exists());

-

-		File featureFile =

-			new File(

-				site,

-				Site.DEFAULT_INSTALLED_FEATURE_PATH

-					+ remoteFeature.getVersionedIdentifier().toString());

-		assertTrue(

-			"feature info not installed locally:" + featureFile,

-			featureFile.exists());

-		//cleanup

-		UpdateManagerUtils.removeFromFileSystem(pluginFile);

-		UpdateManagerUtils.removeFromFileSystem(new File(localSite.getURL().getFile()));

-

-	}

-

-	/**

-	 * 

-	 */

-	public void testHTTPSite() throws Exception {

-

-		ISite remoteSite = SiteManager.getSite(SOURCE_HTTP_SITE,null);

-		IFeatureReference[] features = remoteSite.getFeatureReferences();

-		IFeature remoteFeature = null;

-

-		if (features == null || features.length == 0)

-			fail("No features on the site");

-

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

-			if (features[i].getURL().toExternalForm().endsWith("features2.jar")) {

-				remoteFeature = features[i].getFeature(null);

-				break;

-			}

-		}

-

-		assertNotNull("Cannot find feature2.jar on site", remoteFeature);

-		ISite localSite = SiteManager.getSite(TARGET_FILE_SITE,null);

-		localSite.install(remoteFeature, null, null);

-

-		// feature2.jar should not be in the local site

-		IFeatureReference[] localFeatures = localSite.getFeatureReferences();

-		if (localFeatures == null || localFeatures.length == 0)

-			fail("No features on the target site");

-

-		boolean found = false;

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

-			if (localFeatures[i].getURL().toExternalForm().endsWith("features2.jar")) {

-				found = true;

-				break;

-			}

-		}

-

-		assertTrue(

-			"Found feature2.jar on target site. Target site feature ref shouldnot contain JAR file",

-			!found);

-

-		// check

-		String site = localSite.getURL().getFile();

-		IPluginEntry[] entries = remoteFeature.getPluginEntries();

-		assertTrue("no plugins entry", (entries != null && entries.length != 0));

-

-		String pluginName = entries[0].getVersionedIdentifier().toString();

-		File pluginFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName);

-		assertTrue("plugin info not installed locally:"+pluginFile, pluginFile.exists());

-

-		File featureFile =

-			new File(

-				site,

-				Site.DEFAULT_INSTALLED_FEATURE_PATH

-					+ remoteFeature.getVersionedIdentifier().toString());

-		assertTrue("feature info not installed locally", featureFile.exists());

-

-		//localSite.save();

-

-		//cleanup

-		UpdateManagerUtils.removeFromFileSystem(pluginFile);

-		UpdateManagerUtils.removeFromFileSystem(new File(localSite.getURL().getFile()));

-	}

-

-	public void testInstall() throws Exception {

-

-		// cleanup local files...

-		File localFile = new File(((SiteLocal)SiteManager.getLocalSite()).getLocationURL().getFile());

-		UpdateManagerUtils.removeFromFileSystem(localFile);

-

-		URL INSTALL_SITE = null;

-		try {

-			INSTALL_SITE =

-				new URL("http", getHttpHost(), getHttpPort(), bundle.getString("HTTP_PATH_2"));

-		} catch (Exception e) {

-			fail(e.toString());

-			e.printStackTrace();

-		}

-

-		ISite remoteSite = SiteManager.getSite(INSTALL_SITE,null);

-		IFeatureReference[] features = remoteSite.getFeatureReferences();

-		IFeature remoteFeature = null;

-

-		if (features == null || features.length == 0)

-			fail("No features on the site");

-

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

-			if (features[i].getURL().toExternalForm().endsWith("helpFeature.jar")) {

-				remoteFeature = features[i].getFeature(null);

-				break;

-			}

-		}

-

-		assertNotNull("Cannot find help.jar on site", remoteFeature);

-		ILocalSite localSite = SiteManager.getLocalSite();

-		IConfiguredSite site =

-			localSite.getCurrentConfiguration().getConfiguredSites()[0];

-		Listener listener = new Listener();

-		site.addConfiguredSiteChangedListener(listener);

-

-		((ConfiguredSite)site).setUpdatable(true);

-		site.install(remoteFeature, null, null);

-

-		IPluginEntry[] entries = remoteFeature.getRawPluginEntries();

-		assertTrue("no plugins entry", (entries != null && entries.length != 0));

-

-		String sitePath = site.getSite().getURL().getFile();

-		String pluginName = entries[0].getVersionedIdentifier().toString();

-		File pluginFile = new File(sitePath, Site.DEFAULT_PLUGIN_PATH + pluginName);

-		if (Locale.getDefault().toString().indexOf("fr") != -1)

-			assertTrue("plugin info not installed locally", pluginFile.exists());

-

-		File featureFile =

-			new File(

-				sitePath,

-				Site.DEFAULT_INSTALLED_FEATURE_PATH

-					+ remoteFeature.getVersionedIdentifier().toString());

-		assertTrue("feature info not installed locally", featureFile.exists());

-

-		//cleanup

-		File file =

-			new File(

-				site.getSite().getURL().getFile()

-					+ File.separator

-					+ Site.DEFAULT_INSTALLED_FEATURE_PATH

-					+ remoteFeature.getVersionedIdentifier());

-		UpdateManagerUtils.removeFromFileSystem(file);

-		UpdateManagerUtils.removeFromFileSystem(pluginFile);

-		InstallRegistry.unregisterPlugin(entries[0]);

-		UpdateManagerUtils.removeFromFileSystem(localFile);

-		UpdateManagerUtils.removeFromFileSystem(

-			new File(

-				((InstallConfiguration) localSite.getCurrentConfiguration())

-					.getURL()

-					.getFile()));

-

-		site.removeConfiguredSiteChangedListener(listener);

-		assertTrue("Listener hasn't received notification", listener.isNotified());

-	}

-

-	public void testFileSiteWithoutSiteXML() throws Exception {

-

-		ISite remoteSite = SiteManager.getSite(SOURCE_FILE_SITE,null);

-		IFeature remoteFeature = getFeature1(remoteSite);

-		IConfiguredSite localSite =

-			SiteManager.getLocalSite().getCurrentConfiguration().getConfiguredSites()[0];

-		localSite.getSite().install(remoteFeature, null, null);

-

-		IFeatureReference[] features = localSite.getSite().getFeatureReferences();

-		if (features.length == 0)

-			fail("The local site does not contain feature, should not contain an XML file but features should be found anyway by parsing");

-		if (localSite.getSite().getArchives().length == 0)

-			fail("The local site does not contain archives, should not contain an XML file but archives should be found anyway by parsing");

-

-		//cleanup

-		File file =

-			new File(

-				localSite.getSite().getURL().getFile()

-					+ File.separator

-					+ Site.DEFAULT_INSTALLED_FEATURE_PATH

-					+ remoteFeature.getVersionedIdentifier());

-		UpdateManagerUtils.removeFromFileSystem(file);

-		file =

-			new File(

-				localSite.getSite().getURL().getFile()

-					+ File.separator

-					+ Site.DEFAULT_PLUGIN_PATH

-					+ "org.eclipse.update.core.tests.feature1.plugin1_3.5.6");

-		UpdateManagerUtils.removeFromFileSystem(file);

-		file =

-			new File(

-				localSite.getSite().getURL().getFile()

-					+ File.separator

-					+ Site.DEFAULT_PLUGIN_PATH

-					+ "org.eclipse.update.core.tests.feature1.plugin2_5.0.0");

-		UpdateManagerUtils.removeFromFileSystem(file);

-		File localFile = new File(((SiteLocal)SiteManager.getLocalSite()).getLocationURL().getFile());

-		UpdateManagerUtils.removeFromFileSystem(localFile);

-

-		try {

-			SiteManager.getSite(new URL("http://www.eclipse.org/"),null);

-			fail("The site contains site.xml... it should be an HTTP site without an XML file");			

-		} catch (CoreException e) {

-			// expected

-		}

-

-	}

-

-//	/**

-//	* 

-//	*/

-//	private Feature createPackagedFeature(URL url, ISite site)

-//		throws CoreException {

-//		String packagedFeatureType = ISite.DEFAULT_PACKAGED_FEATURE_TYPE;

-//		Feature result = null;

-//		if (packagedFeatureType != null) {

-//			IFeatureFactory factory =

-//				FeatureTypeFactory.getInstance().getFactory(packagedFeatureType);

-//			result = (Feature) factory.createFeature(url, site);

-//		}

-//		return result;

-//	}

-	/*

-	 * @see ISite#getDefaultInstallableFeatureType()

-	 */

-	public String getDefaultInstallableFeatureType() {

-		String pluginID =

-			UpdateCore.getPlugin().getDescriptor().getUniqueIdentifier() + ".";

-		return pluginID + PACKAGED_FEATURE_TYPE;

-	}

-

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestInstallURLSIteXML.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestInstallURLSIteXML.java
deleted file mode 100644
index 5c2b72b..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestInstallURLSIteXML.java
+++ /dev/null
@@ -1,332 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.regularInstall;

-import java.io.*;

-import java.net.*;

-import java.util.Locale;

-

-import org.eclipse.core.runtime.*;

-import org.eclipse.update.configuration.*;

-import org.eclipse.update.core.*;

-import org.eclipse.update.internal.core.*;

-import org.eclipse.update.tests.*;

-

-public class TestInstallURLSIteXML extends UpdateManagerTestCase {

-

-	/**

-	 * 

-	 */

-	public static final String PACKAGED_FEATURE_TYPE = "packaged"; //$NON-NLS-1$	

-

-	public class Listener implements IConfiguredSiteChangedListener {

-

-		public boolean notified = false;

-

-		public void featureInstalled(IFeature feature) {

-			notified = true;

-			System.out.println("Notified DefaultFeature Installed");

-		}

-

-		public void featureRemoved(IFeature feature) {

-		}

-

-		public void featureConfigured(IFeature feature) {

-		}

-		public void featureUnconfigured(IFeature feature) {

-		}

-

-		public boolean isNotified() {

-			return notified;

-		}

-	}

-

-	/**

-	 * Constructor for Test1

-	 */

-	public TestInstallURLSIteXML(String arg0) {

-		super(arg0);

-	}

-

-	private IFeature getFeature1(ISite site)

-		throws MalformedURLException, CoreException {

-		SiteFeatureReference ref = new SiteFeatureReference();

-		ref.setSite(site);

-		ref.setURLString("features/org.eclipse.update.core.tests.feature1_1.0.4.jar");

-		ref.setType(ISite.DEFAULT_PACKAGED_FEATURE_TYPE);

-		ref.resolve(site.getURL(), null);

-		return ref.getFeature(null);

-	}

-

-	public void testFileSite() throws Exception {

-

-		ISite remoteSite =

-			SiteManager.getSite(new URL(SOURCE_FILE_SITE, Site.SITE_XML),true,null);

-		IFeature remoteFeature = getFeature1(remoteSite);

-		URL url = TARGET_FILE_SITE;

-		File file = new File(TARGET_FILE_SITE.getFile());

-		if (!file.exists()) file.mkdirs();

-		ISite localSite = SiteManager.getSite(url,true,null);

-		remove(remoteFeature,localSite);

-		localSite.install(remoteFeature, null, null);

-

-		// verify

-		String site = TARGET_FILE_SITE.getFile();

-		IPluginEntry[] entries = remoteFeature.getPluginEntries();

-		assertTrue("no plugins entry", (entries != null && entries.length != 0));

-		String pluginName = entries[0].getVersionedIdentifier().toString();

-		File pluginFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName);

-		assertTrue("plugin files not installed locally", pluginFile.exists());

-		File pluginXMLFile =

-			new File(

-				site,

-				Site.DEFAULT_PLUGIN_PATH + pluginName + File.separator + "plugin.xml");

-		assertTrue("plugin.xml file not installed locally", pluginXMLFile.exists());

-

-		File featureFile =

-			new File(

-				site,

-				Site.DEFAULT_INSTALLED_FEATURE_PATH

-					+ remoteFeature.getVersionedIdentifier().toString());

-		assertTrue(

-			"feature info not installed locally:" + featureFile,

-			featureFile.exists());

-		//cleanup

-		UpdateManagerUtils.removeFromFileSystem(pluginFile);

-		UpdateManagerUtils.removeFromFileSystem(new File(localSite.getURL().getFile()));

-		InstallRegistry.cleanup();

-	}

-

-	/**

-	 * 

-	 */

-	public void testHTTPSite() throws Exception {

-

-		// clean

-		File targetFile  = new File(TARGET_FILE_SITE.getFile());

-		UpdateManagerUtils.removeFromFileSystem(targetFile);

-		InstallRegistry.cleanup();

-

-		ISite remoteSite =

-			SiteManager.getSite(new URL(SOURCE_HTTP_SITE, Site.SITE_XML),true,null);

-		IFeatureReference[] features = remoteSite.getFeatureReferences();

-		IFeature remoteFeature = null;

-

-		if (features == null || features.length == 0)

-			fail("No features on the site");

-

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

-			if (features[i].getURL().toExternalForm().endsWith("features2.jar")) {

-				remoteFeature = features[i].getFeature(null);

-				break;

-			}

-		}

-

-		assertNotNull("Cannot find feature2.jar on site", remoteFeature);

-		URL url = TARGET_FILE_SITE;

-		File file = new File(TARGET_FILE_SITE.getFile());

-		if (!file.exists()) file.mkdirs();

-		ISite localSite = SiteManager.getSite(url,true,null);

-		localSite.install(remoteFeature, null, null);

-

-		// feature2.jar should not be in the local site

-		IFeatureReference[] localFeatures = localSite.getFeatureReferences();

-		if (localFeatures == null || localFeatures.length == 0)

-			fail("No features on the target site");

-

-		boolean found = false;

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

-			if (localFeatures[i].getURL().toExternalForm().endsWith("features2.jar")) {

-				found = true;

-				break;

-			}

-		}

-

-		assertTrue(

-			"Found feature2.jar on target site. Target site feature ref shouldnot contain JAR file",

-			!found);

-

-		// check

-		String site = TARGET_FILE_SITE.getFile();

-		IPluginEntry[] entries = remoteFeature.getPluginEntries();

-		assertTrue("no plugins entry", (entries != null && entries.length != 0));

-

-		String pluginName = entries[0].getVersionedIdentifier().toString();

-		File pluginFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName);

-		assertTrue("plugin info not installed locally", pluginFile.exists());

-

-		File featureFile =

-			new File(

-				site,

-				Site.DEFAULT_INSTALLED_FEATURE_PATH

-					+ remoteFeature.getVersionedIdentifier().toString());

-		assertTrue("feature info not installed locally", featureFile.exists());

-

-		//localSite.save();

-

-		//cleanup

-		UpdateManagerUtils.removeFromFileSystem(pluginFile);

-		UpdateManagerUtils.removeFromFileSystem(new File(localSite.getURL().getFile()));

-		InstallRegistry.cleanup();

-	}

-

-	public void testInstall() throws Exception {

-

-		// cleanup local files...

-		SiteLocal siteLocal = ((SiteLocal) SiteManager.getLocalSite());

-		File localFile = new File(siteLocal.getLocationURL().getFile());

-		//if (!localFile.exists()) fail("LocalSite file doesn't exist ->"+localFile.getAbsolutePath()+"<-");

-		UpdateManagerUtils.removeFromFileSystem(localFile);		

-		/*

-		localFile = new File(localFile,SiteLocal.SITE_LOCAL_FILE);

-		if (!localFile.exists()) fail("LocalSite.xml doesn't exist:"+localFile);

-		UpdateManagerUtils.removeFromFileSystem(localFile);

-		*/

-		

-		InternalSiteManager.localSite = null;

-

-		URL INSTALL_SITE = null;

-		try {

-			INSTALL_SITE =

-				new URL("http", getHttpHost(), getHttpPort(), bundle.getString("HTTP_PATH_2"));

-		} catch (Exception e) {

-			fail(e.toString());

-			e.printStackTrace();

-		}

-

-		ISite remoteSite = SiteManager.getSite(INSTALL_SITE,true,null);

-		IFeatureReference[] features = remoteSite.getFeatureReferences();

-		IFeature remoteFeature = null;

-

-		if (features == null || features.length == 0)

-			fail("No features on the site");

-

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

-			if (features[i].getURL().toExternalForm().endsWith("helpFeature.jar")) {

-				remoteFeature = features[i].getFeature(null);

-				break;

-			}

-		}

-

-		assertNotNull("Cannot find help.jar on site", remoteFeature);

-		ILocalSite localSite = SiteManager.getLocalSite();

-		IConfiguredSite site = localSite.getCurrentConfiguration().getConfiguredSites()[0];

-		Listener listener = new Listener();

-		site.addConfiguredSiteChangedListener(listener);

-

-		((ConfiguredSite)site).setUpdatable(true);

-		site.install(remoteFeature, null, null);

-

-		IPluginEntry[] entries = remoteFeature.getRawPluginEntries();

-		assertTrue("no plugins entry", (entries != null && entries.length != 0));

-

-		String sitePath = site.getSite().getURL().getFile();

-		String pluginName = entries[0].getVersionedIdentifier().toString();

-		File pluginFile = new File(sitePath, Site.DEFAULT_PLUGIN_PATH + pluginName);

-		if (Locale.getDefault().toString().indexOf("fr") != -1)

-			assertTrue("plugin info not installed locally:"+pluginFile, pluginFile.exists());

-

-		File featureFile =

-			new File(

-				sitePath,

-				Site.DEFAULT_INSTALLED_FEATURE_PATH

-					+ remoteFeature.getVersionedIdentifier().toString());

-		if (Locale.getDefault().toString().indexOf("fr") != -1 ||

-				Locale.getDefault().toString().indexOf("us") != -1 ||

-				Locale.getDefault().toString().indexOf("de") != -1)

-		assertTrue("feature info not installed locally", featureFile.exists());

-

-		//cleanup

-		File file =

-			new File(

-				site.getSite().getURL().getFile()

-					+ File.separator

-					+ Site.DEFAULT_INSTALLED_FEATURE_PATH

-					+ remoteFeature.getVersionedIdentifier());

-		UpdateManagerUtils.removeFromFileSystem(file);

-		UpdateManagerUtils.removeFromFileSystem(pluginFile);

-		UpdateManagerUtils.removeFromFileSystem(localFile);

-		UpdateManagerUtils.removeFromFileSystem(

-			new File(

-				((InstallConfiguration) localSite.getCurrentConfiguration())

-					.getURL()

-					.getFile()));

-		InstallRegistry.cleanup();

-		

-		site.removeConfiguredSiteChangedListener(listener);

-		assertTrue("Listener hasn't received notification", listener.isNotified());

-	}

-

-//	public void testFileSiteWithoutSiteXML() throws Exception {

-//

-//		ISite remoteSite =

-//			SiteManager.getSite(new URL(SOURCE_FILE_SITE, Site.SITE_XML),true,null);

-//		IFeature remoteFeature = getFeature1(remoteSite);

-//		IConfiguredSite localSite =

-//			SiteManager.getLocalSite().getCurrentConfiguration().getConfiguredSites()[0];

-//		localSite.getSite().install(remoteFeature, null, null);

-//

-//		IFeatureReference[] features = localSite.getSite().getFeatureReferences();

-//		if (features.length == 0)

-//			fail("The local site does not contain feature, should not contain an XML file but features should be found anyway by parsing");

-//		if (localSite.getSite().getArchives().length == 0)

-//			fail("The local site does not contain archives, should not contain an XML file but archives should be found anyway by parsing");

-//

-//		//cleanup

-//		File file =

-//			new File(

-//				localSite.getSite().getURL().getFile()

-//					+ File.separator

-//					+ Site.DEFAULT_INSTALLED_FEATURE_PATH

-//					+ remoteFeature.getVersionedIdentifier());

-//		UpdateManagerUtils.removeFromFileSystem(file);

-//		file =

-//			new File(

-//				localSite.getSite().getURL().getFile()

-//					+ File.separator

-//					+ Site.DEFAULT_PLUGIN_PATH

-//					+ "org.eclipse.update.core.tests.feature1.plugin1_3.5.6");

-//		UpdateManagerUtils.removeFromFileSystem(file);

-//		file =

-//			new File(

-//				localSite.getSite().getURL().getFile()

-//					+ File.separator

-//					+ Site.DEFAULT_PLUGIN_PATH

-//					+ "org.eclipse.update.core.tests.feature1.plugin2_5.0.0");

-//		UpdateManagerUtils.removeFromFileSystem(file);

-//		File localFile = new File(((SiteLocal)SiteManager.getLocalSite()).getLocationURL().getFile());

-//		UpdateManagerUtils.removeFromFileSystem(localFile);

-//

-//	}

-

-	/**

-	* 

-	*/

-//	private Feature createPackagedFeature(URL url, ISite site)

-//		throws CoreException {

-//		String packagedFeatureType = ISite.DEFAULT_PACKAGED_FEATURE_TYPE;

-//		Feature result = null;

-//		if (packagedFeatureType != null) {

-//			IFeatureFactory factory =

-//				FeatureTypeFactory.getInstance().getFactory(packagedFeatureType);

-//			result = (Feature) factory.createFeature(url, site);

-//		}

-//		return result;

-//	}

-	/*

-	 * @see ISite#getDefaultInstallableFeatureType()

-	 */

-	public String getDefaultInstallableFeatureType() {

-		String pluginID =

-			UpdateCore.getPlugin().getDescriptor().getUniqueIdentifier() + ".";

-		return pluginID + PACKAGED_FEATURE_TYPE;

-	}

-

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestLocalSite.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestLocalSite.java
deleted file mode 100644
index d123f00..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestLocalSite.java
+++ /dev/null
@@ -1,422 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.regularInstall;

-import java.io.*;

-import java.net.*;

-import org.eclipse.update.configuration.*;

-import org.eclipse.update.configurator.*;

-import org.eclipse.update.core.*;

-import org.eclipse.update.internal.core.*;

-import org.eclipse.update.internal.model.*;

-import org.eclipse.update.tests.*;

-

-public class TestLocalSite extends UpdateManagerTestCase {

-	

-	/**

-	 * Test the getFeatures()

-	 */

-	public TestLocalSite(String arg0) {

-		super(arg0);

-	}

-	

-	public void testCreationConfigFile() throws Exception {

-

-		//clean up

-		File localFile = new File(((SiteLocal)SiteManager.getLocalSite()).getLocationURL().getFile());

-		UpdateManagerUtils.removeFromFileSystem(localFile);	

-		InternalSiteManager.localSite=null;	

-

-

-		ILocalSite site = SiteManager.getLocalSite();

-		site.save();

-		assertTrue("config file hasn't been saved in :"+localFile.getAbsolutePath(), localFile.exists());

-		

-		// cleanup

-		UpdateManagerUtils.removeFromFileSystem(localFile);		

-		

-

-	}

-	

-	public void testDefaultConfigFile() throws Exception {

-

-		//clean up

-

-		File localFile = new File(((SiteLocal)SiteManager.getLocalSite()).getLocationURL().getFile());

-		UpdateManagerUtils.removeFromFileSystem(localFile);	

-		InternalSiteManager.localSite=null;

-

-		ILocalSite site = SiteManager.getLocalSite();

-		assertTrue("The local site does not contain an history of install configuration",site.getConfigurationHistory().length!=0);

-		assertTrue("The local site does not contain an current install configuration",site.getCurrentConfiguration()!=null);

-		assertTrue("The local site does not contain a default configuration site for the current install config",site.getCurrentConfiguration().getConfiguredSites().length!=0);

-		

-		System.out.println("Default Config Site is :"+site.getCurrentConfiguration().getConfiguredSites()[0].getSite().getURL().toExternalForm());

-		

-		// cleanup	

-		UpdateManagerUtils.removeFromFileSystem(localFile);		

-		

-

-	}

-	

-/*	public void testInstallFeatureSaveConfig() throws Exception {

-

-		//clean up

-		SiteLocal siteLocal = (SiteLocal)SiteManager.getLocalSite();

-		URL newURL = new URL(siteLocal.getLocationURL(),SiteLocal.SITE_LOCAL_FILE);

-		File localFile = new File(newURL.getFile());

-		UpdateManagerUtils.removeFromFileSystem(localFile);

-		UpdateManagerUtils.removeFromFileSystem(new File(((InstallConfiguration)siteLocal.getCurrentConfiguration()).getURL().getFile()));	

-		InternalSiteManager.localSite=null;		

-

-		ILocalSite site = SiteManager.getLocalSite();

-		ISite remoteSite = SiteManager.getSite(SOURCE_FILE_SITE_INSTALLED);

-		IFeature feature = remoteSite.getFeatureReferences()[0].getFeature();

-		int oldNumber = site.getCurrentConfiguration().getConfiguredSites().length;

-		

-		// we are not checking if this is read only

-		IInstallConfiguration newConfig = site.cloneCurrentConfiguration();

-		newConfig.setLabel("new Label");		

-		//IInstallConfiguration newConfig = site.getCurrentConfiguration();

-		IConfiguredSite configSite = newConfig.getConfiguredSites()[0];

-		ConfigurationPolicyModel configPolicy = new BaseSiteLocalFactory().createConfigurationPolicyModel();

-		configPolicy.setPolicy(IPlatformConfiguration.ISitePolicy.USER_INCLUDE);

-		((ConfiguredSite)configSite).setConfigurationPolicy((ConfigurationPolicy)configPolicy);

-		int oldNumberOfhistory = site.getConfigurationHistory().length;		

-		site.addConfiguration(newConfig);	

-		assertNotNull(feature);	

-

-		((ConfiguredSite)configSite).isUpdatable(true);

-		remove(feature,configSite);				

-		configSite.install(feature,null,null);

-				

-		// teh current one points to a real fature

-		// does not throw error.

-		IConfiguredSite configSite2 = site.getCurrentConfiguration().getConfiguredSites()[0];

-		assertTrue("No Configured features found",configSite.getConfiguredFeatures().length>0);

-		IFeatureReference ref = configSite2.getConfiguredFeatures()[0];

-		IFeature feature2 = ref.getFeature();

-		//String configuredFeature = feature2.getLabel();

-

-		assertEquals(feature2.getVersionedIdentifier().toString(),"org.eclipse.update.core.tests.feature3_1.0.0");

-		assertTrue("Wrong id  version of feature",feature2.getVersionedIdentifier().toString().equalsIgnoreCase("org.eclipse.update.core.tests.feature3_1.0.0"));

-		

-		// only one feature configured

-		assertTrue("too many features configured",configSite2.getConfiguredFeatures().length==1);

-		

-		// no feature unconfigured

-		assertTrue("too many unconfigured features",((ConfiguredSite)configSite2).getConfigurationPolicy().getUnconfiguredFeatures().length==0);

-		

-		// test only 2 install config in local site

-		//assertEquals("wrong number of history in Local site:",oldNumberOfhistory+1,site.getConfigurationHistory().length);

-		

-		// test same # of sites in current config

-		assertTrue("Wrong number of config sites in current config",site.getCurrentConfiguration().getConfiguredSites().length==oldNumber);

-		

-		//test only one feature for the site

-		assertTrue("wrong number of configured features for config site",site.getCurrentConfiguration().getConfiguredSites()[0].getConfiguredFeatures().length==1);

-		

-		// test only 2 activities

-		assertTrue("Wrong number of activities for install config",site.getCurrentConfiguration().getActivities().length==2);

-

-		site.save();		

-

-		// check

-		// there are 2 configuration

-		String time = ""+site.getCurrentConfiguration().getCreationDate().getTime();

-		URL location = ((SiteLocal)site).getLocationURL();

-		File file = new File(new URL(location,"Config"+time+".xml").getFile());

-		assertTrue("new configuration does not exist", file.exists());

-		

-		// cleanup

-		localFile = new File(new URL(location,SiteLocal.SITE_LOCAL_FILE).getFile());

-		UpdateManagerUtils.removeFromFileSystem(localFile);		

-		localFile = new File(new URL(location,SiteLocal.DEFAULT_CONFIG_FILE).getFile());

-		UpdateManagerUtils.removeFromFileSystem(localFile);	

-		localFile = new File(new URL(location,Site.DEFAULT_FEATURE_PATH+File.separator+feature.getVersionedIdentifier().toString()).getFile());		

-		UpdateManagerUtils.removeFromFileSystem(localFile);	

-		localFile = new File(new URL(location,Site.DEFAULT_FEATURE_PATH+File.separator+feature2.getVersionedIdentifier().toString()).getFile());		

-		UpdateManagerUtils.removeFromFileSystem(localFile);	

-		UpdateManagerUtils.removeFromFileSystem(file);		

-		localFile = new File(feature2.getURL().getFile());

-		UpdateManagerUtils.removeFromFileSystem(localFile);

-	}

-*/

-	

-	public void testRetriveConfig() throws Exception {

-

-		//clean up

-		File localFile = new File(((SiteLocal)SiteManager.getLocalSite()).getLocationURL().getFile());

-		UpdateManagerUtils.removeFromFileSystem(localFile);	

-		InternalSiteManager.localSite=null;		

-

-		ILocalSite site = SiteManager.getLocalSite();

-		ISite remoteSite = SiteManager.getSite(SOURCE_FILE_SITE_INSTALLED,null);

-		IFeature feature = remoteSite.getFeatureReferences()[0].getFeature(null);

-		int oldNumber = site.getCurrentConfiguration().getConfiguredSites().length;		

-		

-		// we are not checking if this is read only

-		IInstallConfiguration newConfig = site.cloneCurrentConfiguration();

-		newConfig.setLabel("new Label");		

-		IConfiguredSite configSite = newConfig.getConfiguredSites()[0];

-		ConfigurationPolicyModel configPolicy = new BaseSiteLocalFactory().createConfigurationPolicyModel();

-		configPolicy.setPolicy(IPlatformConfiguration.ISitePolicy.USER_INCLUDE);

-		((ConfiguredSite)configSite).setConfigurationPolicyModel((ConfigurationPolicyModel)configPolicy);	

-		int oldNumberOfhistory = site.getConfigurationHistory().length;			

-		site.addConfiguration(newConfig);

-		assertNotNull(feature);			

-		

-		((ConfiguredSite)configSite).setUpdatable(true);

-		remove(feature,configSite);			

-		configSite.install(feature,null,null);

-		site.save();

-		

-		// we created the second xml file

-

-		//do not cleanup, we want to reuse previously created local site

-		// but force re-read of xml File

-		InternalSiteManager.localSite=null;

-		site = SiteManager.getLocalSite();

-		

-		// check

-		// there are 2 configuration

-		String time = ""+site.getCurrentConfiguration().getCreationDate().getTime();

-		URL location = ((SiteLocal)site).getLocationURL();		

-		File file = new File(new URL(location,"platform.xml").getFile());

-		assertTrue("new configuration does not exist", file.exists());

-		

-		// teh current one points to a real fature

-		// does not throw error.

-		IConfiguredSite configSite2 = site.getCurrentConfiguration().getConfiguredSites()[0];

-		IFeatureReference[] refs = configSite2.getConfiguredFeatures();

-		IFeature feature2 = null;

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

-			IFeature feature3 = refs[i].getFeature(null);			

-			if ("org.eclipse.update.core.tests.feature3_1.0.0".equals(feature3.getVersionedIdentifier().toString())){

-				feature2 = feature3;

-				break;

-			}		

-		}

-		assertNotNull("Feature 2 is Null",feature2);

-		assertTrue("Wrong id  version of feature",feature2.getVersionedIdentifier().toString().equalsIgnoreCase("org.eclipse.update.core.tests.feature3_1.0.0"));

-		

-		// test only 2 install config in local site

-//		assertEquals("wrong number of history in Local site:",oldNumberOfhistory+1,site.getConfigurationHistory().length);

-		

-		// test # of sites in current config

-		assertTrue("Wrong number of config sites in current config",site.getCurrentConfiguration().getConfiguredSites().length==oldNumber);

-		

-		//test only one feature for the site

-//		assertTrue("wrong number of configured features for config site",site.getCurrentConfiguration().getConfiguredSites()[0].getConfiguredFeatures().length==1);

-		

-		// test only 2 activities

-//		assertTrue("Wrong number of activities for install config",site.getCurrentConfiguration().getActivities().length==2);

-		

-		

-		// cleanup

-		localFile = new File(((SiteLocal)SiteManager.getLocalSite()).getLocationURL().getFile());

-		UpdateManagerUtils.removeFromFileSystem(localFile);		

-		localFile = new File(new URL(location,Site.DEFAULT_FEATURE_PATH+File.separator+feature.getVersionedIdentifier().toString()).getFile());		

-		UpdateManagerUtils.removeFromFileSystem(localFile);					

-		UpdateManagerUtils.removeFromFileSystem(file);		

-	}

-

-/*	public void testRetriveConfigHTTPInstall() throws Exception {

-

-		//clean up

-		File localFile = new File(((SiteLocal)SiteManager.getLocalSite()).getLocationURL().getFile());

-		UpdateManagerUtils.removeFromFileSystem(localFile);

-		InternalSiteManager.localSite=null;		

-

-		ILocalSite site = SiteManager.getLocalSite();

-		ISite remoteSite = SiteManager.getSite(SOURCE_HTTP_SITE,null);

-		IFeature feature = remoteSite.getFeatureReferences()[0].getFeature(null);

-		

-		// we are not checking if this is read only

-		IInstallConfiguration newConfig = site.cloneCurrentConfiguration();

-		newConfig.setLabel("new Label");		

-		IConfiguredSite configSite = newConfig.getConfiguredSites()[0];

-		ConfigurationPolicyModel configPolicy = new BaseSiteLocalFactory().createConfigurationPolicyModel();

-		configPolicy.setPolicy(IPlatformConfiguration.ISitePolicy.USER_INCLUDE);

-		((ConfiguredSite)configSite).setConfigurationPolicyModel((ConfigurationPolicyModel)configPolicy);	

-		int oldNumberOfhistory = site.getConfigurationHistory().length;			

-		site.addConfiguration(newConfig);

-		

-	

-		((ConfiguredSite)configSite).setUpdatable(true);				

-		configSite.install(feature,null,null);

-		site.save();

-

-		//do not cleanup, we want to reuse previously created local site

-		// but force re-read of xml File

-		InternalSiteManager.localSite=null;

-		site = SiteManager.getLocalSite();

-		feature = remoteSite.getFeatureReferences()[0].getFeature(null);

-		int oldNumber = site.getCurrentConfiguration().getConfiguredSites().length;		

-		

-		// check

-		// there are 2 configuration

-		String time = ""+site.getCurrentConfiguration().getCreationDate().getTime();

-		URL location = ((SiteLocal)site).getLocationURL();		

-		File file = new File(new URL(location,"platform.xml").getFile());

-		assertTrue("new configuration does not exist", file.exists());

-		

-		// teh current one points to a real fature

-		// does not throw error.

-		IConfiguredSite configSite2 = site.getCurrentConfiguration().getConfiguredSites()[0];

-		

-		IFeatureReference[] refs = configSite2.getConfiguredFeatures();

-		boolean found = false;

-		IFeature feature2 = null;

-		for (int i = 0; !found && i < refs.length; i++) {

-			IFeature feature3 = refs[i].getFeature(null);			

-			if ("org.test1.ident1_1.0.0".equals(feature3.getVersionedIdentifier().toString())){

-				feature2 = feature3;

-				found = true;

-			}		

-		}

-

-		//String configuredFeature = feature2.getLabel();

-		assertTrue("cannot find feature org.test1.ident1_1.0.0 in configured Site",found);

-		assertTrue("Wrong id  version of feature",feature2.getVersionedIdentifier().toString().equalsIgnoreCase("org.test1.ident1_1.0.0"));

-		

-		// test only 2 install config in local site

-//		assertEquals("wrong number of history in Local site:",oldNumberOfhistory+1,site.getConfigurationHistory().length);

-		

-		// test same number of sites in current config

-		assertTrue("Wrong number of config sites in current config",site.getCurrentConfiguration().getConfiguredSites().length==oldNumber);

-		

-		//test only one feature for the site

-//		assertTrue("wrong number of configured features for config site",site.getCurrentConfiguration().getConfiguredSites()[0].getConfiguredFeatures().length==1);

-		

-		// test only 2 activities

-//		assertTrue("Wrong number of activities for install config",site.getCurrentConfiguration().getActivities().length==2);

-		

-		

-		// cleanup

-		localFile = new File(location.getFile());

-		UpdateManagerUtils.removeFromFileSystem(localFile);		

-		localFile = new File(new URL(location,Site.DEFAULT_FEATURE_PATH+File.separator+feature.getVersionedIdentifier().toString()).getFile());		

-		UpdateManagerUtils.removeFromFileSystem(localFile);							

-		UpdateManagerUtils.removeFromFileSystem(file);		

-		localFile = new File(feature2.getURL().getFile());

-		UpdateManagerUtils.removeFromFileSystem(localFile);

-	}*/

-	

-//TODO uncomment this once site disabling is supported

-public void testRetriveConfigHTTPInstallNotEnable() throws Exception {

-/*

-	//clean up

-	SiteLocal siteLocal = (SiteLocal)SiteManager.getLocalSite();

-	URL newURL = new URL(siteLocal.getLocationURL(),SiteLocal.SITE_LOCAL_FILE);

-	File localFile = new File(newURL.getFile());

-	UpdateManagerUtils.removeFromFileSystem(localFile);

-	UpdateManagerUtils.removeFromFileSystem(new File(((InstallConfiguration)siteLocal.getCurrentConfiguration()).getURL().getFile()));	

-	InternalSiteManager.localSite=null;		

-

-	ILocalSite site = SiteManager.getLocalSite();

-	ISite remoteSite = SiteManager.getSite(SOURCE_HTTP_SITE);

-	IFeature feature = remoteSite.getFeatureReferences()[0].getFeature(null);

-		

-	// we are not checking if this is read only

-	IInstallConfiguration newConfig = site.cloneCurrentConfiguration();

-	newConfig.setLabel("new Label");		

-	IConfiguredSite configSite = newConfig.getConfiguredSites()[0];

-	ConfigurationPolicyModel configPolicy = new BaseSiteLocalFactory().createConfigurationPolicyModel();

-	configPolicy.setPolicy(IPlatformConfiguration.ISitePolicy.USER_INCLUDE);

-	((ConfiguredSite)configSite).setConfigurationPolicyModel((ConfigurationPolicyModel)configPolicy);	

-	int oldNumberOfhistory = site.getConfigurationHistory().length;			

-	site.addConfiguration(newConfig);

-		

-	

-	((ConfiguredSite)configSite).setUpdatable(true);

-	configSite.install(feature,null,null);

-	((ConfiguredSite)configSite).setEnabled(false);	

-	site.save();

-

-	//do not cleanup, we want to reuse previously created local site

-	// but force re-read of xml File

-	InternalSiteManager.localSite=null;

-	site = SiteManager.getLocalSite();

-	feature = remoteSite.getFeatureReferences()[0].getFeature(null);

-	int oldNumber = site.getCurrentConfiguration().getConfiguredSites().length;		

-		

-	// check

-	// there are 2 configuration

-	String time = ""+site.getCurrentConfiguration().getCreationDate().getTime();

-	URL location = ((SiteLocal)site).getLocationURL();		

-	File file = new File(location.getFile());

-	assertTrue("new configuration does not exist", file.exists());

-		

-	// teh current one points to a real fature

-	// does not throw error.

-	IConfiguredSite configSite2 = site.getCurrentConfiguration().getConfiguredSites()[0];

-		

-	IFeatureReference[] refs = configSite2.getConfiguredFeatures();

-	boolean found = false;

-	IFeature feature2 = null;

-	for (int i = 0; !found && i < refs.length; i++) {

-		IFeature feature3 = refs[i].getFeature(null);			

-		if ("org.test1.ident1_1.0.0".equals(feature3.getVersionedIdentifier().toString())){

-			feature2 = feature3;

-			found = true;

-		}		

-	}

-

-	//String configuredFeature = feature2.getLabel();

-	assertTrue("found feature org.test1.ident1_1.0.0 in disabled configured Site",!found);

-		

-	//test no configured features

-//	assertTrue("wrong number of configured features for config site",site.getCurrentConfiguration().getConfiguredSites()[0].getConfiguredFeatures().length==0);

-	

-	

-	configSite2.setEnabled(true);

-	refs = configSite2.getConfiguredFeatures();	

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

-		IFeature feature3 = refs[i].getFeature(null);			

-		if ("org.test1.ident1_1.0.0".equals(feature3.getVersionedIdentifier().toString())){

-			feature2 = feature3;

-			found = true;

-		}		

-	}

-

-	//String configuredFeature = feature2.getLabel();

-	assertTrue("cannot find feature org.test1.ident1_1.0.0 in configured Site",found);

-	assertTrue("Wrong id  version of feature",feature2.getVersionedIdentifier().toString().equalsIgnoreCase("org.test1.ident1_1.0.0"));

-		

-	// test only 2 install config in local site

-//	assertEquals("wrong number of history in Local site:",oldNumberOfhistory+1,site.getConfigurationHistory().length);

-		

-	// test same number of sites in current config

-//	assertTrue("Wrong number of config sites in current config",site.getCurrentConfiguration().getConfiguredSites().length==oldNumber);

-		

-	//test only one feature for the site

-//	assertTrue("wrong number of configured features for config site",site.getCurrentConfiguration().getConfiguredSites()[0].getConfiguredFeatures().length==1);

-		

-	// test only 2 activities

-//	assertTrue("Wrong number of activities for install config",site.getCurrentConfiguration().getActivities().length==2);

-		

-		

-	// cleanup

-	localFile = new File(new URL(location,SiteLocal.SITE_LOCAL_FILE).getFile());

-	UpdateManagerUtils.removeFromFileSystem(localFile);		

-	localFile = new File(new URL(location,SiteLocal.DEFAULT_CONFIG_FILE).getFile());

-	UpdateManagerUtils.removeFromFileSystem(localFile);	

-	localFile = new File(new URL(location,Site.DEFAULT_FEATURE_PATH+File.separator+feature.getVersionedIdentifier().toString()).getFile());		

-	UpdateManagerUtils.removeFromFileSystem(localFile);	

-	UpdateManagerUtils.removeFromFileSystem(new File(((InstallConfiguration)site.getCurrentConfiguration()).getURL().getFile()));						

-	UpdateManagerUtils.removeFromFileSystem(file);		

-	localFile = new File(feature2.getURL().getFile());

-	UpdateManagerUtils.removeFromFileSystem(localFile);*/

-}

-

-

-}

-

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestSpaceInInstall.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestSpaceInInstall.java
deleted file mode 100644
index 5e6e4a9..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularInstall/TestSpaceInInstall.java
+++ /dev/null
@@ -1,141 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.regularInstall;

-import java.io.File;

-import java.net.URL;

-

-import org.eclipse.update.core.*;

-import org.eclipse.update.internal.core.*;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-public class TestSpaceInInstall extends UpdateManagerTestCase {

-	/**

-	 * Constructor for Test1

-	 */

-	public TestSpaceInInstall(String arg0) {

-		super(arg0);

-	}

-

-	/**

-	 *

-	 */

-	public void testSpaceInURL() throws Exception {

-

-		//cleanup target 

-		URL testURL = new URL(TARGET_FILE_SITE,"test site space/"); 

-		String testPath = testURL.getFile();

-		File target = new File(testPath);

-		UpdateManagerUtils.removeFromFileSystem(target);

-		

-		URL newURL = new File(dataPath + "Site with space/site.xml").toURL();

-		ISite remoteSite = SiteManager.getSite(newURL,true,null);

-		IFeatureReference[] featuresRef = remoteSite.getFeatureReferences();

-		File file = new File(testURL.getFile());

-		if (!file.exists()) file.mkdirs();

-		ISite localSite = SiteManager.getSite(testURL,true,null);

-		IFeature remoteFeature = null;

-		

-		// at least one executable feature and on packaged

-		boolean execFeature = false;

-		boolean packFeature = false;

-

-		if (featuresRef.length==0) fail ("no feature found");

-	

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

-			remoteFeature = featuresRef[i].getFeature(null);

-			remove(remoteFeature,localSite); 

-			localSite.install(remoteFeature, null,null);

-			

-			if (remoteFeature.getFeatureContentProvider() instanceof FeaturePackagedContentProvider) packFeature = true;

-			if (remoteFeature.getFeatureContentProvider() instanceof FeatureExecutableContentProvider) execFeature = true;

-

-			// verify

-			String site = testURL.getFile();

-			IPluginEntry[] entries = remoteFeature.getRawPluginEntries();

-			assertTrue("no plugins entry", (entries != null && entries.length != 0));

-			String pluginName = entries[0].getVersionedIdentifier().toString();

-			File pluginFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName);

-			assertTrue("plugin files not installed locally", pluginFile.exists());

-

-			File featureFile = new File(site, Site.DEFAULT_INSTALLED_FEATURE_PATH + remoteFeature.getVersionedIdentifier().toString());

-			assertTrue("feature info not installed locally:"+featureFile, featureFile.exists());

-

-			File featureFileXML = new File(site, Site.DEFAULT_INSTALLED_FEATURE_PATH + remoteFeature.getVersionedIdentifier().toString() + File.separator + "feature.xml");

-			assertTrue("feature info not installed locally: no feature.xml", featureFileXML.exists());

-		}

-

-		if (!execFeature && !packFeature){

-			fail("cannot find one executable and one package feature on teh site");

-		}

-

-		//cleanup target 

-		UpdateManagerUtils.removeFromFileSystem(target);

-

-

-	}

-	

-	

-	/**

-	 *

-	 */

-	public void testSpaceInHTTPURL() throws Exception {

-

-		//cleanup target  

-		File target = new File(TARGET_FILE_SITE.getFile());

-		UpdateManagerUtils.removeFromFileSystem(target);

-		InstallRegistry.cleanup();

-		

-		String path = bundle.getString("HTTP_PATH_3");

-		ISite remoteSite = SiteManager.getSite(new URL("http",getHttpHost(),getHttpPort(),path),true,null);		

-		IFeatureReference[] featuresRef = remoteSite.getFeatureReferences();

-		ISite localSite = SiteManager.getSite(TARGET_FILE_SITE,true,null);

-		IFeature remoteFeature = null;

-		

-		// at least one executable feature and on packaged

-		boolean execFeature = false;

-		boolean packFeature = false;

-

-		if (featuresRef.length==0) fail ("no feature found");

-	

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

-			remoteFeature = featuresRef[i].getFeature(null);

-			localSite.install(remoteFeature, null,null);

-			

-			if (remoteFeature.getFeatureContentProvider() instanceof FeaturePackagedContentProvider) packFeature = true;

-			if (remoteFeature.getFeatureContentProvider() instanceof FeatureExecutableContentProvider) execFeature = true;

-

-			// verify

-			String site = TARGET_FILE_SITE.getFile();			

-			IPluginEntry[] entries = remoteFeature.getRawPluginEntries();

-			assertTrue("no plugins entry", (entries != null && entries.length != 0));

-			String pluginName = entries[0].getVersionedIdentifier().toString();

-			File pluginFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName);

-			assertTrue("plugin files not installed locally", pluginFile.exists());

-

-			File featureFile = new File(site, Site.DEFAULT_INSTALLED_FEATURE_PATH + remoteFeature.getVersionedIdentifier().toString());

-			assertTrue("feature info not installed locally:"+featureFile, featureFile.exists());

-

-			File featureFileXML = new File(site, Site.DEFAULT_INSTALLED_FEATURE_PATH + remoteFeature.getVersionedIdentifier().toString() + File.separator + "feature.xml");

-			assertTrue("feature info not installed locally: no feature.xml", featureFileXML.exists());

-		}

-

-		if (!execFeature && !packFeature){

-			fail("cannot find one executable and one package feature on teh site");

-		}

-

-		//cleanup target 

-		UpdateManagerUtils.removeFromFileSystem(target);

-		InstallRegistry.cleanup();

-

-	}

-		

-		

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularRemove/AllRegularRemoveTests.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularRemove/AllRegularRemoveTests.java
deleted file mode 100644
index 937ec75..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularRemove/AllRegularRemoveTests.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.regularRemove;

-

-import org.eclipse.update.tests.UpdateManagerTestCase;

-import junit.framework.*;

-

-

-public class AllRegularRemoveTests extends UpdateManagerTestCase {

-public AllRegularRemoveTests(String name) {

-	super(name);

-}

-public static Test suite() {

-	TestSuite suite = new TestSuite();

-	suite.setName("Regular Remove Tests");

-	

-	suite.addTest(new TestSuite(TestRemove.class));

-	

-	return suite;

-}

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularRemove/TestRemove.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularRemove/TestRemove.java
deleted file mode 100644
index 4ac13a6..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/regularRemove/TestRemove.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.regularRemove;

-import java.io.File;

-import java.net.MalformedURLException;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.update.configuration.IConfiguredSiteChangedListener;

-import org.eclipse.update.core.*;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-public class TestRemove extends UpdateManagerTestCase {

-

-	public class Listener implements IConfiguredSiteChangedListener {

-

-		public boolean notified = false;

-

-		public void featureInstalled(IFeature feature) {

-			notified = true;

-			System.out.println("Notified DefaultFeature Installed");

-		}

-

-		public void featureRemoved(IFeature feature) {

-		}

-		public void featureConfigured(IFeature feature) {

-		};

-		public void featureUnconfigured(IFeature feature) {

-		};

-

-		public boolean isNotified() {

-			return notified;

-		}

-	}

-

-	/**

-	 * Constructor for Test1

-	 */

-	public TestRemove(String arg0) {

-		super(arg0);

-	}

-

-	private IFeature getFeature1(ISite site)

-		throws MalformedURLException, CoreException {

-		//URL url = UpdateManagerUtils.getURL(site.getURL(), "features/org.eclipse.update.core.tests.feature1_1.0.4.jar", null);

-		SiteFeatureReference ref = new SiteFeatureReference();

-		ref.setSite(site);

-		ref.setURLString("features/org.eclipse.update.core.tests.feature1_1.0.4.jar");

-		ref.setType(ISite.DEFAULT_PACKAGED_FEATURE_TYPE);

-		ref.resolve(site.getURL(), null);

-		return ref.getFeature(null);

-	}

-

-	public void testRemoveFeature() throws Exception {

-

-		// install feature

-		ISite remoteSite = SiteManager.getSite(SOURCE_FILE_SITE,null);

-		IFeature remoteFeature = getFeature1(remoteSite);

-		ISite localSite = SiteManager.getSite(TARGET_FILE_SITE,null);

-		IFeatureReference ref = localSite.install(remoteFeature, null, null);

-

-		// then remove it

-		assertNotNull("Feature is null",ref.getFeature(null));

-		String featureRef = ref.getFeature(null).getVersionedIdentifier().toString();

-		localSite.remove(ref.getFeature(null), null);

-

-		// verify

-		String site = TARGET_FILE_SITE.getFile();

-		IPluginEntry[] entries = remoteFeature.getPluginEntries();

-		assertTrue("no plugins entry", (entries != null && entries.length != 0));

-		String pluginName = entries[0].getVersionedIdentifier().toString();

-

-		File pluginFile = new File(site, Site.DEFAULT_PLUGIN_PATH + pluginName);

-		assertTrue("plugin files installed locally", !pluginFile.exists());

-

-		File featureFile =

-			new File(site, Site.DEFAULT_INSTALLED_FEATURE_PATH + featureRef);

-		assertTrue(

-			"feature info installed locally:" + featureFile,

-			!featureFile.exists());

-

-	}

-

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/sitevalidation/AllSiteValidationTests.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/sitevalidation/AllSiteValidationTests.java
deleted file mode 100644
index 7d063a9..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/sitevalidation/AllSiteValidationTests.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.tests.sitevalidation;
-
-import org.eclipse.update.tests.UpdateManagerTestCase;
-import junit.framework.*;
-
-public class AllSiteValidationTests extends UpdateManagerTestCase {
-	public AllSiteValidationTests(String name) {
-		super(name);
-	}
-	public static Test suite() {
-		TestSuite suite = new TestSuite();
-		suite.setName("Site Validation Tests");
-
-		// the following will take all teh test methods in teh class that start with 'test'
-
-		suite.addTest(new TestSuite(TestSiteValidation.class));
-
-		return suite;
-	}
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/sitevalidation/TestSiteValidation.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/sitevalidation/TestSiteValidation.java
deleted file mode 100644
index b608ce7..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/sitevalidation/TestSiteValidation.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.tests.sitevalidation;
-import java.io.*;
-import java.net.*;
-import org.eclipse.core.runtime.*;
-import org.eclipse.update.configuration.*;
-import org.eclipse.update.configurator.*;
-import org.eclipse.update.configurator.IPlatformConfiguration.*;
-import org.eclipse.update.core.*;
-import org.eclipse.update.tests.*;
-
-public class TestSiteValidation extends UpdateManagerTestCase {
-
-
-	/**
-	 * Constructor 
-	 */
-	public TestSiteValidation(String arg0) {
-		super(arg0);
-	}
-
-	private void removeConfigSite(URL url) throws Exception {
-		// get new config object
-		IPlatformConfiguration cfig = ConfiguratorUtils.getCurrentPlatformConfiguration();
-		ISiteEntry s1 = cfig.findConfiguredSite(url);
-		assertNotNull("Unable to find site entry:"+url,s1);
-		cfig.unconfigureSite(s1);
-	}
-
-	public void testSite1() throws Exception {
-
-		URL remoteUrl = new URL(TARGET_FILE_SITE + "validation/site1/eclipse");
-		File file = new File(remoteUrl.getFile());
-		ILocalSite local = SiteManager.getLocalSite();
-		IInstallConfiguration currentConfig = local.getCurrentConfiguration();
-		file.mkdirs();
-		IConfiguredSite configuredSite = currentConfig.createConfiguredSite(file);
-		IStatus status = configuredSite.verifyUpdatableStatus();
-
-		String msg = "The site "+file+" should be updatable.";
-		if (!status.isOK()){
-			fail(msg+status.getMessage());
-		}
-		currentConfig.removeConfiguredSite(configuredSite);
-		removeConfigSite(configuredSite.getSite().getURL());
-	}
-	
-	public void testSite2() throws Exception {
-
-		URL remoteUrl = new URL(SOURCE_FILE_SITE + "validation/site2/eclipse/");
-		File file = new File(remoteUrl.getFile());
-		ILocalSite local = SiteManager.getLocalSite();
-		IInstallConfiguration currentConfig = local.getCurrentConfiguration();
-		IConfiguredSite configuredSite;
-		try {
-		 configuredSite = currentConfig.createConfiguredSite(file);
-		} catch (CoreException e){
-			return;
-		}
-		IStatus status = configuredSite.verifyUpdatableStatus();
-
-//		UpdateManagerUtils.removeFromFileSystem(new File(file,".eclipseUM"));
-
-		String msg = "The site "+file+" should not be updatable.";
-		if (status.isOK()){
-			fail(msg+status.getMessage());
-		}
-		if (status.getMessage().indexOf("This site is contained in another site:")==-1){
-			fail("Wrong validation:"+status.getMessage());
-		}
-	}	
-
-	public void testSite3() throws Exception {
-
-		URL remoteUrl = new URL(SOURCE_FILE_SITE + "validation/site3/eclipse/");
-		File file = new File(remoteUrl.getFile());
-		ILocalSite local = SiteManager.getLocalSite();
-		IInstallConfiguration currentConfig = local.getCurrentConfiguration();
-		IConfiguredSite configuredSite = currentConfig.createConfiguredSite(file);
-		IStatus status = configuredSite.verifyUpdatableStatus();
-
-//		UpdateManagerUtils.removeFromFileSystem(new File(file,".eclipseUM"));
-
-		String msg = "The site "+file+" should not be updatable.";
-		if (status.isOK()){
-			fail(msg+status.getMessage());
-		}
-//		if (status.getMessage().indexOf("This site is contained in another site:")==-1){
-//			fail("Wrong validation:"+status.getMessage());
-//		}
-	}	
-
-	public void testSite4() throws Exception {
-
-		URL remoteUrl = new URL(SOURCE_FILE_SITE + "validation/site4/eclipse/");
-		File file = new File(remoteUrl.getFile());
-		ILocalSite local = SiteManager.getLocalSite();
-		IInstallConfiguration currentConfig = local.getCurrentConfiguration();
-		IConfiguredSite configuredSite = currentConfig.createConfiguredSite(file);
-		IStatus status = configuredSite.verifyUpdatableStatus();
-
-		String msg = "The site "+file+" should not be updatable.";
-		if (status.isOK()){
-			fail(msg+status.getMessage());
-		}
-		if (status.getMessage().indexOf("The site cannot be modified by this product. It is already associated with product:")==-1){
-			fail("Wrong validation:"+status.getMessage());
-		}
-	}	
-
-	public void testSite5() throws Exception {
-
-		URL remoteUrl = new URL(SOURCE_FILE_SITE + "validation/site5/");
-		File file = new File(remoteUrl.getFile());
-		ILocalSite local = SiteManager.getLocalSite();
-		IInstallConfiguration currentConfig = local.getCurrentConfiguration();
-		IConfiguredSite configuredSite = currentConfig.createConfiguredSite(file);
-		IStatus status = configuredSite.verifyUpdatableStatus();
-
-		String msg = "The site "+file+" should be updatable.";
-		if (!status.isOK()){
-			fail(msg+status.getMessage());
-		}
-		
-			// get new config object
-		URL url = configuredSite.getSite().getURL();
-		IPlatformConfiguration cfig = ConfiguratorUtils.getCurrentPlatformConfiguration();
-		ISiteEntry s1 = cfig.findConfiguredSite(url);
-		assertNotNull("Site entry not found:"+url,s1);
-		cfig.unconfigureSite(s1);
-		cfig.save();
-	}
-	
-	public void testSite6() throws Exception {
-
-		URL remoteUrl = new URL(SOURCE_FILE_SITE + "validation/site6/children/children/eclipse/");
-		File file = new File(remoteUrl.getFile());
-		if (!file.exists()) file.mkdirs();
-		ILocalSite local = SiteManager.getLocalSite();
-		IInstallConfiguration currentConfig = local.getCurrentConfiguration();
-		IConfiguredSite configuredSite = currentConfig.createConfiguredSite(file);
-		IStatus status = configuredSite.verifyUpdatableStatus();
-
-//		UpdateManagerUtils.removeFromFileSystem(new File(file,".eclipseUM"));
-
-		String msg = "The site "+file+" should not be updatable.";
-		if (status.isOK()){
-			fail(msg+status.getMessage());
-		}
-//		if (status.getMessage().indexOf("This site is contained in another site:")==-1){
-//			fail("Wrong validation:"+status.getMessage());
-//		}
-	}	
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/AllStandaloneTests.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/AllStandaloneTests.java
deleted file mode 100644
index bb60c51..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/AllStandaloneTests.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-
-package org.eclipse.update.tests.standalone;
-
-import junit.framework.Test;
-import junit.framework.TestSuite;
-
-import org.eclipse.update.tests.UpdateManagerTestCase;
-
-
-public class AllStandaloneTests extends UpdateManagerTestCase{
-
-	public AllStandaloneTests(String name){
-		super(name);
-	}
-	
-	public static Test suite(){
-		TestSuite suite = new TestSuite();
-		suite.setName("Standalone Tests");
-		
-		// the following will take all the test methods in 
-		// the class that start with "test"
-		suite.addTest(new TestSuite(TestFeatureInstall.class));
-		suite.addTest(new TestSuite(TestFeatureUpdate.class));
-		suite.addTest(new TestSuite(TestFeatureEnable.class));
-		suite.addTest(new TestSuite(TestFeatureDisable.class));
-		suite.addTest(new TestSuite(TestFeatureUninstall.class));
-		suite.addTest(new TestSuite(TestBundlesInstall.class));
-		//and this one's for fun :)
-//		suite.addTest(new TestSuite(TestSiteSearch.class));
-		
-		return suite;
-	}
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/StandaloneManagerTestCase.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/StandaloneManagerTestCase.java
deleted file mode 100644
index ece2944..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/StandaloneManagerTestCase.java
+++ /dev/null
@@ -1,327 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-
-package org.eclipse.update.tests.standalone;
-
-import java.io.*;
-import java.net.*;
-import java.util.*;
-
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.update.configuration.*;
-import org.eclipse.update.configurator.*;
-import org.eclipse.update.core.*;
-import org.eclipse.update.internal.core.*;
-import org.eclipse.update.tests.*;
-
-public class StandaloneManagerTestCase extends UpdateManagerTestCase {
-	public static StringBuffer errOutput;
-	public static Integer exitValue= new Integer(-1);
-	public static URL TARGET_FILE_SITE;
-	private boolean oldCache = false;
-	
-	static {
-		File targetDir = new File(System.getProperty("java.io.tmpdir"));
-		targetDir = new File(targetDir, "standalone");
-		targetDir = new File(targetDir, "mytarget");
-		if (targetDir.exists())
-			deleteDirectory(targetDir);
-		try {
-			TARGET_FILE_SITE = targetDir.toURL();
-		} catch (MalformedURLException e) {
-			e.printStackTrace();
-		}
-	}
-	
-	public StandaloneManagerTestCase (String arg0){
-		super(arg0);
-	}
-	
-	/**
-	 * Sets up the fixture, for example, open a network connection.
-	 * This method is called before a test is executed.
-	 */
-	protected void umSetUp() {
-		// setup cache site to true
-		oldCache = InternalSiteManager.globalUseCache;
-		InternalSiteManager.globalUseCache = true;
-	}
-	
-	/**
-	 * Tears down the fixture, for example, close a network connection.
-	 * This method is called after a test is executed.
-	 */
-	protected void umTearDown() {
-		// do nothing.
-		InternalSiteManager.globalUseCache = oldCache;
-	}
-	
-	public void checkConfiguredSites(){
-		ILocalSite localSite;
-		System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
-		try {
-			localSite = SiteManager.getLocalSite();
-			System.out.println("LocalSite: " + localSite.getCurrentConfiguration().getLabel());
-		
-		//Get site to install to
-		IInstallConfiguration currentConfig = localSite.getCurrentConfiguration();
-		IConfiguredSite[] sites = currentConfig.getConfiguredSites();
-//	
-//			// start of config site print
-		System.out.println("GETTING CONFIGURED SITES...");
-		for (int i = 0; i<sites.length; i++){
-			System.out.println("site #" + i + ": " + sites[i].getSite().getURL().getFile());
-		}
-		System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
-		} catch (CoreException e) {
-			System.err.println(e);
-		}
-	}
-	
-	// get the first configured site found because this is the one we're most likely to 
-	// have installed into
-	public ISite getConfiguredSite(URL target){
-		try {
-			ILocalSite local = SiteManager.getLocalSite();
-			IInstallConfiguration currentConfig = local.getCurrentConfiguration();
-			IConfiguredSite[] sites = currentConfig.getConfiguredSites();
-			System.out.println("\nretrieving configured sites...");
-			String targetFile = new File(target.getFile()).getAbsolutePath();
-			for (int i = 0; i<sites.length ; i++){
-				System.out.println("site["+i+"]: " + sites[i].getSite().getURL());
-				String siteFile = new File(sites[i].getSite().getURL().getFile()).getAbsolutePath();
-				if (targetFile.equals(siteFile))
-					return sites[i].getSite();
-			}
-			if (sites.length == 0)
-				return null;
-			return sites[0].getSite();
-		} catch (CoreException e) {
-			System.err.println(e);
-			return null;
-		}
-	}
-	//WatchDog thread to kill mirroring process if it hangs (or takes too long)
-	public static class Timer extends Thread{
-		private Process proc;
-		
-		public Timer(Process proc){
-			super();
-			this.setDaemon(true);
-			this.proc = proc;
-		}
-		
-		public void run(){
-			try {
-				// sleep time 5min
-				sleep(300000); 
-				System.out.println("destroying process");
-				proc.destroy();
-			} catch (Exception e) {
-				System.err.println(e);
-				e.printStackTrace();
-			}
-		}
-	}
-	
-	// StreamConsumer to display output to output files or console
-	public static class StreamConsumer extends Thread {
-		private BufferedReader bReader;
-
-		public StreamConsumer(InputStream inputStream) {
-			super();
-			setDaemon(true);
-			bReader = new BufferedReader(new InputStreamReader(inputStream));
-			errOutput = new StringBuffer();
-		}
-
-		public void run() {
-			try {
-				String line;
-				while (null != (line = bReader.readLine())) {
-					System.err.println(line);
-					errOutput.append(line);
-					errOutput.append("\n");
-				}
-			} catch (IOException e) {
-				System.err.println(e);
-				e.printStackTrace();
-			}
-		}
-	}
-	
-	/**
-	 * @param command : command argument to run on site/feature 
-	 * (i.e. 'install', 'enable', 'disable', 'update') *<i>required</i>*
-	 * @param fid : feature id of the feature being installed, enabled, etc.
-	 * (optional - can be null)
-	 * @param ver : version of feature being installed, enabled, etc. (optional - can be null)
-	 * @param config : location of configuration info (i.e. file:D:\temp\.config\)
-	 * @param remoteLoc : remote site url (required for installing/searching from remote site)
-	 * @param localLoc : target site directory (required unless updating/searching)
-	 * @return a string array consisting of commands and their arguments to
-	 * be run
-	 */
-	public String[] getCommand(
-		String command,
-		String fid,
-		String ver,
-		String config,
-		String remoteLoc,
-		String localLoc){
-		final String classpath = "startup.jar";
-		final String launcher = "org.eclipse.core.launcher.Main";
-		final String application = "org.eclipse.update.core.standaloneUpdate";
-		final String FLAG_CP = "-cp";
-		final String FLAG_APP = "-application";
-		final String FLAG_CMD = "-command";
-		final String FLAG_FID = "-featureId";
-		final String FLAG_DATA = "-data";
-		final String FLAG_VERSION = "-version";
-		final String FLAG_FROM = "-from";
-		final String FLAG_TO = "-to";
-		final String FLAG_CONFIG = "-configuration";
-//		final String FLAG_URL = "-mirrorURL";
-		final String FLAG_SPLASH = "-nosplash";
-		final String FLAG_CONSOLELOG = "-consolelog";
-		final String data =
-			UpdateCore.getPlugin().getStateLocation().toOSString();
-		String[] cmd =
-			new String[] {
-				getJavaVMPath(),
-				FLAG_CP,
-				classpath,
-				launcher,
-				FLAG_APP,
-				application,
-				FLAG_CMD,
-				command,
-				(remoteLoc !=null ? FLAG_FROM : ""),
-				(remoteLoc !=null ? remoteLoc : ""),
-				(localLoc !=null ? FLAG_TO : ""),
-				(localLoc !=null ?localLoc.replaceFirst("file:", "") : ""),
-				(fid != null ? FLAG_FID : ""),
-				(fid != null ? fid : ""),
-				(ver != null ? FLAG_VERSION : ""),
-				(ver != null ? ver : ""),
-				(config != null ? FLAG_CONFIG : ""),
-				(config != null ? config : ""),
-				FLAG_SPLASH,
-				FLAG_DATA,
-				data,
-				FLAG_CONSOLELOG};
-		for (int i = 0 ;i<cmd.length; i++){
-			System.out.print(cmd[i] + " ");			
-		}System.out.println();
-		return cmd;
-	}
-	
-	public String getJavaVMPath() {
-		// Create command string for launching the process
-		String vm = System.getProperty("java.vm.name");
-		String executable = "J9".equals(vm) ? "j9" : "java";
-		if (org.eclipse.osgi.service.environment.Constants.OS_WIN32.equals(Platform.getOS()))
-			executable += "w.exe";
-
-		String javaInstallDir =
-			System.getProperty("java.home") + File.separator + "bin";
-		return javaInstallDir + File.separator + executable;
-	}
-	
-	public int performAction(String[] cmd) {
-		File file = new File(getEclipseRoot());
-		try {
-
-			Process proc =
-				Runtime.getRuntime().exec(cmd, (String[]) null, file);
-
-			StreamConsumer outputs = new StreamConsumer(proc.getInputStream());
-			outputs.start();
-			StreamConsumer errors = new StreamConsumer(proc.getErrorStream());
-			errors.start();
-			Timer timer = new Timer(proc);
-			timer.start();
-
-			return proc.waitFor();
-		} catch (IOException e) {
-			System.err.println(e);
-		} catch (InterruptedException e) {
-			System.err.println(e);
-		} catch (Exception e) {
-			System.err.println(e);
-		}
-		return -1;
-	}
-	
-	public String getEclipseRoot() {
-		return ConfiguratorUtils.getInstallURL().toExternalForm().replaceFirst(
-			"file:",
-			"");
-	}
-	
-	public ArrayList getArrayList(String[] list){
-		ArrayList temp = new ArrayList();
-		for(int i = 0; i< list.length; i++){
-			temp.add(list[i]);
-		}
-		return temp;
-	}
-	
-	public File getLatestConfigurationFile(File localFile) {
-
-		try {
-			System.out.println("reading from : " + localFile.getAbsolutePath());
-				FileReader freader = new FileReader(localFile);
-				BufferedReader breader = new BufferedReader(freader);
-				String configFileName="", line;
-				while (breader.ready()) {
-					line = breader.readLine();
-//					System.out.println(line);
-					if (line.trim().startsWith("<config url")) {
-						configFileName = line.split("\"")[1];
-					}
-				}
-				// read config file
-				File parent = new File(localFile.getParent());
-				System.out.println("parent: " + parent.getAbsolutePath());
-				String[] parList = parent.list();
-				int latest = 0; 
-				for (int i = parList.length-1; i>=0; i--){
-					System.out.println("parList[" + i + "]: " + parList[i]);
-					if (parList[i].startsWith("platform")){
-						latest = i;
-						break;
-					}
-				}
-				File configFile = new File(parent.getAbsolutePath() + File.separator + parList[latest]);
-				return configFile;
-				// end of config file read
-		} catch (Exception e) {
-			System.err.println(e);
-			e.printStackTrace();
-		}
-		return localFile;
-	}
-	
-	private static void deleteDirectory(File dir) {
-		File[] list = dir.listFiles();
-		if (list == null)
-			return;
-			
-		for (int i=0; i<list.length; i++) {
-			if (list[i].isDirectory()) 
-				deleteDirectory(list[i]);
-			if (!list[i].delete())
-				System.out.println("Unable to delete "+list[i].toString());
-		}
-	}
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestBundlesInstall.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestBundlesInstall.java
deleted file mode 100644
index bb04678..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestBundlesInstall.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-
-package org.eclipse.update.tests.standalone;
-
-import java.util.*;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.update.core.*;
-import org.eclipse.update.standalone.*;
-
-
-public class TestBundlesInstall extends StandaloneManagerTestCase {
-	private static boolean isInstalled;
-
-	public TestBundlesInstall(String arg0) {
-		super(arg0);
-		isInstalled = false;
-	}
-
-	public void umSetUp() {
-		super.umSetUp();
-		//System.out.println("looking at configured sites available....");
-		//checkConfiguredSites();
-		
-		String featureId = "com.example.bundle.feature";
-		String version = "1.0.0";
-
-		String fromRemoteSiteUrl = "http://"+getHttpHost()+":"+ getHttpPort()+ "/org.eclipse.update.tests.core.updatetests/bundleSite/";;
-		if (!isInstalled) {
-			System.out.println(
-				"==============" + this.getClass() + "=============");
-			StandaloneUpdateApplication app = new StandaloneUpdateApplication();
-			try {
-				exitValue = (Integer)app.run(getCommand(
-					"install",
-					featureId,
-					version,
-					null,
-					fromRemoteSiteUrl,
-					TARGET_FILE_SITE.getFile()));
-			} catch (Exception e) {
-				e.printStackTrace();
-			}
-			isInstalled = true;
-		}
-		
-	}
-
-	public void testPluginsExist() {
-		ISite localSite = getConfiguredSite(TARGET_FILE_SITE);
-		
-		System.out.println("localSite: " + localSite.getURL().getFile());
-		IPluginEntry[] pluginEntries = localSite.getPluginEntries();
-		ArrayList list = new ArrayList();
-		if (pluginEntries == null || pluginEntries.length == 0){
-			System.err.println("No plugin entries on the target site");
-			fail("No plugin entries on the target site");
-		} else{
-			for (int i = 0; i < pluginEntries.length; i++){
-				System.out.println("found plugin: " + pluginEntries[i].getVersionedIdentifier().toString());
-				list.add(pluginEntries[i].getVersionedIdentifier().toString());
-			}
-		}
-
-		String[] pluginNames =
-			{	"com.example.bundle.plugin_1.0.0",
-				"com.example.bundle.plugin.ui_2.0.0",
-				"com.example.bundle.fragment_1.0.0",
-				"com.example.budle.fragment.ui_1.0.0"};
-		assertTrue(checkFilesInList(pluginNames, list));
-	}
-
-	public void testFeaturesExist() {
-		try {
-			ISite localSite =  getConfiguredSite(TARGET_FILE_SITE);
-
-			System.out.println("localSite: " + localSite.getURL().getFile());
-			// get feature references 
-			IFeatureReference[] localFeatures =
-				localSite.getFeatureReferences();
-			System.out.println("local currentCOnfigSite: " + localSite.getCurrentConfiguredSite());
-			ArrayList list = new ArrayList();
-			if (localFeatures == null || localFeatures.length == 0){
-				System.err.println("No features on the target site");
-				fail("No features on the target site");
-			} else {
-				for (int i = 0; i < localFeatures.length; i++)
-					list.add(localFeatures[i].getVersionedIdentifier().toString());
-			}
-			String[] featureNames =
-				{
-					"com.example.bundle.feature_1.0.0"};
-			assertTrue(checkFilesInList(featureNames, list));
-		} catch (CoreException e) {
-			System.err.println(e);
-		}
-	}
-
-	// makes sure all files/directories in "names" are in the directory listing "list"
-	public boolean checkFilesInList(
-		String[] names,
-		ArrayList list) {
-		
-		for (int i = 0; i < names.length; i++) {
-			System.out.println(names[i]);
-			if (!list.contains(names[i])){
-				return false;
-			}
-		}
-		return true;
-	}
-
-	// ensure exit without problems
-	public void testExitValue() throws Exception {
-		System.out.println("exitValue: " + exitValue);
-		assertEquals(exitValue, IPlatformRunnable.EXIT_OK);
-	}
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureDisable.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureDisable.java
deleted file mode 100644
index 3b332a2..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureDisable.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-
-package org.eclipse.update.tests.standalone;
-
-import java.io.*;
-import java.util.*;
-
-import org.eclipse.core.runtime.IPlatformRunnable;
-import org.eclipse.update.core.*;
-import org.eclipse.update.internal.core.*;
-import org.eclipse.update.standalone.*;
-
-public class TestFeatureDisable extends StandaloneManagerTestCase {
-	public static boolean isDisabled;
-	
-	public TestFeatureDisable(String arg0) {
-		super(arg0);
-		isDisabled = false;
-	}
-
-	public void umSetUp() {
-		super.umSetUp();
-		
-		String featureId = "my.alphabet";
-		String version = "1.0.0";
-
-		checkConfiguredSites();
-		if (!isDisabled) {
-			System.out.println(
-				"==============" + this.getClass() + "=============");
-			StandaloneUpdateApplication app = new StandaloneUpdateApplication();
-			try {
-				exitValue = (Integer)app.run(getCommand(
-					"disable",
-					featureId,
-					version,
-					null,
-					null,
-					TARGET_FILE_SITE.getFile()));
-			} catch (Exception e) {
-				e.printStackTrace();
-			}
-			isDisabled = true;
-			checkConfiguredSites();
-		}
-	}
-	
-	// ensure exit without problems
-	public void testExitValue() throws Exception {
-		System.out.println("exitValue: " + exitValue);
-		assertEquals(exitValue, IPlatformRunnable.EXIT_OK);
-	}
-
-	public void testFeatureStatus() throws Exception {
-		File localFile = new File(((SiteLocal)SiteManager.getLocalSite()).getLocationURL().getFile());
-		System.out.println(localFile.getAbsolutePath());
-		assertTrue(localFile.exists());
-		File configFile = getLatestConfigurationFile(localFile);
-	
-		String[] names =
-			{
-				"features/my.alphabet.round.letters_1.0.0/",
-				"features/my.alphabet.straight.letters_1.0.0/",
-				"features/my.alphabet_1.0.0/" };
-		assertTrue(configFile.exists());
-		assertTrue(checkFeaturesDisabled(getArrayList(names),configFile, TARGET_FILE_SITE.getFile()));
-	}
-
-	public boolean checkFeaturesDisabled(ArrayList featureNames, File configFile, String siteLocation){
-		try {
-			FileReader freader = new FileReader(configFile);
-			BufferedReader breader = new BufferedReader(freader);
-			String line;
-			System.out.println("now reading..." + configFile.getAbsolutePath());
-			boolean isSiteToCheck = false;
-			while (breader.ready()) {
-				line = breader.readLine();
-				if (line.trim().startsWith("<site url")){
-					isSiteToCheck = line.trim().split("\"")[1].replaceFirst("file:","").equals(siteLocation);
-				} else if (isSiteToCheck && line.trim().startsWith("<feature configured")){
-					System.err.println(line);
-					String[] configLine = line.split("\"");
-					if (featureNames.contains(configLine[3]) && configLine[1].equals("true")){
-						fail(configLine[3] + " has not been disabled.");
-					}
-				}
-			}
-		} catch (Exception e) {
-			System.err.println(e);
-		} 
-		return true;
-	}
-
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureEnable.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureEnable.java
deleted file mode 100644
index dad8983..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureEnable.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-
-package org.eclipse.update.tests.standalone;
-
-import java.io.*;
-import java.util.*;
-
-import org.eclipse.core.runtime.IPlatformRunnable;
-import org.eclipse.update.core.*;
-import org.eclipse.update.internal.core.*;
-import org.eclipse.update.standalone.*;
-
-public class TestFeatureEnable extends StandaloneManagerTestCase {
-	public static boolean isEnabled;
-	
-	public TestFeatureEnable(String arg0) {
-		super(arg0);
-		isEnabled = false;
-	}
-
-	public void umSetUp() {
-
-		super.umSetUp();
-		
-		String featureId = "my.alphabet";
-		String version = "1.0.0";
-
-		checkConfiguredSites();
-		if (!isEnabled) {
-			System.out.println(
-				"==============" + this.getClass() + "=============");
-			StandaloneUpdateApplication app = new StandaloneUpdateApplication();
-			try {
-				exitValue = (Integer)app.run(getCommand(
-					"enable",
-					featureId,
-					version,
-					null,
-					null,
-					TARGET_FILE_SITE.getFile()));
-			} catch (Exception e) {
-				e.printStackTrace();
-			}
-			isEnabled = true;
-			checkConfiguredSites();
-		}
-	}
-	
-	// ensure exit without problems
-	public void testExitValue() throws Exception {
-		System.out.println("exitValue: " + exitValue);
-		assertEquals(exitValue, IPlatformRunnable.EXIT_OK);
-	}
-
-	public void testFeatureStatus() throws Exception {
-	
-		File localFile = new File(((SiteLocal)SiteManager.getLocalSite()).getLocationURL().getFile());
-		System.out.println(localFile.getAbsolutePath());
-		assertTrue(localFile.exists());
-		File configFile = getLatestConfigurationFile(localFile);
-		
-		String[] names =
-			{
-				"features/my.alphabet.round.letters_1.0.0/",
-				"features/my.alphabet.straight.letters_1.0.0/",
-				"features/my.alphabet_1.0.0/" };
-		assertTrue(configFile.exists());
-		assertTrue(checkFeaturesEnabled(getArrayList(names),configFile, TARGET_FILE_SITE.getFile()));
-	}
-
-	public boolean checkFeaturesEnabled(ArrayList featureNames, File configFile, String siteLocation){
-		try {
-			FileReader freader = new FileReader(configFile);
-			BufferedReader breader = new BufferedReader(freader);
-			String line;
-			System.out.println("now reading..." + configFile.getAbsolutePath());
-			boolean isSiteToCheck = false;
-			while (breader.ready()) {
-				line = breader.readLine();
-				if (line.trim().startsWith("<site url")){
-					isSiteToCheck = line.trim().split("\"")[1].replaceFirst("file:","").equals(siteLocation);
-				} else if (isSiteToCheck && line.trim().startsWith("<feature configured")){
-					System.err.println(line);
-					String[] configLine = line.split("\"");
-					if (featureNames.contains(configLine[3]) && configLine[1].equals("false")){
-						fail(configLine[3] + " has not been enabled.");
-					}
-					// temp - delete later
-					if (featureNames.contains(configLine[3]))
-						System.err.println(line);
-					// end of temp delete
-				}
-			}
-		} catch (Exception e) {
-			System.err.println(e);
-		} 
-		return true;
-	}
-
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureInstall.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureInstall.java
deleted file mode 100644
index 19fcbcd..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureInstall.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-
-package org.eclipse.update.tests.standalone;
-
-
-import java.util.*;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.update.core.*;
-import org.eclipse.update.standalone.*;
-
-
-public class TestFeatureInstall extends StandaloneManagerTestCase {
-	private static boolean isInstalled;
-
-	public TestFeatureInstall(String arg0) {
-		super(arg0);
-		isInstalled = false;
-	}
-
-	public void umSetUp() {
-		super.umSetUp();
-		//System.out.println("looking at configured sites available....");
-		//checkConfiguredSites();
-		
-		String featureId = "my.alphabet";
-		String version = "1.0.0";
-
-		String fromRemoteSiteUrl =
-			"http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-update-home/3.0/site/";
-		if (!isInstalled) {
-			System.out.println(
-				"==============" + this.getClass() + "=============");
-			StandaloneUpdateApplication app = new StandaloneUpdateApplication();
-			try {
-				exitValue = (Integer)app.run(getCommand(
-					"install",
-					featureId,
-					version,
-					null,
-					fromRemoteSiteUrl,
-					TARGET_FILE_SITE.getFile()));
-			} catch (Exception e) {
-				e.printStackTrace();
-			}
-			isInstalled = true;
-		}
-		
-	}
-
-	public void testPluginsExist() {
-		ISite localSite = getConfiguredSite(TARGET_FILE_SITE);
-		
-		System.out.println("localSite: " + localSite.getURL().getFile());
-		IPluginEntry[] pluginEntries = localSite.getPluginEntries();
-		ArrayList list = new ArrayList();
-		if (pluginEntries == null || pluginEntries.length == 0){
-			System.err.println("No plugin entries on the target site");
-			fail("No plugin entries on the target site");
-		} else{
-			for (int i = 0; i < pluginEntries.length; i++){
-				System.out.println("found plugin: " + pluginEntries[i].getVersionedIdentifier().toString());
-				list.add(pluginEntries[i].getVersionedIdentifier().toString());
-			}
-		}
-
-		String[] pluginNames =
-			{	"my.alphabet.letter.a_1.0.0",
-				"my.alphabet.letter.b_1.0.0",
-				"my.alphabet.letter.c_1.0.0",
-				"my.alphabet.letter.e_1.0.0",
-				"my.alphabet.round.letters_1.0.0",
-				"my.alphabet.straight.letters_1.0.0",
-				"my.alphabet_1.0.0" };
-		assertTrue(checkFilesInList(pluginNames, list));
-	}
-
-	public void testFeaturesExist() {
-		try {
-			ISite localSite =  getConfiguredSite(TARGET_FILE_SITE);
-
-			System.out.println("localSite: " + localSite.getURL().getFile());
-			// get feature references 
-			IFeatureReference[] localFeatures =
-				localSite.getFeatureReferences();
-			System.out.println("local currentCOnfigSite: " + localSite.getCurrentConfiguredSite());
-			ArrayList list = new ArrayList();
-			if (localFeatures == null || localFeatures.length == 0){
-				System.err.println("No features on the target site");
-				fail("No features on the target site");
-			} else {
-				for (int i = 0; i < localFeatures.length; i++)
-					list.add(localFeatures[i].getVersionedIdentifier().toString());
-			}
-			String[] featureNames =
-				{
-					"my.alphabet.round.letters_1.0.0",
-					"my.alphabet.straight.letters_1.0.0",
-					"my.alphabet_1.0.0" };
-			assertTrue(checkFilesInList(featureNames, list));
-		} catch (CoreException e) {
-			System.err.println(e);
-		}
-	}
-
-	// makes sure all files/directories in "names" are in the directory listing "list"
-	public boolean checkFilesInList(
-		String[] names,
-		ArrayList list) {
-		
-		for (int i = 0; i < names.length; i++) {
-			System.out.println(names[i]);
-			if (!list.contains(names[i])){
-				return false;
-			}
-		}
-		return true;
-	}
-
-	// ensure exit without problems
-	public void testExitValue() throws Exception {
-		System.out.println("exitValue: " + exitValue);
-		assertEquals(exitValue, IPlatformRunnable.EXIT_OK);
-	}
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureUninstall.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureUninstall.java
deleted file mode 100644
index a256646..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureUninstall.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-
-package org.eclipse.update.tests.standalone;
-
-import java.util.*;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.update.core.*;
-import org.eclipse.update.standalone.*;
-
-
-public class TestFeatureUninstall extends StandaloneManagerTestCase {
-	public static boolean isUninstalled;
-	
-	public TestFeatureUninstall(String arg0){
-		super(arg0);
-		isUninstalled = false;
-	}
-	
-	public void umSetUp() {
-		super.umSetUp();
-		System.out.println("looking at configured sites available....");
-		checkConfiguredSites();
-		
-		String featureId = "my.alphabet";
-		String version = "1.0.0";
-
-		if(!isUninstalled){
-			System.out.println(
-				"==============" + this.getClass() + "=============");
-			StandaloneUpdateApplication app = new StandaloneUpdateApplication();
-			try {
-				exitValue = (Integer)app.run(getCommand(
-					"uninstall",
-					featureId,
-					version,
-					null,
-					null,
-					TARGET_FILE_SITE.getFile()));
-			} catch (Exception e) {
-				e.printStackTrace();
-			}
-			isUninstalled = true;
-		}
-	}
-	
-	// ensure exit without problems
-	public void testExitValue() throws Exception {
-		System.out.println("exitValue: " + exitValue);
-		assertEquals(exitValue, IPlatformRunnable.EXIT_OK);
-	}
-	
-	public void testFeaturesUninstalled() throws Exception {
-		try {
-			ISite localSite = getConfiguredSite(TARGET_FILE_SITE);
-			
-			// get feature references 
-			IFeatureReference[] localFeatures =
-				localSite.getFeatureReferences();
-			ArrayList list = new ArrayList();
-			if (localFeatures == null || localFeatures.length == 0){
-				fail("No features on the target site");
-			} else {
-				for (int i = 0; i < localFeatures.length; i++)
-					list.add(localFeatures[i].getVersionedIdentifier().toString());
-			}
-			String[] featureNames =
-				{
-					"my.alphabet.round.letters_1.0.0",
-					"my.alphabet.straight.letters_1.0.0",
-					"my.alphabet_1.0.0" };
-			assertTrue(checkFilesNotInList(featureNames, list));
-		} catch (CoreException e) {
-			System.err.println(e);
-		}
-	}
-	
-	public void testPluginsUninstalled() throws Exception {
-			ISite localSite = getConfiguredSite(TARGET_FILE_SITE);
-			
-			IPluginEntry[] pluginEntries = localSite.getPluginEntries();
-			ArrayList list = new ArrayList();
-			if (pluginEntries == null || pluginEntries.length == 0)
-				fail("No plugin entries on the target site");
-			else
-				for (int i = 0; i < pluginEntries.length; i++){
-					list.add(pluginEntries[i].getVersionedIdentifier().toString());
-					System.out.println("plugin found: " + pluginEntries[i].getVersionedIdentifier().toString());
-				}
-
-			String[] pluginNames =
-				{	"my.alphabet.letter.a_1.0.0",
-					"my.alphabet.letter.b_1.0.0",
-					"my.alphabet.letter.c_1.0.0",
-					"my.alphabet.letter.e_1.0.0",
-					"my.alphabet.round.letters_1.0.0",
-					"my.alphabet.straight.letters_1.0.0",
-					"my.alphabet_1.0.0" };
-			assertTrue(checkFilesNotInList(pluginNames, list));	
-	}
-	
-	// makes sure all files/directories in "names" are NOT in the directory listing "list"
-	public boolean checkFilesNotInList(
-		String[] names,
-		ArrayList list) {
-		
-		for (int i = 0; i < names.length; i++) {
-			System.out.println("searching for " + names[i] + "...");
-			if (list.contains(names[i]))
-				return false;
-		}
-		return true;
-	}
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureUpdate.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureUpdate.java
deleted file mode 100644
index a7e20c1..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/standalone/TestFeatureUpdate.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-
-package org.eclipse.update.tests.standalone;
-
-import java.util.*;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.update.core.*;
-import org.eclipse.update.standalone.*;
-
-public class TestFeatureUpdate extends StandaloneManagerTestCase {
-	public static boolean isUpdated;
-	
-	public TestFeatureUpdate(String arg0) {
-		super(arg0);
-		isUpdated = false;
-	}
-
-	public void umSetUp() {
-		super.umSetUp();
-		System.out.println("looking at configured sites available....");
-		checkConfiguredSites();
-		
-		String featureId = "my.alphabet";
-		String version = "1.0.1";
-
-		if (!isUpdated) {
-			System.out.println(
-				"==============" + this.getClass() + "=============");
-			StandaloneUpdateApplication app = new StandaloneUpdateApplication();
-			try {
-				exitValue = (Integer)app.run(getCommand(
-						"update",
-						featureId,
-						version,
-						null,
-						null,
-						TARGET_FILE_SITE.getFile()));
-			} catch (Exception e) {
-				e.printStackTrace();
-			}
-			isUpdated = true;
-		}
-	}
-
-
-	// ensure exit without problems
-	public void testExitValue() throws Exception {
-		System.out.println("exitValue: " + exitValue);
-		assertEquals(exitValue, IPlatformRunnable.EXIT_OK);
-	}
-	
-	public void testPluginsExist() {
-
-			ISite localSite =  getConfiguredSite(TARGET_FILE_SITE);
-
-			IPluginEntry[] pluginEntries = localSite.getPluginEntries();
-			ArrayList list = new ArrayList();
-			if (pluginEntries == null || pluginEntries.length == 0)
-				fail("No plugin entries on the target site");
-			else
-				for (int i = 0; i < pluginEntries.length; i++) {
-					list.add(
-						pluginEntries[i].getVersionedIdentifier().toString());
-				}
-
-			String[] pluginNames =
-				{
-					"my.alphabet.letter.a_1.0.0",
-					"my.alphabet.letter.b_1.0.0",
-					"my.alphabet.letter.c_1.0.0",
-					"my.alphabet.letter.e_1.0.0",
-					"my.alphabet.round.letters_1.0.0",
-					"my.alphabet.straight.letters_1.0.0",
-					"my.alphabet_1.0.0",
-					"my.alphabet.letter.a_1.0.1",
-					"my.alphabet.letter.b_1.0.1",
-					"my.alphabet.letter.c_1.0.1",
-					"my.alphabet.letter.e_1.0.1",
-					"my.alphabet.round.letters_1.0.1",
-					"my.alphabet.straight.letters_1.0.1",
-					"my.alphabet_1.0.1" };
-			assertTrue(checkFilesInList(pluginNames, list));
-	}
-
-	public void testFeaturesExist() {
-		try {
-			ISite localSite = getConfiguredSite(TARGET_FILE_SITE);
-
-			// get feature references
-			IFeatureReference[] localFeatures =
-				localSite.getFeatureReferences();
-			ArrayList list = new ArrayList();
-			if (localFeatures == null || localFeatures.length == 0) {
-				fail("No features on the target site");
-			} else {
-				for (int i = 0; i < localFeatures.length; i++) {
-					list.add(
-						localFeatures[i].getVersionedIdentifier().toString());
-					System.out.println(
-						localFeatures[i].getVersionedIdentifier().toString());
-				}
-			}
-			String[] featureNames =
-				{
-					"my.alphabet.round.letters_1.0.0",
-					"my.alphabet.straight.letters_1.0.0",
-					"my.alphabet_1.0.0",
-					"my.alphabet.round.letters_1.0.1",
-					"my.alphabet.straight.letters_1.0.1",
-					"my.alphabet_1.0.1" };
-			assertTrue(checkFilesInList(featureNames, list));
-		} catch (CoreException e) {
-			System.err.println(e);
-		}
-	}
-
-	// makes sure all files/directories in "names" are in the directory listing
-	// "list"
-	public boolean checkFilesInList(String[] names, ArrayList list) {
-
-		for (int i = 0; i < names.length; i++) {
-			if (!list.contains(names[i]))
-				return false;
-		}
-		return true;
-	}
-
-}
diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/types/AllTypesTests.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/types/AllTypesTests.java
deleted file mode 100644
index 970648d..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/types/AllTypesTests.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.types;

-

-import org.eclipse.update.tests.UpdateManagerTestCase;

-import junit.framework.*;

-

-

-public class AllTypesTests extends UpdateManagerTestCase {

-public AllTypesTests(String name) {

-	super(name);

-}

-public static Test suite() {

-	TestSuite suite = new TestSuite();

-	suite.setName("Regular Install Tests");

-	

-	// the following will take all teh test methods in teh class that start with 'test'

-	suite.addTest(new TestSuite(TestFeatureType.class));

-	suite.addTest(new TestSuite(TestSiteType.class));	

-	

-	// or you can specify the method

-	//suite.addTest(new TestGetFeature("methodThatDoesNotStartWithtest"));	

-	

-	return suite;

-}

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/types/TestFeatureType.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/types/TestFeatureType.java
deleted file mode 100644
index bf5479f..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/types/TestFeatureType.java
+++ /dev/null
@@ -1,155 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.types;

-

-import java.io.File;

-import java.net.URL;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.update.core.*;

-import org.eclipse.update.internal.core.*;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-

-public class TestFeatureType extends UpdateManagerTestCase {

-

-

-	private static final String PACKAGED_FEATURE_TYPE = "packaged"; //$NON-NLS-1$

-	private static final String INSTALLED_FEATURE_TYPE = "installed"; //$NON-NLS-1$	

-	

-	/**

-	 * Test the getFeatures()

-	 */

-	public TestFeatureType(String arg0) {

-		super(arg0);

-	}

-	

-	

-	public String getDefaultInstallableFeatureType() {

-		String pluginID = UpdateCore.getPlugin().getDescriptor().getUniqueIdentifier() + "."; //$NON-NLS-1$

-		return pluginID + PACKAGED_FEATURE_TYPE;

-	}

-	

-	public String getDefaultExecutableFeatureType() {

-		String pluginID = UpdateCore.getPlugin().getDescriptor().getUniqueIdentifier() + "."; //$NON-NLS-1$

-		return pluginID + INSTALLED_FEATURE_TYPE;

-	}		

-	

-	/**

-	 * @throws Exception

-	 */

-	public void testSimplePackagedFeatureType() throws Exception{ 

-		FeatureTypeFactory factories = FeatureTypeFactory.getInstance();

-		IFeatureFactory factory = factories.getFactory(getDefaultInstallableFeatureType());

-		

-		ISite site = SiteManager.getSite(SOURCE_FILE_SITE,null);

-		URL featureURL = new URL(SOURCE_FILE_SITE,"features/features2.jar ");

-		

-		IFeature anotherFeature = factory.createFeature(featureURL,site,null);

-		

-		assertTrue("Factory doesn't create same feature",anotherFeature.getVersionedIdentifier().equals(anotherFeature.getVersionedIdentifier()));

-	}	

-	

-		/**

-	 * @throws Exception

-	 */

-	public void testSimpleExecutableFeatureType() throws Exception{ 

-		FeatureTypeFactory factories = FeatureTypeFactory.getInstance();

-		IFeatureFactory factory = factories.getFactory(getDefaultExecutableFeatureType());

-		

-		ISite site = SiteManager.getSite(SOURCE_FILE_SITE,null);

-		URL featureURL = new URL(SOURCE_FILE_SITE,"testAPI/"+Site.DEFAULT_INSTALLED_FEATURE_PATH+"feature3/");

-		

-		IFeature anotherFeature = factory.createFeature(featureURL,site,null);

-		

-		assertTrue("Factory doesn't create same feature",anotherFeature.getVersionedIdentifier().equals(anotherFeature.getVersionedIdentifier()));

-	}	

-	

-	/**

-	 * @throws Exception

-	 */

-	public void testFeatureType() throws Exception{ 

-		FeatureTypeFactory factories = FeatureTypeFactory.getInstance();

-		IFeatureFactory factory = factories.getFactory(getDefaultInstallableFeatureType());

-		

-		ISite site = SiteManager.getSite(SOURCE_HTTP_SITE,null);

-		IFeature feature = site.getFeatureReferences()[0].getFeature(null);

-		

-		IFeature anotherFeature = factory.createFeature(feature.getURL(),site,null);

-		

-		assertTrue("Factory doesn't create same feature",feature.getVersionedIdentifier().equals(anotherFeature.getVersionedIdentifier()));

-	}

-	

-	

-	/**

-	 * @throws Exception

-	 */

-	public void testFeatureNewType() throws Exception{ 

-		FeatureTypeFactory factories = FeatureTypeFactory.getInstance();

-		IFeatureFactory factory = factories.getFactory(getDefaultExecutableFeatureType());

-		

-		String featurePath = dataPath+"FeatureTypeExamples/site1/site.xml";

-		ISite site = SiteManager.getSite(new File(featurePath).toURL(),null);

-		IFeatureReference ref = site.getFeatureReferences()[0];

-		IFeature feature = ref.getFeature(null);

-		

-		IFeature anotherFeature = factory.createFeature(feature.getURL(),site,null);

-

-		assertTrue(feature.getFeatureContentProvider() instanceof FeatureExecutableContentProvider);		

-		assertTrue(((FeatureReference)ref).getType().equals("org.eclipse.update.tests.core.feature1"));		

-		assertTrue("Factory doesn't create same feature",feature.getVersionedIdentifier().equals(anotherFeature.getVersionedIdentifier()));

-

-

-	}

-	

-	

-		/**

-	 * @throws Exception

-	 */

-	public void testFeatureAnotherType() throws Exception{ 

-		FeatureTypeFactory factories = FeatureTypeFactory.getInstance();

-		IFeatureFactory factory = factories.getFactory(getDefaultInstallableFeatureType());

-		

-		String featurePath = dataPath+"FeatureTypeExamples/site2/site.xml";

-		ISite site = SiteManager.getSite(new File(featurePath).toURL(),null);

-		IFeatureReference ref = site.getFeatureReferences()[0];		

-		IFeature feature = ref.getFeature(null);

-		

-		IFeature anotherFeature = factory.createFeature(feature.getURL(),site,null);

-		

-		assertTrue("Factory doesn't create same feature",feature.getVersionedIdentifier().equals(anotherFeature.getVersionedIdentifier()));

-		assertTrue(feature.getFeatureContentProvider() instanceof FeaturePackagedContentProvider);

-		assertTrue(((FeatureReference)ref).getType().equals("org.eclipse.update.core.packaged"));

-		

-	}

-		

-		

-	/**

-	 * @throws Exception

-	 */

-	public void testFeatureUnknownType() throws Exception{ 

-		String featurePath = dataPath+"FeatureTypeExamples/site3/site.xml";

-		ISite site = SiteManager.getSite(new File(featurePath).toURL(),null);

-		IFeatureReference ref = site.getFeatureReferences()[0];		

-		try {

-			ref.getFeature(null);

-			assertTrue("id found, should not be found",false);

-		} catch (CoreException e){

-			if (e.getMessage().indexOf("org.eclipse.update.core.unknowntype.jar")==-1){

-				throw e;

-			}

-		}

-		

-	}		

-		

-}

-

-

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/types/TestSiteType.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/types/TestSiteType.java
deleted file mode 100644
index f4513d4..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/types/TestSiteType.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.types;

-

-import java.io.File;

-import java.net.URL;

-

-import org.eclipse.core.runtime.CoreException;

-import org.eclipse.update.core.*;

-import org.eclipse.update.internal.core.FeaturePackagedContentProvider;

-import org.eclipse.update.internal.core.SiteURLContentProvider;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-import org.eclipse.update.tests.implementation.SiteFTPFactory;

-

-public class TestSiteType extends UpdateManagerTestCase {

-

-	/**

-	 * Test the getFeatures()

-	 */

-	public TestSiteType(String arg0) {

-		super(arg0);

-	}

-

-	/**

-	 * @throws Exception

-	 */

-	public void testSiteType() throws Exception {

-

-		String featurePath = dataPath + "SiteTypeExamples/site1/site.xml";

-		ISite site = SiteManager.getSite(new File(featurePath).toURL(),null);

-		IFeatureReference ref = site.getFeatureReferences()[0];

-		IFeature feature = ref.getFeature(null);

-

-		assertTrue(site.getSiteContentProvider() instanceof SiteURLContentProvider);

-		assertTrue(((Site) site).getType().equals("org.eclipse.update.core.http"));

-		assertTrue(feature.getFeatureContentProvider() instanceof FeaturePackagedContentProvider);

-

-	}

-

-	/**

-		 * @throws Exception

-		 */

-	public void testFTPSiteType() throws Exception {

-

-		ISite site = SiteManager.getSite(new URL(SOURCE_FILE_SITE + "FTPLikeSite/"),null);

-

-		// should not find the mapping

-		// but then should attempt to read the XML file

-		// found a new type

-		// call the new type

-		assertTrue(

-			"Wrong site type",

-			site.getType().equals("org.eclipse.update.tests.ftp"));

-		assertTrue(

-			"Wrong file",

-			site.getURL().getFile().equals("/" + SiteFTPFactory.FILE));

-

-	}

-

-	public void testParseValid1() throws Exception {

-		try {

-			URL remoteURL = new URL(SOURCE_FILE_SITE + "parsertests/siteftp.xml");

-			ISite site = SiteManager.getSite(remoteURL,null);

-			site.getArchives();

-		} catch (CoreException e) {

-			if (e.getMessage().indexOf("</feature>") == -1) {

-				throw e;

-			}

-		}

-	}

-

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/uivalues/AllCoreUITests.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/uivalues/AllCoreUITests.java
deleted file mode 100644
index a18ab16..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/uivalues/AllCoreUITests.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.uivalues;

-

-import org.eclipse.update.tests.UpdateManagerTestCase;

-import junit.framework.*;

-

-

-public class AllCoreUITests extends UpdateManagerTestCase {

-public AllCoreUITests(String name) {

-	super(name);

-}

-public static Test suite() {

-	TestSuite suite = new TestSuite();

-	suite.setName("Regular Install Tests");

-	

-	// the following will take all teh test methods in teh class that start with 'test'

-	suite.addTest(new TestSuite(TestUILabel.class));

-	

-	// or you can specify the method

-	//suite.addTest(new TestGetFeature("methodThatDoesNotStartWithtest"));	

-	

-	return suite;

-}

-}

diff --git a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/uivalues/TestUILabel.java b/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/uivalues/TestUILabel.java
deleted file mode 100644
index a8915d5..0000000
--- a/update/org.eclipse.update.tests.core/src/org/eclipse/update/tests/uivalues/TestUILabel.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2004 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.tests.uivalues;

-

-import java.io.File;

-import java.net.URL;

-

-import org.eclipse.update.core.*;

-import org.eclipse.update.tests.UpdateManagerTestCase;

-

-

-public class TestUILabel extends UpdateManagerTestCase {

-

-	/**

-	 * Test the getFeatures()

-	 */

-	public TestUILabel(String arg0) {

-		super(arg0);

-	}

-	

-	

-	/**

-	 * Method testHTTPSite.

-	 * @throws Exception

-	 */

-	public void testUpdateManagerSite() throws Exception{ 

-		

-		ISite remoteSite = SiteManager.getSite(new URL("http",getHttpHost(),getHttpPort(),bundle.getString("HTTP_PATH_2")),null);

-		ICategory[] categories = remoteSite.getCategories();

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

-			System.out.println("Category ->"+categories[i].getLabel()+":"+categories[i].getName());

-		}

-		System.out.println(remoteSite.getDescription().getURL().toExternalForm());

-		IFeatureReference[] remoteFeatures = remoteSite.getFeatureReferences();

-		if (remoteFeatures==null || remoteFeatures.length==0) fail("No feature available for testing");		

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

-			IFeature feature = remoteFeatures[i].getFeature(null);

-			System.out.println("feature:"+feature.getVersionedIdentifier()+"->"+feature.getLabel());

-			print(feature.getLicense(),"License");

-			print(feature.getCopyright(),"Copyright");			

-			print(feature.getDescription(),"Description");				

-			

-			// check that it downloads the feature.jar under the cover

-			// and unpack it

-			

-			URL url = feature.getLicense().getURL();

-			if (url!=null){

-				assertTrue((new File(url.getFile())).exists());

-			}

-

-			url = feature.getCopyright().getURL();

-			if (url!=null){

-				assertTrue((new File(url.getFile())).exists());

-			}

-			

-			url = feature.getDescription().getURL();

-			if (url!=null){

-				assertTrue((new File(url.getFile())).exists());

-			}

-			

-		}

-	}

-	

-	

-	/**

-	 * Method print.

-	 * @param info

-	 * @param text

-	 */

-	private void print(IURLEntry info, String text){

-		System.out.print("->"+text+":");

-		if (info.getURL()!=null) 

-			System.out.println("<"+info.getURL().toExternalForm()+">");

-		else 

-			System.out.println(info.getAnnotation());

-	}

-} 

-

-

diff --git a/update/org.eclipse.update.tests.core/test.xml b/update/org.eclipse.update.tests.core/test.xml
deleted file mode 100644
index 1da81e0..0000000
--- a/update/org.eclipse.update.tests.core/test.xml
+++ /dev/null
@@ -1,69 +0,0 @@
-<?xml version="1.0"?>

-<project name="testsuite" default="run" basedir="."> 

-  

-  <!-- 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}/../.."/>

-  

-  <!-- sets the properties eclipse-home, and library-file -->

-  <property name="plugin-name" value="org.eclipse.update.tests.core"/>

-  <property name="library-file" value="${eclipse-home}/plugins/org.eclipse.test/library.xml"/>

-  <property name="class-name" value="org.eclipse.update.tests.AllTests" />

-  

-  <!-- 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="sniff-folder" value="${eclipse-home}/update_core_sniff_folder"/>

-    <delete dir="${sniff-folder}" quiet="true"/>

-    

-    <ant target="core-test" antfile="${library-file}" dir="${eclipse-home}">

-      <property name="data-dir" value="${sniff-folder}"/>

-      <property name="plugin-name" value="${plugin-name}"/>

-      <property name="classname" value="${class-name}"/>

-    </ant>

-  </target>

-  

-  <!-- This target holds code to cleanup the testing environment after -->

-  <!-- after all of the tests have been run. You can use this target to -->

-  <!-- delete temporary files that have been created. -->

-  <target name="cleanup">

-  </target>

-  

-  <!-- This target runs the test suite. Any actions that need to happen -->

-  <!-- after all the tests have been run should go here. -->

-   <target name="run" depends="init,suite,cleanup">

-    <ant target="collect" antfile="${library-file}" dir="${eclipse-home}">

-      <property name="includes" value="org*.xml"/>

-      <property name="output-file" value="${plugin-name}.xml"/>

-    </ant>

-  </target>

-	

-	<!-- This target defines the performance tests that need to be run. -->

-	<target name="performance-suite">

-	  <property name="your-performance-folder" value="${eclipse-home}/update_performance_folder"/>

-	  <delete dir="${your-performance-folder}" quiet="true"/>

-	  <ant target="core-test" antfile="${library-file}" dir="${eclipse-home}">

-	    <property name="data-dir" value="${your-performance-folder}"/>

-	    <property name="plugin-name" value="${plugin-name}"/>

-	    <property name="classname" value="org.eclipse.update.tests.perfms.AllPerformanceTests"/>

-	  </ant>

-	</target>

-	

-  <!-- This target runs the performance test suites. -->

-	<target name="performance" depends="init,performance-suite">

-	  <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>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/test_with_mail.xml b/update/org.eclipse.update.tests.core/test_with_mail.xml
deleted file mode 100644
index 9f1d408..0000000
--- a/update/org.eclipse.update.tests.core/test_with_mail.xml
+++ /dev/null
@@ -1,76 +0,0 @@
-<?xml version="1.0"?>
-<project name="testsuite" default="run" basedir="."> 
-  
-  <!-- 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}/../.."/>
-  
-  <!-- sets the properties eclipse-home, and library-file -->
-  <property name="plugin-name" value="org.eclipse.update.tests.core"/>
-  <property name="library-file" value="${eclipse-home}/plugins/org.eclipse.test/library.xml"/>
-  <property name="class-name" value="org.eclipse.update.tests.AllTests" />
-  
-  <!-- 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="sniff-folder" value="${eclipse-home}/update_core_sniff_folder"/>
-    <delete dir="${sniff-folder}" quiet="true"/>
-    
-    <ant target="core-test" antfile="${library-file}" dir="${eclipse-home}">
-      <property name="data-dir" value="${sniff-folder}"/>
-      <property name="plugin-name" value="${plugin-name}"/>
-      <property name="classname" value="${class-name}"/>
-    </ant>
-  </target>
-  
-  <!-- This target holds code to cleanup the testing environment after -->
-  <!-- after all of the tests have been run. You can use this target to -->
-  <!-- delete temporary files that have been created. -->
-  <target name="cleanup">
-  </target>
-  
-  <!-- This target runs the test suite. Any actions that need to happen -->
-  <!-- after all the tests have been run should go here. -->
-   <target name="run" depends="init,suite,cleanup">
-
-    <property name="email-from" value="Eclipse_Automated_Test@oti.com"/>
-    <property name="email-subject" value="Install/Update: Nightly Build Report"/>
-    <property name="email-subject-log" value="Install/Update: Nightly .log"/>
-    <property name="email-server" value="d25ml04.torolab.ibm.com"/>
-    <property name="infile" value="${eclipse-home}/${plugin-name}.xml"/>
-    <property name="infile-log" value="${eclipse-home}/workspace/.metadata/.log"/>
-      
-    <ant target="collect" antfile="${library-file}" dir="${eclipse-home}">
-      <property name="includes" value="org*.xml"/>
-      <property name="output-file" value="${plugin-name}.xml"/>
-    </ant>
-    
-    <touch file="${infile-log}"/>
-
-    <mail from="${email-from}" tolist="celek@ca.ibm.com"
-          subject="${email-subject}" files="${infile}"
-          mailhost="${email-server}"/>
-
-    <mail from="${email-from}" tolist="celek@ca.ibm.com"
-          subject="${email-subject-log}" files="${infile-log}"
-          mailhost="${email-server}"/>
-
-    <mail from="${email-from}" tolist="celek@rogers.com"
-          subject="${email-subject-log}" files="${infile-log}"
-          mailhost="${email-server}"/>
-
-    <mail from="${email-from}" tolist="celek@rogers.com"
-          subject="${email-subject}" files="${infile}"
-          mailhost="${email-server}"/>
-
-  </target>
-</project>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/webserver/Site with space/features space/helpFeature.jar b/update/org.eclipse.update.tests.core/webserver/Site with space/features space/helpFeature.jar
deleted file mode 100644
index 1a23946..0000000
--- a/update/org.eclipse.update.tests.core/webserver/Site with space/features space/helpFeature.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/Site with space/features space/space feature.jar b/update/org.eclipse.update.tests.core/webserver/Site with space/features space/space feature.jar
deleted file mode 100644
index 33c3d5d..0000000
--- a/update/org.eclipse.update.tests.core/webserver/Site with space/features space/space feature.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/Site with space/info/img/top_titlsm.gif b/update/org.eclipse.update.tests.core/webserver/Site with space/info/img/top_titlsm.gif
deleted file mode 100644
index 3917bb6..0000000
--- a/update/org.eclipse.update.tests.core/webserver/Site with space/info/img/top_titlsm.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/Site with space/info/img/wel_ml.jpg b/update/org.eclipse.update.tests.core/webserver/Site with space/info/img/wel_ml.jpg
deleted file mode 100644
index 01e33df..0000000
--- a/update/org.eclipse.update.tests.core/webserver/Site with space/info/img/wel_ml.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/Site with space/info/siteInfo.html b/update/org.eclipse.update.tests.core/webserver/Site with space/info/siteInfo.html
deleted file mode 100644
index b065aa3..0000000
--- a/update/org.eclipse.update.tests.core/webserver/Site with space/info/siteInfo.html
+++ /dev/null
@@ -1,63 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

-<html>

-<head>

-</head>

-  <body>

-<img src="img/top_titlsm.gif" alt="" width="460" height="50">

-<br>

-<br>

-     It started with Smalltalk<br>

-    OTI has been building tools for platform-independent OO development since

-  1988. Our ENVY&reg; technology first brought collaborative software development,

-  version management and shared repositories to Smalltalk. IBM is one of

-many   companies to license ENVY, which continues to be the foundation of

-VisualAge&reg;   Smalltalk.<br>

-<br>

-<br>

-<br>

-      Next came Java&#8482;<br>

-    Because of our expertise in OO technology, IBM turned to OTI for a next-generation

-  development environment for Java. The result is VisualAge for Java, which

-  continues to win awards for its innovative IDE and team support. InfoWorld

-  has chosen VisualAge for Java as development tool of the year - year after

-  year after year!<br>

-<br>

-<br>

-<br>

-      Then pervasive computing<br>

-    OTI continues its development of IBM's VisualAge Micro Edition, a state-of-the-art

-  platform for collaborative development of embedded applications and systems

-  that are very lean. As the steady stream of press releases attests, VisualAge

-  Micro Edition is already licensed to the leading microchip manufacturers,

-  microkernel developers, and producers of handheld and consumer devices.<br>

-<br>

-<br>

-<br>

-      Now it's Eclipse<br>

-    OTI has built the next generation IBM application development tools platform.

-  Eclipse is a kind of universal tool platform - an open extensible IDE for

-  anything and nothing in particular. The real value comes from tool plug-ins

-  that "teach" Eclipse how to work with things - java files, web content,

-graphics,  video - almost anything you can imagine. Eclipse allows you to

-independently  develop tools that integrate with other people's tools so

-seamlessly you won't know where one tool ends and another starts. The IBM

-supported version of this technology, WebSphere Studio Workbench, will be

-the core of the next  generation of IBM and IBM Business Partner e-business

-tools optimized for  the WebSphere software platform.<br>

-<br>

-<br>

-<br>

-      So what's next?<br>

-    OTI continues to deliver object-oriented technology that scales across

- platforms,  across teams and across project size. From a mainframe to a

-watch  - we're  closing in on that vision.<br>

-<br>

-<img src="img/wel_ml.jpg" width="460" height="460" alt="">

-<br>

-<br>

-<br>

-<br>

-<br>

-<br>

-</body>

-</html>

diff --git a/update/org.eclipse.update.tests.core/webserver/Site with space/install/features space/feature3/feature.xml b/update/org.eclipse.update.tests.core/webserver/Site with space/install/features space/feature3/feature.xml
deleted file mode 100644
index 67741d9..0000000
--- a/update/org.eclipse.update.tests.core/webserver/Site with space/install/features space/feature3/feature.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<feature id="org.eclipse.update.core.tests.feature3" image="feature1.gif" label="Third Feature" provider-name="Smart Company" version="1.0.0" >

-  <description>Description</description>

-  <copyright>copyright</copyright>

-  <license>license</license>

-  <url>

-    <update label="URL to update the feature" url="http://www.eclipse.org/path/feature1/"/>

-    <discovery label="Discovery 1" url="http://www.eclipse.org"/>

-    <discovery label="Discovery 2" url="http://www.eclipse.org"/>

-  </url>

-</feature>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/webserver/Site with space/plugins space/Pde_core.jar b/update/org.eclipse.update.tests.core/webserver/Site with space/plugins space/Pde_core.jar
deleted file mode 100644
index f107217..0000000
--- a/update/org.eclipse.update.tests.core/webserver/Site with space/plugins space/Pde_core.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/Site with space/plugins space/help.jar b/update/org.eclipse.update.tests.core/webserver/Site with space/plugins space/help.jar
deleted file mode 100644
index 7584f66..0000000
--- a/update/org.eclipse.update.tests.core/webserver/Site with space/plugins space/help.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/Site with space/plugins space/junit_3.7.jar b/update/org.eclipse.update.tests.core/webserver/Site with space/plugins space/junit_3.7.jar
deleted file mode 100644
index 67587b2..0000000
--- a/update/org.eclipse.update.tests.core/webserver/Site with space/plugins space/junit_3.7.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/Site with space/site.xml b/update/org.eclipse.update.tests.core/webserver/Site with space/site.xml
deleted file mode 100644
index b5d4bbf..0000000
--- a/update/org.eclipse.update.tests.core/webserver/Site with space/site.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<site>

-<description url="info/siteInfo.html"/>

-  <feature url="features space/helpFeature.jar">

-    <category name="eclipse/UML"/>

-  </feature>

-  <feature url="features space/space feature.jar">

-    <category name="eclipse/J2EE"/>

-  </feature>

-

-  <archive path="plugins/org.eclipse.help_1.0.0.jar" url="plugins space/help.jar"/>

-  <archive path="plugins/org.eclipse.pde.core_1.0.0.jar" url="plugins space/Pde_core.jar"/>

-  <archive path="plugins/org.junit_3.5.0.jar" url="plugins space/junit_3.7.jar"/>

-  <archive path="plugins/org.eclipse.update.plugin1_1.1.1" url="plugins space/org.eclipse.update.plugin1_1.1.1"/>  

-  <category-def label="IBM WSAD Tools" name="eclipse"/>

-  <category-def label="J2EE tools" name="eclipse/J2EE"/>

-  <category-def label="EJB Tools" name="eclipse/J2EE/EJB"/>

-  <category-def label="UML tools" name="eclipse/UML"/>

-  <category-def label="Messaging Tools" name="B2B"/>  

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager/features/helpFeature.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager/features/helpFeature.jar
deleted file mode 100644
index aec67d4..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager/features/helpFeature.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager/features/org.eclipse.pde.feature_1.0.0.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager/features/org.eclipse.pde.feature_1.0.0.jar
deleted file mode 100644
index 870b40a..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager/features/org.eclipse.pde.feature_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager/info/img/top_titlsm.gif b/update/org.eclipse.update.tests.core/webserver/UpdateManager/info/img/top_titlsm.gif
deleted file mode 100644
index 3917bb6..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager/info/img/top_titlsm.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager/info/img/wel_ml.jpg b/update/org.eclipse.update.tests.core/webserver/UpdateManager/info/img/wel_ml.jpg
deleted file mode 100644
index 01e33df..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager/info/img/wel_ml.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager/info/siteInfo.html b/update/org.eclipse.update.tests.core/webserver/UpdateManager/info/siteInfo.html
deleted file mode 100644
index b065aa3..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager/info/siteInfo.html
+++ /dev/null
@@ -1,63 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

-<html>

-<head>

-</head>

-  <body>

-<img src="img/top_titlsm.gif" alt="" width="460" height="50">

-<br>

-<br>

-     It started with Smalltalk<br>

-    OTI has been building tools for platform-independent OO development since

-  1988. Our ENVY&reg; technology first brought collaborative software development,

-  version management and shared repositories to Smalltalk. IBM is one of

-many   companies to license ENVY, which continues to be the foundation of

-VisualAge&reg;   Smalltalk.<br>

-<br>

-<br>

-<br>

-      Next came Java&#8482;<br>

-    Because of our expertise in OO technology, IBM turned to OTI for a next-generation

-  development environment for Java. The result is VisualAge for Java, which

-  continues to win awards for its innovative IDE and team support. InfoWorld

-  has chosen VisualAge for Java as development tool of the year - year after

-  year after year!<br>

-<br>

-<br>

-<br>

-      Then pervasive computing<br>

-    OTI continues its development of IBM's VisualAge Micro Edition, a state-of-the-art

-  platform for collaborative development of embedded applications and systems

-  that are very lean. As the steady stream of press releases attests, VisualAge

-  Micro Edition is already licensed to the leading microchip manufacturers,

-  microkernel developers, and producers of handheld and consumer devices.<br>

-<br>

-<br>

-<br>

-      Now it's Eclipse<br>

-    OTI has built the next generation IBM application development tools platform.

-  Eclipse is a kind of universal tool platform - an open extensible IDE for

-  anything and nothing in particular. The real value comes from tool plug-ins

-  that "teach" Eclipse how to work with things - java files, web content,

-graphics,  video - almost anything you can imagine. Eclipse allows you to

-independently  develop tools that integrate with other people's tools so

-seamlessly you won't know where one tool ends and another starts. The IBM

-supported version of this technology, WebSphere Studio Workbench, will be

-the core of the next  generation of IBM and IBM Business Partner e-business

-tools optimized for  the WebSphere software platform.<br>

-<br>

-<br>

-<br>

-      So what's next?<br>

-    OTI continues to deliver object-oriented technology that scales across

- platforms,  across teams and across project size. From a mainframe to a

-watch  - we're  closing in on that vision.<br>

-<br>

-<img src="img/wel_ml.jpg" width="460" height="460" alt="">

-<br>

-<br>

-<br>

-<br>

-<br>

-<br>

-</body>

-</html>

diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager/plugins/Pde_core.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager/plugins/Pde_core.jar
deleted file mode 100644
index f107217..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager/plugins/Pde_core.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager/plugins/help.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager/plugins/help.jar
deleted file mode 100644
index 7584f66..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager/plugins/help.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager/plugins/junit_3.7.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager/plugins/junit_3.7.jar
deleted file mode 100644
index 67587b2..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager/plugins/junit_3.7.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager/site.xml b/update/org.eclipse.update.tests.core/webserver/UpdateManager/site.xml
deleted file mode 100644
index 5e5fda7..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager/site.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<site >

-<description url="info/siteInfo.html"/>

-  <feature url="features/helpFeature.jar">

-    <category name="eclipse/UML"/>

-  </feature>

-  <feature url="features/org.eclipse.pde.feature_1.0.0.jar">

-    <category name="eclipse/J2EE"/>

-  </feature>

-  <archive path="plugins/org.eclipse.help_1.0.0.jar" url="plugins/help.jar"/>

-  <archive path="plugins/org.eclipse.pde.core_1.0.0.jar" url="plugins/Pde_core.jar"/>

-  <archive path="plugins/org.junit_3.5.0.jar" url="plugins/junit_3.7.jar"/>

-  <category-def label="IBM WSAD Tools" name="eclipse"/>

-  <category-def label="J2EE tools" name="eclipse/J2EE"/>

-  <category-def label="EJB Tools" name="eclipse/J2EE/EJB"/>

-  <category-def label="UML tools" name="eclipse/UML"/>

-  <category-def label="Messaging Tools" name="B2B"/>  

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/features/features2.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/features/features2.jar
deleted file mode 100644
index 81df72c..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/features/features2.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/features/org.eclipse.test.feature_1.0.0.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/features/org.eclipse.test.feature_1.0.0.jar
deleted file mode 100644
index d1aee3f..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/features/org.eclipse.test.feature_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/features/org.eclipse.update.core.tests.feature1_1.0.4.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/features/org.eclipse.update.core.tests.feature1_1.0.4.jar
deleted file mode 100644
index f515ff4..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/features/org.eclipse.update.core.tests.feature1_1.0.4.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/features/org.eclipse_test_feature.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/features/org.eclipse_test_feature.jar
deleted file mode 100644
index 2be38d3..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/features/org.eclipse_test_feature.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/features/org.eclipse.update.core.tests.childrenfeature_2.0.0.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/features/org.eclipse.update.core.tests.childrenfeature_2.0.0.jar
deleted file mode 100644
index 022665c..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/features/org.eclipse.update.core.tests.childrenfeature_2.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/features/rootfeature.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/features/rootfeature.jar
deleted file mode 100644
index b519803..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/features/rootfeature.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
deleted file mode 100644
index 5d9f5bc..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
deleted file mode 100644
index 8b4b04a..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.1.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.1.jar
deleted file mode 100644
index 52208fe..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.1.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/site.xml b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/site.xml
deleted file mode 100644
index 7b09c86..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/nestedFeatureSiteTest/site.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site>
-  <feature url="features/rootfeature.jar" os="*"/>
-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/org.eclipse.update.core.feature2_1.0.0/org.eclipse.update.core.feature2_2.2.2.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/org.eclipse.update.core.feature2_1.0.0/org.eclipse.update.core.feature2_2.2.2.jar
deleted file mode 100644
index b00d882..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/org.eclipse.update.core.feature2_1.0.0/org.eclipse.update.core.feature2_2.2.2.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.feature1.plugin1_1.1.1.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.feature1.plugin1_1.1.1.jar
deleted file mode 100644
index 0c995d5..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.feature1.plugin1_1.1.1.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.feature2.plugin2_2.2.2.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.feature2.plugin2_2.2.2.jar
deleted file mode 100644
index 0c995d5..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.feature2.plugin2_2.2.2.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.tests.dummy_7.9.8.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.tests.dummy_7.9.8.jar
deleted file mode 100644
index d6737f6..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.tests.dummy_7.9.8.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
deleted file mode 100644
index eb8690f..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.tests.feature1.plugin1_3.5.6.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
deleted file mode 100644
index 90a612f..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/plugins/org.eclipse.update.core.tests.feature1.plugin2_5.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/site.properties b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/site.properties
deleted file mode 100644
index 8e1ced4..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/site.properties
+++ /dev/null
@@ -1,12 +0,0 @@
-###############################################################################

-# Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

-###############################################################################

-drivers=Required Drivers

-security=Security Fixes
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/site.xml b/update/org.eclipse.update.tests.core/webserver/UpdateManager2/site.xml
deleted file mode 100644
index 657d9b2..0000000
--- a/update/org.eclipse.update.tests.core/webserver/UpdateManager2/site.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<site id="org.eclipse.update.core.tests" name="Tests" version="0.0.1">

-  <feature url="features/org.eclipse.test.feature_1.0.0.jar">

-    <category name="category1"/>

-  </feature>

-  <feature url="features/features2.jar">

-    <category name="category1/subcat1"/>

-    <category name="category2"/>

-  </feature>

-  <feature url="features/org.eclipse.update.core.tests.feature1_1.0.4.jar">

-    <category name="category1"/>

-    <category name="category2"/>

-  </feature>

-  <feature url="features/org.eclipse_test_feature.jar"/>

-  <feature url="org.eclipse.update.core.feature2_1.0.0/org.eclipse.update.core.feature2_2.2.2.jar">

-    <category name="category1"/>

-  </feature>

-  <feature url="org.eclipse.update.core.feature2_1.0.0/org.eclipse.update.core.feature2_2.2.2.jar">

-  </feature>

-

-  <category-def name="category1/subcat1" label="Special Fix"/>

-  <category-def name="category1" label="%drivers"/>

-  <category-def name="category2" label="%security"/>

-</site>
\ No newline at end of file
diff --git a/update/org.eclipse.update.tests.core/webserver/WEB-INF/web.xml b/update/org.eclipse.update.tests.core/webserver/WEB-INF/web.xml
deleted file mode 100644
index 1a6d904..0000000
--- a/update/org.eclipse.update.tests.core/webserver/WEB-INF/web.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>

-

-

-<!DOCTYPE web-app

-    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"

-    "http://java.sun.com/j2ee/dtds/web-app_2.2.dtd">

-

-<web-app>

-    

-</web-app>

diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSite/features/com.example.bundle.feature_1.0.0.jar b/update/org.eclipse.update.tests.core/webserver/bundleSite/features/com.example.bundle.feature_1.0.0.jar
deleted file mode 100644
index 20d3589..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSite/features/com.example.bundle.feature_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSite/plugins/com.example.budle.fragment.ui_1.0.0.jar b/update/org.eclipse.update.tests.core/webserver/bundleSite/plugins/com.example.budle.fragment.ui_1.0.0.jar
deleted file mode 100644
index d79d2cd..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSite/plugins/com.example.budle.fragment.ui_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSite/plugins/com.example.bundle.fragment_1.0.0.jar b/update/org.eclipse.update.tests.core/webserver/bundleSite/plugins/com.example.bundle.fragment_1.0.0.jar
deleted file mode 100644
index edb02bb..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSite/plugins/com.example.bundle.fragment_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSite/plugins/com.example.bundle.plugin.ui_2.0.0.jar b/update/org.eclipse.update.tests.core/webserver/bundleSite/plugins/com.example.bundle.plugin.ui_2.0.0.jar
deleted file mode 100644
index 32ec02c..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSite/plugins/com.example.bundle.plugin.ui_2.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSite/plugins/com.example.bundle.plugin_1.0.0.jar b/update/org.eclipse.update.tests.core/webserver/bundleSite/plugins/com.example.bundle.plugin_1.0.0.jar
deleted file mode 100644
index 2b1b693..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSite/plugins/com.example.bundle.plugin_1.0.0.jar
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSite/site.xml b/update/org.eclipse.update.tests.core/webserver/bundleSite/site.xml
deleted file mode 100644
index bab1332..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSite/site.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site>
-   <feature url="features/com.example.bundle.feature_1.0.0.jar" id="com.example.bundle.feature" version="1.0.0">
-      <category name="BundleFeature"/>
-   </feature>
-   <category-def name="BundleFeature" label="Feature with Bundles"/>
-</site>
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/.classpath b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/.classpath
deleted file mode 100644
index 065ac06..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/.project b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/.project
deleted file mode 100644
index 8e20903..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/.project
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>com.example.budle.fragment.ui</name>
-	<comment></comment>
-	<projects>
-		<project>com.example.bundle.plugin</project>
-		<project>com.example.bundle.plugin.ui</project>
-		<project>org.eclipse.core.runtime</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.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/.template b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/.template
deleted file mode 100644
index f3bcd41..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/.template
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<form>

-   <p/><p><b>Tips on working with this plug-in project</b></p><li>For the view of the new plug-in at a glance, go to the <img href="pageImage"/><a href="OverviewPage">Overview</a>.</li><li>You can test the contributions of this plug-in by launching another instance of the workbench. On the <b>Run</b> menu, click <b>Run As</b> and choose <img href="runTimeWorkbenchImage"/><a href="action.run">Run-time Workbench</a> from the available choices.</li><li>You can add more functionality to this plug-in by adding extensions using the <a href="action.newExtension">New Extension Wizard</a>.</li><li>The plug-in project contains Java code that you can debug. Place breakpoints in Java classes. On the <b>Run</b> menu, select <b>Debug As</b> and choose <img href="runTimeWorkbenchImage"/><a href="action.debug">Run-time Workbench</a> from the available choices.</li>

-</form>

diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/META-INF/MANIFEST.MF b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/META-INF/MANIFEST.MF
deleted file mode 100644
index 2ad686f..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Generated-from: 1077062974451

-Bundle-Name: Ui Fragment

-Bundle-Version: 1.0.0

-Bundle-SymbolicName: com.example.budle.fragment.ui

-Bundle-Vendor: Eclipse.org

-Bundle-ClassPath: ui.jar

-Legacy: true

-Fragment-Host: com.example.bundle.plugin.ui; bundle-version=2.0.0

diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/build.properties b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/build.properties
deleted file mode 100644
index 9adc643..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/build.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-source.ui.jar = src/
-output.ui.jar = bin/
-bin.includes = fragment.xml,\
-               META-INF/,\
-               ui.jar
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/fragment.xml b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/fragment.xml
deleted file mode 100644
index 3c484b3..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.budle.fragment.ui/fragment.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<fragment
-   id="com.example.budle.fragment.ui"
-   name="Ui Fragment"
-   version="1.0.0"
-   provider-name="Eclipse.org"
-   plugin-id="com.example.bundle.plugin.ui"
-   plugin-version="2.0.0"
-   match="greaterOrEqual">
-
-   <runtime>
-      <library name="ui.jar">
-         <export name="*"/>
-      </library>
-   </runtime>
-
-</fragment>
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.feature/.project b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.feature/.project
deleted file mode 100644
index 8f3e4bc..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.feature/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>com.example.bundle.feature</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.feature/build.properties b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.feature/build.properties
deleted file mode 100644
index 8be2b5a..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.feature/build.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-bin.includes = feature.xml
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.feature/feature.xml b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.feature/feature.xml
deleted file mode 100644
index bb41043..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.feature/feature.xml
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="com.example.bundle.feature"
-      label="com.example.bundle.feature"
-      version="1.0.0"
-      provider-name="Eclipse.org">
-
-   <license>
-      A placeholder license for the feature.
-   </license>
-
-   <install-handler/>
-
-   <requires>
-      <import plugin="org.eclipse.ui"/>
-      <import plugin="org.eclipse.core.runtime"/>
-   </requires>
-
-   <plugin
-         id="com.example.bundle.plugin"
-         download-size="0"
-         install-size="0"
-         version="1.0.0"/>
-
-   <plugin
-         id="com.example.budle.fragment.ui"
-         download-size="0"
-         install-size="0"
-         version="1.0.0"
-         fragment="true"/>
-
-   <plugin
-         id="com.example.bundle.fragment"
-         download-size="0"
-         install-size="0"
-         version="1.0.0"
-         fragment="true"/>
-
-   <plugin
-         id="com.example.bundle.plugin.ui"
-         download-size="0"
-         install-size="0"
-         version="2.0.0"/>
-
-</feature>
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/.classpath b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/.classpath
deleted file mode 100644
index 065ac06..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/.project b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/.project
deleted file mode 100644
index 06d0c21..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/.project
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>com.example.bundle.fragment</name>
-	<comment></comment>
-	<projects>
-		<project>com.example.bundle.plugin</project>
-		<project>org.eclipse.core.runtime</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.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/.template b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/.template
deleted file mode 100644
index f3bcd41..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/.template
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<form>

-   <p/><p><b>Tips on working with this plug-in project</b></p><li>For the view of the new plug-in at a glance, go to the <img href="pageImage"/><a href="OverviewPage">Overview</a>.</li><li>You can test the contributions of this plug-in by launching another instance of the workbench. On the <b>Run</b> menu, click <b>Run As</b> and choose <img href="runTimeWorkbenchImage"/><a href="action.run">Run-time Workbench</a> from the available choices.</li><li>You can add more functionality to this plug-in by adding extensions using the <a href="action.newExtension">New Extension Wizard</a>.</li><li>The plug-in project contains Java code that you can debug. Place breakpoints in Java classes. On the <b>Run</b> menu, select <b>Debug As</b> and choose <img href="runTimeWorkbenchImage"/><a href="action.debug">Run-time Workbench</a> from the available choices.</li>

-</form>

diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/META-INF/MANIFEST.MF b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/META-INF/MANIFEST.MF
deleted file mode 100644
index 9d66480..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,8 +0,0 @@
-Generated-from: 1077062909487

-Bundle-Name: Fragment Fragment

-Bundle-Version: 1.0.0

-Bundle-SymbolicName: com.example.bundle.fragment

-Bundle-Vendor: Eclipse.org

-Bundle-ClassPath: fragment.jar

-Legacy: true

-Fragment-Host: com.example.bundle.plugin; bundle-version=1.0.0

diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/build.properties b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/build.properties
deleted file mode 100644
index a9f2221..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/build.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-source.fragment.jar = src/
-output.fragment.jar = bin/
-bin.includes = fragment.xml,\
-               META-INF/,\
-               fragment.jar
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/fragment.xml b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/fragment.xml
deleted file mode 100644
index 2a5cd6e..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.fragment/fragment.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<fragment
-   id="com.example.bundle.fragment"
-   name="Fragment Fragment"
-   version="1.0.0"
-   provider-name="Eclipse.org"
-   plugin-id="com.example.bundle.plugin"
-   plugin-version="1.0.0">
-
-   <runtime>
-      <library name="fragment.jar">
-         <export name="*"/>
-      </library>
-   </runtime>
-
-</fragment>
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/.classpath b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/.classpath
deleted file mode 100644
index 065ac06..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/.project b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/.project
deleted file mode 100644
index 83c3553..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/.project
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>com.example.bundle.plugin.ui</name>
-	<comment></comment>
-	<projects>
-		<project>com.example.bundle.plugin</project>
-		<project>org.eclipse.core.runtime</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.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/.template b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/.template
deleted file mode 100644
index f3bcd41..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/.template
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<form>

-   <p/><p><b>Tips on working with this plug-in project</b></p><li>For the view of the new plug-in at a glance, go to the <img href="pageImage"/><a href="OverviewPage">Overview</a>.</li><li>You can test the contributions of this plug-in by launching another instance of the workbench. On the <b>Run</b> menu, click <b>Run As</b> and choose <img href="runTimeWorkbenchImage"/><a href="action.run">Run-time Workbench</a> from the available choices.</li><li>You can add more functionality to this plug-in by adding extensions using the <a href="action.newExtension">New Extension Wizard</a>.</li><li>The plug-in project contains Java code that you can debug. Place breakpoints in Java classes. On the <b>Run</b> menu, select <b>Debug As</b> and choose <img href="runTimeWorkbenchImage"/><a href="action.debug">Run-time Workbench</a> from the available choices.</li>

-</form>

diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/META-INF/MANIFEST.MF b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/META-INF/MANIFEST.MF
deleted file mode 100644
index e3507a9..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,12 +0,0 @@
-Generated-from: 1077062999827

-Bundle-Name: Ui Plug-in

-Bundle-Version: 2.0.0

-Bundle-SymbolicName: com.example.bundle.plugin.ui

-Bundle-Vendor: Eclipse.org

-Bundle-ClassPath: ui.jar

-Legacy: true

-Bundle-Activator: com.example.bundle.plugin.ui.UiPlugin

-Require-Bundle: 

- org.eclipse.core.runtime,

- org.eclipse.ui,

- com.example.bundle.plugin; bundle-version=1.0.0;version-match=perfect

diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/bin/com/example/bundle/plugin/ui/UiPlugin.class b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/bin/com/example/bundle/plugin/ui/UiPlugin.class
deleted file mode 100644
index 5f73189..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/bin/com/example/bundle/plugin/ui/UiPlugin.class
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/build.properties b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/build.properties
deleted file mode 100644
index 0577e11..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/build.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-source.ui.jar = src/
-output.ui.jar = bin/
-bin.includes = plugin.xml,\
-               META-INF/,\
-               ui.jar
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/plugin.xml b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/plugin.xml
deleted file mode 100644
index aeffdef..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/plugin.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="com.example.bundle.plugin.ui"
-   name="Ui Plug-in"
-   version="2.0.0"
-   provider-name="Eclipse.org"
-   class="com.example.bundle.plugin.ui.UiPlugin">
-
-   <runtime>
-      <library name="ui.jar">
-         <export name="*"/>
-      </library>
-   </runtime>
-   <requires>
-      <import plugin="org.eclipse.ui"/>
-      <import plugin="org.eclipse.core.runtime"/>
-      <import plugin="com.example.bundle.plugin" version="1.0.0" match="perfect"/>
-   </requires>
-
-
-</plugin>
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/src/com/example/bundle/plugin/ui/UiPlugin.java b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/src/com/example/bundle/plugin/ui/UiPlugin.java
deleted file mode 100644
index a9549db..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin.ui/src/com/example/bundle/plugin/ui/UiPlugin.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package com.example.bundle.plugin.ui;
-
-import org.eclipse.ui.plugin.*;
-import org.osgi.framework.BundleContext;
-import java.util.*;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class UiPlugin extends AbstractUIPlugin {
-	//The shared instance.
-	private static UiPlugin plugin;
-	//Resource bundle.
-	private ResourceBundle resourceBundle;
-	
-	/**
-	 * The constructor.
-	 */
-	public UiPlugin() {
-		super();
-		plugin = this;
-		try {
-			resourceBundle = ResourceBundle.getBundle("com.example.bundle.plugin.ui.UiPluginResources");
-		} catch (MissingResourceException x) {
-			resourceBundle = null;
-		}
-	}
-
-	/**
-	 * This method is called upon plug-in activation
-	 */
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-	}
-
-	/**
-	 * This method is called when the plug-in is stopped
-	 */
-	public void stop(BundleContext context) throws Exception {
-		super.stop(context);
-	}
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static UiPlugin getDefault() {
-		return plugin;
-	}
-
-	/**
-	 * Returns the string from the plugin's resource bundle,
-	 * or 'key' if not found.
-	 */
-	public static String getResourceString(String key) {
-		ResourceBundle bundle = UiPlugin.getDefault().getResourceBundle();
-		try {
-			return (bundle != null) ? bundle.getString(key) : key;
-		} catch (MissingResourceException e) {
-			return key;
-		}
-	}
-
-	/**
-	 * Returns the plugin's resource bundle,
-	 */
-	public ResourceBundle getResourceBundle() {
-		return resourceBundle;
-	}
-}
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/.classpath b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/.classpath
deleted file mode 100644
index 065ac06..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/.project b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/.project
deleted file mode 100644
index 1719d73..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/.project
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>com.example.bundle.plugin</name>
-	<comment></comment>
-	<projects>
-		<project>org.eclipse.core.runtime</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.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/.template b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/.template
deleted file mode 100644
index f3bcd41..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/.template
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<form>

-   <p/><p><b>Tips on working with this plug-in project</b></p><li>For the view of the new plug-in at a glance, go to the <img href="pageImage"/><a href="OverviewPage">Overview</a>.</li><li>You can test the contributions of this plug-in by launching another instance of the workbench. On the <b>Run</b> menu, click <b>Run As</b> and choose <img href="runTimeWorkbenchImage"/><a href="action.run">Run-time Workbench</a> from the available choices.</li><li>You can add more functionality to this plug-in by adding extensions using the <a href="action.newExtension">New Extension Wizard</a>.</li><li>The plug-in project contains Java code that you can debug. Place breakpoints in Java classes. On the <b>Run</b> menu, select <b>Debug As</b> and choose <img href="runTimeWorkbenchImage"/><a href="action.debug">Run-time Workbench</a> from the available choices.</li>

-</form>

diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/META-INF/MANIFEST.MF b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/META-INF/MANIFEST.MF
deleted file mode 100644
index fc1adaf..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,11 +0,0 @@
-Generated-from: 1077062603708

-Bundle-Name: Plugin Plug-in

-Bundle-Version: 1.0.0

-Bundle-SymbolicName: com.example.bundle.plugin

-Bundle-Vendor: EXAMPLE

-Bundle-ClassPath: plugin.jar

-Legacy: true

-Bundle-Activator: com.example.bundle.plugin.PluginPlugin

-Require-Bundle: 

- org.eclipse.core.runtime,

- org.eclipse.ui

diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/bin/com/example/bundle/plugin/PluginPlugin.class b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/bin/com/example/bundle/plugin/PluginPlugin.class
deleted file mode 100644
index 76caf03..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/bin/com/example/bundle/plugin/PluginPlugin.class
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/build.properties b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/build.properties
deleted file mode 100644
index 44de1ca..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/build.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2004 IBM Corporation 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 API and implementation
-###############################################################################
-source.plugin.jar = src/
-output.plugin.jar = bin/
-bin.includes = plugin.xml,\
-               META-INF/,\
-               plugin.jar
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/plugin.xml b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/plugin.xml
deleted file mode 100644
index 297bc76..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/plugin.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="com.example.bundle.plugin"
-   name="Plugin Plug-in"
-   version="1.0.0"
-   provider-name="Eclipse.org"
-   class="com.example.bundle.plugin.PluginPlugin">
-
-   <runtime>
-      <library name="plugin.jar">
-         <export name="*"/>
-      </library>
-   </runtime>
-   <requires>
-      <import plugin="org.eclipse.ui"/>
-      <import plugin="org.eclipse.core.runtime"/>
-   </requires>
-
-
-</plugin>
diff --git a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/src/com/example/bundle/plugin/PluginPlugin.java b/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/src/com/example/bundle/plugin/PluginPlugin.java
deleted file mode 100644
index a8a69f6..0000000
--- a/update/org.eclipse.update.tests.core/webserver/bundleSitesrc/com.example.bundle.plugin/src/com/example/bundle/plugin/PluginPlugin.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package com.example.bundle.plugin;
-
-import org.eclipse.ui.plugin.*;
-import org.osgi.framework.BundleContext;
-import java.util.*;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class PluginPlugin extends AbstractUIPlugin {
-	//The shared instance.
-	private static PluginPlugin plugin;
-	//Resource bundle.
-	private ResourceBundle resourceBundle;
-	
-	/**
-	 * The constructor.
-	 */
-	public PluginPlugin() {
-		super();
-		plugin = this;
-		try {
-			resourceBundle = ResourceBundle.getBundle("com.example.bundle.plugin.PluginPluginResources");
-		} catch (MissingResourceException x) {
-			resourceBundle = null;
-		}
-	}
-
-	/**
-	 * This method is called upon plug-in activation
-	 */
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-	}
-
-	/**
-	 * This method is called when the plug-in is stopped
-	 */
-	public void stop(BundleContext context) throws Exception {
-		super.stop(context);
-	}
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static PluginPlugin getDefault() {
-		return plugin;
-	}
-
-	/**
-	 * Returns the string from the plugin's resource bundle,
-	 * or 'key' if not found.
-	 */
-	public static String getResourceString(String key) {
-		ResourceBundle bundle = PluginPlugin.getDefault().getResourceBundle();
-		try {
-			return (bundle != null) ? bundle.getString(key) : key;
-		} catch (MissingResourceException e) {
-			return key;
-		}
-	}
-
-	/**
-	 * Returns the plugin's resource bundle,
-	 */
-	public ResourceBundle getResourceBundle() {
-		return resourceBundle;
-	}
-}
diff --git a/update/org.eclipse.update.ui.forms/.classpath b/update/org.eclipse.update.ui.forms/.classpath
deleted file mode 100644
index 4848249..0000000
--- a/update/org.eclipse.update.ui.forms/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<classpath>

-	<classpathentry kind="src" path="src"/>

-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>

-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>

-	<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 8540f9e..0000000
--- a/update/org.eclipse.update.ui.forms/.project
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<projectDescription>

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

-	<comment></comment>

-	<projects>

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

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

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

-		<project>org.eclipse.ui.ide</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 14fda25..0000000
--- a/update/org.eclipse.update.ui.forms/build.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-bin.includes = plugin.properties,\

-               *.jar,\

-               plugin.xml,\

-               about.html

-source.forms.jar = src/

-src.includes = 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 2699472..0000000
--- a/update/org.eclipse.update.ui.forms/plugin.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-###############################################################################

-# Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

-###############################################################################

-#

-# 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 ab2a167..0000000
--- a/update/org.eclipse.update.ui.forms/plugin.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<?eclipse version="3.0"?>

-<plugin

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

-   name="%name"

-   version="3.0.0"

-   provider-name="%provider-name"

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

-

-   <runtime>

-      <library name="forms.jar">

-         <export name="*"/>

-         <packages prefixes="org.eclipse.update.ui.forms.internal"/>

-      </library>

-   </runtime>

-   <requires>

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

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

-   </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 c125441..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/AbstractForm.java
+++ /dev/null
@@ -1,233 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-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.actions.*;

-

-/**

- * 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;

-	private IPropertyChangeListener hyperlinkColorListener;

-

-	public AbstractForm() {

-		factory = new FormWidgetFactory();

-		titleFont = JFaceResources.getHeaderFont();

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

-		IPreferenceStore pstore = JFacePreferences.getPreferenceStore();

-		hyperlinkColorListener = new IPropertyChangeListener() {

-			public void propertyChange(PropertyChangeEvent e) {

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

-					|| e.getProperty().equals(

-						JFacePreferences.ACTIVE_HYPERLINK_COLOR)) {

-					updateHyperlinkColors();

-				}

-			}

-		};

-		pstore.addPropertyChangeListener(hyperlinkColorListener);

-	}

-	

-	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);

-		pstore.removePropertyChangeListener(hyperlinkColorListener);

-	}

-

-	/**

-	 * @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(ActionFactory.CUT.getId())) {

-				text.cut();

-				return true;

-			}

-			if (id.equals(ActionFactory.COPY.getId())) {

-				text.copy();

-				return true;

-			}

-			if (id.equals(ActionFactory.PASTE.getId())) {

-				text.paste();

-				return true;

-			}

-			if (id.equals(ActionFactory.SELECT_ALL.getId())) {

-				text.selectAll();

-				return true;

-			}

-			if (id.equals(ActionFactory.DELETE.getId())) {

-				int count = text.getSelectionCount();

-				if (count == 0) {

-					int caretPos = text.getCaretPosition();

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

-				}

-				text.insert("");

-				return true;

-			}

-		}

-		return false;

-	}

-}

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 02903ca..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/AbstractSectionForm.java
+++ /dev/null
@@ -1,217 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-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) {

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

-		Point scompOrigin = scomp.getOrigin();

-

-		int x = scompOrigin.x;

-		int y = scompOrigin.y;

-

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

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

-		}		

-		if (controlOrigin.x < x ) {

-			 x = controlOrigin.x;

-		 }         

-		

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

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

-		}

-		if (controlOrigin.y < y ) {

-			 y = controlOrigin.y;

-		 }         

-		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);

-		}

-	}

-}

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 f88ebcc..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/CustomWorkbook.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

-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 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 (firstPageSelected && currentPage == null)

-		selectPage(page, true);

-}

-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, true);

-		}

-	});

-	// 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, boolean setFocus) {

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

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

-		listener.formSelected(page, setFocus);

-	}

-}

-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, true);

-		}

-	});

-}

-public void selectPage(final IFormPage page, final boolean setFocus) {

-	final IFormPage oldPage = currentPage;

-	currentPage = page;

-

-	// It may take a while

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

-		public void run() {

-			switchPages(oldPage, page, setFocus);

-		}

-	});

-}

-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, boolean setFocus) {

-	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, setFocus);

-}

-}

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 edb5f8a..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/ExpandableGroup.java
+++ /dev/null
@@ -1,211 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-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 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, final 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)) {

-					container.setCursor(factory.getBusyCursor());

-					setExpanded(!isExpanded());

-					container.setCursor(null);

-				}

-			}

-		});

-		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() {

-	}

-}

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 c307edf..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormButton.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

-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 a5e7e14..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormEntry.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

-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 965e1e8..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormLabel.java
+++ /dev/null
@@ -1,238 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

-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 = "";

-	protected int textMarginWidth = 5;

-	protected 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);

-			}

-		});

-		initAccessible();

-	}

-	public String getText() {

-		return text;

-	}

-	public void setText(String text) {

-		if (text != null)

-			this.text = text;

-		else

-			text = "";

-	}

-

-	protected 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) {

-		checkWidget();

-		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);

-			}

-		}

-	}

-}

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 742231d..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormSection.java
+++ /dev/null
@@ -1,531 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

-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;

-	public boolean compactMode=false;

-

-	/*

-	 * 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 implements ILayoutExtension {

-		int vspacing = 3;

-		int sepHeight = 2;

-

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

-			return 30;

-		}

-

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

-			int maxWidth = 0;

-			if (client != null) {

-				if (client instanceof Composite) {

-					Layout cl = ((Composite) client).getLayout();

-					if (cl instanceof ILayoutExtension)

-						maxWidth =

-							((ILayoutExtension) cl).getMaximumWidth(

-								(Composite) client,

-								flush);

-				}

-				if (maxWidth == 0) {

-					Point csize =

-						client.computeSize(SWT.DEFAULT, SWT.DEFAULT, flush);

-					maxWidth = csize.x;

-				}

-			}

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

-				Point hsize =

-					header.computeSize(SWT.DEFAULT, SWT.DEFAULT, flush);

-				maxWidth = Math.max(maxWidth, hsize.x);

-			}

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

-				Point dsize =

-					descriptionLabel.computeSize(

-						SWT.DEFAULT,

-						SWT.DEFAULT,

-						flush);

-				maxWidth = Math.max(maxWidth, dsize.x);

-			}

-			return maxWidth;

-		}

-

-		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 && !client.isDisposed()) {

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

-				}

-				else {

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

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

-				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);

-			}

-		}

-	}

-

-	/**

-	 * @return

-	 */

-	public boolean isCompactMode() {

-		return compactMode;

-	}

-

-	/**

-	 * @param compactMode

-	 */

-	public void setCompactMode(boolean compactMode) {

-		this.compactMode = compactMode;

-	}

-

-	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() {

-		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.horizontalSpan = span;

-		text.setLayoutData(gd);

-		return text;

-	}

-	protected Text createText(

-		Composite parent,

-		String label,

-		FormWidgetFactory factory,

-		int span,

-		int style) {

-		Label l = factory.createLabel(parent, label);

-		if ((style & SWT.MULTI) != 0) {

-			GridData gd = new GridData(GridData.VERTICAL_ALIGN_BEGINNING);

-			l.setLayoutData(gd);

-		}

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

-		int hfill =

-			span == 1

-				? GridData.FILL_HORIZONTAL

-				: GridData.HORIZONTAL_ALIGN_FILL;

-		GridData gd = new GridData(hfill | GridData.VERTICAL_ALIGN_CENTER);

-		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 && !control.isDisposed() && !header.isDisposed()) {

-			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 isCollapsed() {

-		return collapsed;

-	}

-

-	public boolean canPaste(Clipboard clipboard) {

-		return false;

-	}

-}

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 74b9cd7..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormWidgetFactory.java
+++ /dev/null
@@ -1,435 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

-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.actions.*;

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

-

-public class FormWidgetFactory {

-	public static final String KEY_DRAW_BORDER = "FormWidgetFactory.drawBorder";

-	public static final String TREE_BORDER = "treeBorder";

-	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];

-				boolean inactiveBorder=false;

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

-					continue;

-				if (c instanceof SelectableFormLabel)

-					continue;

-				Object flag = c.getData(KEY_DRAW_BORDER);

-				if (flag!=null) {

-					if (flag.equals(Boolean.FALSE)) continue;

-					if (flag.equals(TREE_BORDER)) inactiveBorder=true;

-				}

-				 

-				if (!inactiveBorder && (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 (inactiveBorder ||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) {

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

-		composite.addListener(SWT.Paint, new Listener() {

-			public void handleEvent(Event e) {

-				if (composite.isDisposed()) return;

-				Rectangle bounds = composite.getBounds();

-				GC gc = e.gc;

-				gc.setForeground(getColor(COLOR_COMPOSITE_SEPARATOR));

-				gc.setBackground(getBackgroundColor());

-				gc.fillGradientRectangle(0, 0, bounds.width, bounds.height, false);	

-			}

-		});

-		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) {

-		return createFormEngine(parent, false);

-	}

-	

-	public FormEngine createFormEngine(Composite parent, boolean trackFocus) {

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

-		engine.setBackground(backgroundColor);

-		engine.setForeground(foregroundColor);

-		engine.marginWidth = 1;

-		engine.marginHeight = 0;

-		engine.setHyperlinkSettings(getHyperlinkHandler());

-		if (trackFocus) engine.addFocusListener(visibilityHandler);

-		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(ActionFactory.DELETE.getId());

-				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);

-	}

-}

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 5448093..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormsPlugin.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-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) {
-		FormsPlugin inst = FormsPlugin.getDefault();
-		if (inst==null) return 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 6d45e06..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/FormsPluginResources.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
-###############################################################################
-
-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 0dd2126..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/HTMLTableLayout.java
+++ /dev/null
@@ -1,678 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-import java.util.Vector;

-

-import org.eclipse.swt.SWT;

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

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

-

-/**

- * 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 implements ILayoutExtension {

-	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();

-		}

-	}

-

-	private void updateGrowingColumns(

-		Vector growingColumns,

-		TableData spec,

-		int column) {

-		int affectedColumn = column + spec.colspan - 1;

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

-			Integer col = (Integer) growingColumns.get(i);

-			if (col.intValue() == affectedColumn)

-				return;

-		}

-		growingColumns.add(new Integer(affectedColumn));

-	}

-

-	private TableData[] createEmptyRow() {

-		TableData[] row = new TableData[numColumns];

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

-			row[i] = null;

-		return row;

-	}

-

-	/**

-	 * @see Layout#computeSize(Composite, int, int, boolean)

-	 */

-	protected Point computeSize(

-		Composite parent,

-		int wHint,

-		int hHint,

-		boolean changed) {

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

-		if (children.length == 0) {

-			return new Point(0, 0);

-		}

-		int parentWidth = wHint;

-		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 (makeColumnsEqualWidth) {

-				columnWidths = new int[numColumns];

-				int colSpace = parentWidth - leftMargin - rightMargin;

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

-				int col = colSpace / numColumns;

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

-					columnWidths[i] = col;

-				}

-			} else {

-				tableWidth = maxWidth;

-				columnWidths = maxColumnWidths;

-			}

-		} 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 totalHeight = 0;

-		int y = topMargin;

-		// compute widths

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

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

-			// assign widths, calculate heights

-			int rowHeight = 0;

-			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++) {

-					if (k > j)

-						cwidth += horizontalSpacing;

-					cwidth += columnWidths[k];

-				}

-				int cy = td.heightHint;

-				if (cy == SWT.DEFAULT) {

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

-					cy = size.y;

-				}

-				rowHeight = Math.max(rowHeight, cy);

-			}

-			y += rowHeight + verticalSpacing;

-		}

-		totalHeight = y + bottomMargin;

-		return new Point(tableWidth, totalHeight);

-	}

-

-	int internalGetMinimumWidth(Composite parent, boolean changed) {

-		if (changed)

-			calculateMinimumColumnWidths(parent, true);

-		int minimumWidth = 0;

-

-		widestColumnWidth = 0;

-

-		if (makeColumnsEqualWidth) {

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

-				widestColumnWidth =

-					Math.max(widestColumnWidth, minColumnWidths[i]);

-			}

-		}

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

-			if (i > 0)

-				minimumWidth += horizontalSpacing;

-			if (makeColumnsEqualWidth)

-				minimumWidth += widestColumnWidth;

-			else

-				minimumWidth += minColumnWidths[i];

-		}

-		// add margins

-		minimumWidth += leftMargin + rightMargin;

-		return minimumWidth;

-	}

-

-	int internalGetMaximumWidth(Composite parent, boolean changed) {

-		if (changed)

-			calculateMaximumColumnWidths(parent, true);

-		int maximumWidth = 0;

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

-			if (i > 0)

-				maximumWidth += horizontalSpacing;

-			maximumWidth += maxColumnWidths[i];

-		}

-		// add margins

-		maximumWidth += leftMargin + rightMargin;

-		return maximumWidth;

-	}

-

-	void resetColumnWidths() {

-		if (minColumnWidths == null)

-			minColumnWidths = new int[numColumns];

-		if (maxColumnWidths == null)

-			maxColumnWidths = new int[numColumns];

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

-			minColumnWidths[i] = 0;

-		}

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

-			maxColumnWidths[i] = 0;

-		}

-	}

-

-	void calculateMinimumColumnWidths(Composite parent, boolean changed) {

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

-

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

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

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

-				TableData td = row[j];

-				if (td.isItemData == false)

-					continue;

-				Control child = children[td.childIndex];

-				int minWidth = -1;

-				if (child instanceof Composite) {

-					Composite cc = (Composite) child;

-					Layout l = cc.getLayout();

-					if (l instanceof ILayoutExtension) {

-						minWidth =

-							((ILayoutExtension) l).getMinimumWidth(cc, changed);

-					}

-				}

-				if (minWidth == -1) {

-					if (isWrap(child)) {

-						// Should be the width of the

-						// longest word, we'll pick

-						// some small number instead

-						minWidth = 30;

-					} else {

-						Point size =

-							child.computeSize(

-								SWT.DEFAULT,

-								SWT.DEFAULT,

-								changed);

-						minWidth = size.x;

-					}

-				}

-				minWidth += td.indent;

-				minColumnWidths[j] = Math.max(minColumnWidths[j], minWidth);

-			}

-		}

-	}

-

-	boolean isWrap(Control control) {

-		if (control instanceof Composite

-			&& ((Composite) control).getLayout() instanceof ILayoutExtension)

-			return true;

-		return (control.getStyle() & SWT.WRAP) != 0;

-	}

-

-	void calculateMaximumColumnWidths(Composite parent, boolean changed) {

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

-

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

-			maxColumnWidths[i] = 0;

-		}

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

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

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

-				TableData td = row[j];

-				if (td.isItemData == false)

-					continue;

-				Control child = children[td.childIndex];

-				int maxWidth = -1;

-				if (child instanceof Composite) {

-					Composite cc = (Composite) child;

-					Layout l = cc.getLayout();

-					if (l instanceof ILayoutExtension) {

-						maxWidth =

-							((ILayoutExtension) l).getMaximumWidth(cc, changed);

-					}

-				}

-				if (maxWidth == -1) {

-					Point size =

-						child.computeSize(SWT.DEFAULT, SWT.DEFAULT, changed);

-					maxWidth = size.x;

-				}

-				maxWidth += td.indent;

-				if (td.colspan == 1)

-					maxColumnWidths[j] = Math.max(maxColumnWidths[j], maxWidth);

-				else {

-					// grow the last column

-					int last = j + td.colspan - 1;

-					int rem = 0;

-					for (int k = j; k < j + td.colspan - 1; k++) {

-						rem += maxColumnWidths[k];

-					}

-					int reduced = maxWidth - rem;

-					maxColumnWidths[last] =

-						Math.max(maxColumnWidths[last], reduced);

-				}

-			}

-		}

-	}

-

-	private void initializeIfNeeded(Composite parent, boolean changed) {

-		if (changed)

-			initialLayout = true;

-		if (initialLayout) {

-			initializeLayoutData(parent);

-			initialLayout = false;

-		}

-	}

-

-	void initializeLayoutData(Composite composite) {

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

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

-			Control child = children[i];

-			if (child.getLayoutData() == null) {

-				child.setLayoutData(new TableData());

-			}

-		}

-	}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/HyperlinkAdapter.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/HyperlinkAdapter.java
deleted file mode 100644
index 8180a2d..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/HyperlinkAdapter.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

-public class HyperlinkAdapter implements IHyperlinkListener {

-

-public HyperlinkAdapter() {

-	super();

-}

-public void linkActivated(org.eclipse.swt.widgets.Control linkLabel) {}

-public void linkEntered(org.eclipse.swt.widgets.Control linkLabel) {}

-public void linkExited(org.eclipse.swt.widgets.Control linkLabel) {}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/HyperlinkHandler.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/HyperlinkHandler.java
deleted file mode 100644
index 031aef6..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/HyperlinkHandler.java
+++ /dev/null
@@ -1,224 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

-import java.util.Enumeration;

-import java.util.Hashtable;

-

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

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

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

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

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

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

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

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

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

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

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

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

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

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

-

-public class HyperlinkHandler

-	extends HyperlinkSettings

-	implements MouseListener, MouseTrackListener, SelectionListener, PaintListener {

-	private Hashtable hyperlinkListeners;

-	private Control lastActivated;

-	private Control lastEntered;

-

-	public HyperlinkHandler() {

-		hyperlinkListeners = new Hashtable();

-	}

-

-	public Control getLastLink() {

-		return lastActivated;

-	}

-

-	public void mouseDoubleClick(MouseEvent e) {

-	}

-

-	public void mouseDown(MouseEvent e) {

-		if (e.button == 1)

-			return;

-		lastActivated = (Control) e.widget;

-	}

-	public void mouseEnter(MouseEvent e) {

-		Control control = (Control) e.widget;

-		linkEntered(control);

-	}

-	public void mouseExit(MouseEvent e) {

-		Control control = (Control) e.widget;

-		linkExited(control);

-	}

-	public void mouseHover(MouseEvent e) {

-	}

-

-	public void mouseUp(MouseEvent e) {

-		if (e.button != 1)

-			return;

-		Control linkControl = (Control) e.widget;

-		Point size = linkControl.getSize();

-		// Filter out mouse up events outside

-		// the link. This can happen when mouse is

-		// clicked, dragged outside the link, then

-		// released.

-		if (e.x < 0)

-			return;

-		if (e.y < 0)

-			return;

-		if (e.x >= size.x)

-			return;

-		if (e.y >= size.y)

-			return;

-		linkActivated(linkControl);

-	}

-

-	public void widgetDefaultSelected(SelectionEvent e) {

-		Control link = (Control) e.widget;

-		linkActivated(link);

-	}

-

-	public void widgetSelected(SelectionEvent e) {

-		Control link = (Control) e.widget;

-		SelectableFormLabel l = (SelectableFormLabel) link;

-		if (l.getSelection())

-			linkEntered(link);

-		else

-			linkExited(link);

-	}

-

-	private void linkActivated(Control link) {

-		IHyperlinkListener action =

-			(IHyperlinkListener) hyperlinkListeners.get(link);

-		if (action != null) {

-			link.setCursor(getBusyCursor());

-			action.linkActivated(link);

-			if (!link.isDisposed())

-				link.setCursor(

-					isHyperlinkCursorUsed() ? getHyperlinkCursor() : null);

-		}

-	}

-

-	private void linkEntered(Control link) {

-		if (lastEntered != null

-			&& lastEntered instanceof SelectableFormLabel) {

-			SelectableFormLabel fl = (SelectableFormLabel) lastEntered;

-			linkExited(fl);

-		}

-		if (isHyperlinkCursorUsed())

-			link.setCursor(getHyperlinkCursor());

-		if (activeBackground != null)

-			link.setBackground(activeBackground);

-		if (activeForeground != null)

-			link.setForeground(activeForeground);

-		if (hyperlinkUnderlineMode == UNDERLINE_ROLLOVER)

-			underline(link, true);

-

-		IHyperlinkListener action =

-			(IHyperlinkListener) hyperlinkListeners.get(link);

-		if (action != null)

-			action.linkEntered(link);

-		lastEntered = link;

-	}

-

-	private void linkExited(Control link) {

-		if (isHyperlinkCursorUsed())

-			link.setCursor(null);

-		if (hyperlinkUnderlineMode == UNDERLINE_ROLLOVER)

-			underline(link, false);

-		if (background != null)

-			link.setBackground(background);

-		if (foreground != null)

-			link.setForeground(foreground);

-		IHyperlinkListener action =

-			(IHyperlinkListener) hyperlinkListeners.get(link);

-		if (action != null)

-			action.linkExited(link);

-		if (lastEntered == link)

-			lastEntered = null;

-	}

-

-	public void paintControl(PaintEvent e) {

-		Control label = (Control) e.widget;

-		if (hyperlinkUnderlineMode == UNDERLINE_ALWAYS)

-			HyperlinkHandler.underline(label, true);

-	}

-

-	public void registerHyperlink(

-		Control control,

-		IHyperlinkListener listener) {

-		if (background != null)

-			control.setBackground(background);

-		if (foreground != null)

-			control.setForeground(foreground);

-		control.addMouseListener(this);

-		control.addMouseTrackListener(this);

-

-		if (hyperlinkUnderlineMode == UNDERLINE_ALWAYS

-			&& control instanceof Label)

-			control.addPaintListener(this);

-		if (control instanceof SelectableFormLabel) {

-			SelectableFormLabel sl = (SelectableFormLabel) control;

-			sl.addSelectionListener(this);

-			if (hyperlinkUnderlineMode == UNDERLINE_ALWAYS)

-				sl.setUnderlined(true);

-		}

-		hyperlinkListeners.put(control, listener);

-		removeDisposedLinks();

-	}

-

-	private void removeDisposedLinks() {

-		for (Enumeration keys = hyperlinkListeners.keys();

-			keys.hasMoreElements();

-			) {

-			Control control = (Control) keys.nextElement();

-			if (control.isDisposed()) {

-				hyperlinkListeners.remove(control);

-			}

-		}

-	}

-

-	public void reset() {

-		hyperlinkListeners.clear();

-	}

-

-	public static void underline(Control control, boolean inside) {

-		if (control instanceof SelectableFormLabel) {

-			SelectableFormLabel l = (SelectableFormLabel) control;

-			l.setUnderlined(inside);

-			l.redraw();

-			return;

-		}

-		if (!(control instanceof Label))

-			return;

-		Composite parent = control.getParent();

-		Rectangle bounds = control.getBounds();

-		GC gc = new GC(parent);

-		Color color =

-			inside ? control.getForeground() : control.getBackground();

-		gc.setForeground(color);

-		int y = bounds.y + bounds.height;

-		gc.drawLine(bounds.x, y, bounds.x + bounds.width, y);

-		gc.dispose();

-	}

-

-	public void setForeground(Color color) {

-		super.setForeground(color);

-		removeDisposedLinks();

-		for (Enumeration links = hyperlinkListeners.keys();

-			links.hasMoreElements();

-			) {

-			Control control = (Control) links.nextElement();

-			control.setForeground(color);

-		}

-	}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/HyperlinkSettings.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/HyperlinkSettings.java
deleted file mode 100644
index 3a1c6a0..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/HyperlinkSettings.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

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

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

-import org.eclipse.swt.*;

-

-public class HyperlinkSettings {

-	public static final int UNDERLINE_NEVER = 1;

-	public static final int UNDERLINE_ROLLOVER = 2;

-	public static final int UNDERLINE_ALWAYS = 3;

-

-	protected boolean hyperlinkCursorUsed = true;

-	protected int hyperlinkUnderlineMode = UNDERLINE_ALWAYS;

-	protected Color background;

-	protected Color foreground;

-	protected Color activeBackground;

-	protected Color activeForeground;

-	protected static Cursors cursors = new Cursors();

-

-	static class Cursors {

-		Cursor hyperlinkCursor;

-		Cursor busyCursor;

-		Cursor textCursor;

-		int counter = 0;

-

-		public void allocate() {

-			if (counter == 0) {

-				hyperlinkCursor =

-					new Cursor(Display.getCurrent(), SWT.CURSOR_HAND);

-				busyCursor = new Cursor(Display.getCurrent(), SWT.CURSOR_WAIT);

-				textCursor = new Cursor(Display.getCurrent(), SWT.CURSOR_IBEAM);

-			}

-			counter++;

-		}

-		public void dispose() {

-			counter--;

-			if (counter == 0) {

-				hyperlinkCursor.dispose();

-				busyCursor.dispose();

-				textCursor.dispose();

-				hyperlinkCursor = null;

-				busyCursor = null;

-				textCursor = null;

-			}

-		}

-	}

-

-	public HyperlinkSettings() {

-		cursors.allocate();

-	}

-

-	public void dispose() {

-		if (cursors != null)

-			cursors.dispose();

-	}

-

-	public Color getActiveBackground() {

-		return activeBackground;

-	}

-	public Color getActiveForeground() {

-		return activeForeground;

-	}

-	public Color getBackground() {

-		return background;

-	}

-	public Cursor getBusyCursor() {

-		return cursors.busyCursor;

-	}

-	public Cursor getTextCursor() {

-		return cursors.textCursor;

-	}

-	public Color getForeground() {

-		return foreground;

-	}

-	public Cursor getHyperlinkCursor() {

-		return cursors.hyperlinkCursor;

-	}

-	public int getHyperlinkUnderlineMode() {

-		return hyperlinkUnderlineMode;

-	}

-

-	public boolean isHyperlinkCursorUsed() {

-		return hyperlinkCursorUsed;

-	}

-

-	public void setActiveBackground(Color newActiveBackground) {

-		activeBackground = newActiveBackground;

-	}

-	public void setActiveForeground(Color newActiveForeground) {

-		activeForeground = newActiveForeground;

-	}

-	public void setBackground(Color newBackground) {

-		background = newBackground;

-	}

-	public void setForeground(Color newForeground) {

-		foreground = newForeground;

-	}

-	public void setHyperlinkCursorUsed(boolean newHyperlinkCursorUsed) {

-		hyperlinkCursorUsed = newHyperlinkCursorUsed;

-	}

-	public void setHyperlinkUnderlineMode(int newHyperlinkUnderlineMode) {

-		hyperlinkUnderlineMode = newHyperlinkUnderlineMode;

-	}

-

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IForm.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IForm.java
deleted file mode 100644
index 1661485..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IForm.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

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

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

-

-public interface IForm {

-public void commitChanges(boolean onSave);

-public Control createControl(Composite parent);

-public void dispose();

-public boolean doGlobalAction(String actionId);

-public void expandTo(Object object);

-public Control getControl();

-public FormWidgetFactory getFactory();

-public Color getHeadingBackground();

-public Color getHeadingForeground();

-public Image getHeadingImage();

-public String getHeadingText();

-public void initialize(Object model);

-public boolean isHeadingVisible();

-public void registerSection(FormSection section);

-public void setFocus();

-public void setHeadingBackground(Color newHeadingBackground);

-public void setHeadingForeground(Color newHeadingForeground);

-public void setHeadingImage(Image headingImage);

-public void setHeadingVisible(boolean newHeadingVisible);

-public void setHeadingText(String heading);

-public void update();

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IFormPage.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IFormPage.java
deleted file mode 100644
index 8839598..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IFormPage.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

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

-

-public interface IFormPage {

-

-boolean becomesInvisible(IFormPage newPage);

-void becomesVisible(IFormPage previousPage);

-void createControl(Composite parent);

-Control getControl();

-String getLabel();

-String getTitle();

-boolean isSource();

-boolean isVisible();

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IFormSelectionListener.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IFormSelectionListener.java
deleted file mode 100644
index a334d41..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IFormSelectionListener.java
+++ /dev/null
@@ -1,15 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

-public interface IFormSelectionListener {

-	public void formSelected(IFormPage page, boolean setFocus);

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IFormTextListener.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IFormTextListener.java
deleted file mode 100644
index 237f714..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IFormTextListener.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

-public interface IFormTextListener {

-	public void textValueChanged(FormEntry text);

-	public void textDirty(FormEntry text);

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IFormWorkbook.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IFormWorkbook.java
deleted file mode 100644
index 9fe78ab..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IFormWorkbook.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

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

-

-public interface IFormWorkbook {

-

-	void addFormSelectionListener(IFormSelectionListener listener);

-	public void addPage(IFormPage page);

-	public void createControl(Composite parent);

-	Control getControl();

-	public IFormPage getCurrentPage();

-	boolean isFirstPageSelected();

-	void removeFormSelectionListener(IFormSelectionListener listener);

-	public void removePage(IFormPage page);

-	public void selectPage(final IFormPage page, boolean setFocus);

-	void setFirstPageSelected(boolean selected);

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IHyperlinkListener.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IHyperlinkListener.java
deleted file mode 100644
index d69af34..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/IHyperlinkListener.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

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

-

-public interface IHyperlinkListener {

-

-public void linkActivated(Control linkLabel);

-public void linkEntered(Control linkLabel);

-public void linkExited(Control linkLabel);

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/ILayoutExtension.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/ILayoutExtension.java
deleted file mode 100644
index c6d947b..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/ILayoutExtension.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.ui.forms.internal;
-
-import org.eclipse.swt.widgets.Composite;
-
-/**
- * Classes that extend abstract class Layout and implement
- * this interface can take part in layout computation of
- * the HTMLTableLayout manager. The said layout uses
- * alternative algorithm that computes columns before rows.
- * It allows it to 'flow' wrapped text proportionally
- * (as in the popular web browsers). Custom layout managers
- * that implement this interface allow recursive reflow
- * to be performed.
- */
-public interface ILayoutExtension {
-	public int getMinimumWidth(Composite parent, boolean changed);
-	public int getMaximumWidth(Composite parent, boolean changed); 
-}
diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/NoTabsWorkbook.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/NoTabsWorkbook.java
deleted file mode 100644
index 8355501..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/NoTabsWorkbook.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

-import java.util.*;

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

-import org.eclipse.swt.*;

-import org.eclipse.ui.part.*;

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

-

-public class NoTabsWorkbook implements IFormWorkbook {

-	private Vector pages;

-	private boolean firstPageSelected = true;

-	private PageBook pageBook;

-	private Vector listeners = new Vector();

-	private IFormPage currentPage;

-

-	public NoTabsWorkbook() {

-		pages = new Vector();

-	}

-	public void addFormSelectionListener(IFormSelectionListener listener) {

-		listeners.addElement(listener);

-	}

-	public void addPage(IFormPage page) {

-		pages.add(page);

-

-		if (firstPageSelected && currentPage == null)

-			selectPage(page, true);

-	}

-

-	public void createControl(Composite parent) {

-		pageBook = new PageBook(parent, SWT.NULL);

-	}

-

-	private void fireSelectionChanged(IFormPage page, boolean setFocus) {

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

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

-			listener.formSelected(page, setFocus);

-		}

-	}

-	

-	public IFormPage [] getPages() {

-		return (IFormPage[])pages.toArray(new IFormPage[pages.size()]);

-	}

-

-	public Control getControl() {

-		return pageBook;

-	}

-

-	public IFormPage getCurrentPage() {

-		return currentPage;

-	}

-

-	public boolean isFirstPageSelected() {

-		return firstPageSelected;

-	}

-	public void removeFormSelectionListener(IFormSelectionListener listener) {

-		listeners.removeElement(listener);

-	}

-

-	public void removePage(IFormPage page) {

-		if (pages.contains(page)) {

-			Control c = page.getControl();

-			if (c!=null && !c.isDisposed())

-				c.dispose();

-			pages.remove(page);

-		}

-	}

-

-	public void selectPage(final IFormPage page, final boolean setFocus) {

-		final IFormPage oldPage = currentPage;

-		currentPage = page;

-

-		if (pageBook != null) {

-

-			// It may take a while

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

-				public void run() {

-					switchPages(oldPage, page, setFocus);

-				}

-			});

-		}

-	}

-

-	public void setFirstPageSelected(boolean newFirstPageSelected) {

-		firstPageSelected = newFirstPageSelected;

-	}

-

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

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

-			oldPage.becomesInvisible(newPage);

-		}

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

-			newPage.createControl(pageBook);

-		pageBook.showPage(newPage.getControl());

-

-		newPage.becomesVisible(oldPage);

-		fireSelectionChanged(newPage, setFocus);

-	}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/ScrollableSectionForm.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/ScrollableSectionForm.java
deleted file mode 100644
index 8abd1ff..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/ScrollableSectionForm.java
+++ /dev/null
@@ -1,113 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

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

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

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

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

-import org.eclipse.swt.*;

-

-/**

- * This version of the section form adds scrolling

- * capability. However, scrolling can be disabled

- * using 'setScrollable' method. For this reason,

- * this class can be used instead of the SectionForm.

- */

-

-public class ScrollableSectionForm extends SectionForm {

-	private Composite container;

-	private boolean verticalFit;

-	private boolean scrollable = true;

-

-	public ScrollableSectionForm() {

-	}

-	public Control createControl(Composite parent) {

-		container = createParent(parent);

-		Control formControl = super.createControl(container);

-		if (container instanceof ScrolledComposite) {

-			ScrolledComposite sc = (ScrolledComposite) container;

-			sc.setContent(formControl);

-		}

-		GridData gd = new GridData(GridData.FILL_BOTH);

-		formControl.setLayoutData(gd);

-		container.setBackground(formControl.getBackground());

-		return container;

-	}

-	protected Composite createParent(Composite parent) {

-		Composite result = null;

-		if (isScrollable()) {

-			ScrolledComposite scomp =

-				new ScrolledComposite(parent, SWT.V_SCROLL | SWT.H_SCROLL);

-			if (isVerticalFit()) {

-				scomp.setExpandHorizontal(true);

-				scomp.setExpandVertical(true);

-			}

-			initializeScrollBars(scomp);

-			result = scomp;

-		} else {

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

-			GridLayout layout = new GridLayout();

-			layout.marginHeight = 0;

-			layout.marginWidth = 0;

-			result.setLayout(layout);

-		}

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

-		return result;

-	}

-	public boolean isScrollable() {

-		return scrollable;

-	}

-	public boolean isVerticalFit() {

-		return verticalFit;

-	}

-	public void setScrollable(boolean newScrollable) {

-		scrollable = newScrollable;

-	}

-

-	public void setVerticalFit(boolean newVerticalFit) {

-		verticalFit = newVerticalFit;

-	}

-

-	private void initializeScrollBars(ScrolledComposite scomp) {

-		ScrollBar hbar = scomp.getHorizontalBar();

-		if (hbar != null) {

-			hbar.setIncrement(H_SCROLL_INCREMENT);

-		}

-		ScrollBar vbar = scomp.getVerticalBar();

-		if (vbar != null) {

-			vbar.setIncrement(V_SCROLL_INCREMENT);

-		}

-		updatePageIncrement(scomp);

-	}

-

-	public void update() {

-		super.update();

-		if (container instanceof ScrolledComposite) {

-			updateScrolledComposite();

-		} else {

-			container.layout(true);

-		}

-	}

-	public void updateScrollBars() {

-		if (container instanceof ScrolledComposite) {

-			updateScrolledComposite();

-		}

-	}

-	public void updateScrolledComposite() {

-		ScrolledComposite sc = (ScrolledComposite) container;

-		Control formControl = getControl();

-		Point newSize = formControl.computeSize(SWT.DEFAULT, SWT.DEFAULT);

-		formControl.setSize(newSize);

-		sc.setMinSize(newSize);

-		updatePageIncrement(sc);

-	}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/SectionChangeManager.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/SectionChangeManager.java
deleted file mode 100644
index 52d301b..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/SectionChangeManager.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

-import java.util.*;

-

-public class SectionChangeManager {

-	Hashtable sources = new Hashtable();

-

-	public SectionChangeManager() {

-		super();

-	}

-	public void dispatchNotification(

-		FormSection source,

-		int type,

-		Object changeObject) {

-		Vector targets = (Vector) sources.get(source);

-		if (targets != null) {

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

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

-				section.sectionChanged(source, type, changeObject);

-			}

-		}

-	}

-	public void linkSections(FormSection source, FormSection target) {

-		source.setManager(this);

-		Vector targets = null;

-

-		targets = (Vector) sources.get(source);

-		if (targets == null) {

-			targets = new Vector();

-			sources.put(source, targets);

-		}

-		targets.addElement(target);

-	}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/SectionForm.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/SectionForm.java
deleted file mode 100644
index be28b6c..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/SectionForm.java
+++ /dev/null
@@ -1,166 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

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

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

-import org.eclipse.swt.*;

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

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

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

-

-/**

- * This form implementation assumes that it contains

- * form sections and that they fill up the screen.

- * Typically, the form client will use up the entire

- * parent area below the heading. Sections must

- * be able to return their preferred size in both

- * dimensions. If they contain wrappable text,

- * WebForm should be used instead.

- */

-

-public class SectionForm extends AbstractSectionForm implements PaintListener {

-	private Composite control;

-	private int TITLE_HMARGIN = 10;

-	private int TITLE_VMARGIN = 5;

-

-	class FormLayout extends Layout {

-		protected Point computeSize(

-			Composite composite,

-			int wHint,

-			int hHint,

-			boolean flushCache) {

-			if (wHint != SWT.DEFAULT && hHint != SWT.DEFAULT)

-				return new Point(wHint, hHint);

-			Control client = composite.getChildren()[0];

-			Point csize = client.computeSize(widthHint, heightHint, flushCache);

-			if (headingVisible)

-				csize.y += getTitleHeight();

-			return csize;

-		}

-		protected void layout(Composite composite, boolean flushCache) {

-			Rectangle clientArea = composite.getClientArea();

-			Control client = composite.getChildren()[0];

-			if (client != null && !client.isDisposed()) {

-				int theight = headingVisible ? getTitleHeight() : 0;

-				client.setBounds(

-					clientArea.x,

-					clientArea.y + theight,

-					clientArea.width,

-					clientArea.height - theight);

-			}

-		}

-	}

-	private int widthHint = SWT.DEFAULT;

-	private int heightHint = SWT.DEFAULT;

-

-	public SectionForm() {

-	}

-

-	public Control createControl(Composite parent) {

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

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

-		canvas.setForeground(factory.getForegroundColor());

-		canvas.addPaintListener(this);

-		canvas.setLayout(new FormLayout());

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

-		Composite formParent = factory.createComposite(canvas);

-		createFormClient(formParent);

-		this.control = canvas;

-		//canvas.setFocus();

-		return canvas;

-	}

-

-	protected void createFormClient(Composite parent) {

-		factory.createComposite(parent);

-	}

-

-	public Control getControl() {

-		return control;

-	}

-

-	private int getTitleHeight() {

-		int imageHeight = 0;

-		if (headingImage != null

-			&& SWT.getPlatform().equals("motif") == false) {

-			imageHeight = headingImage.getBounds().height;

-		}

-		GC gc = new GC(control);

-		gc.setFont(titleFont);

-		FontMetrics fm = gc.getFontMetrics();

-		int fontHeight = fm.getHeight();

-		gc.dispose();

-

-		int height = fontHeight + TITLE_VMARGIN + TITLE_VMARGIN;

-		return Math.max(height, imageHeight);

-	}

-

-	private void paint(Control form, GC gc) {

-		Rectangle bounds = form.getBounds();

-		int height = getTitleHeight();

-		if (headingImage != null) {

-			Rectangle imageBounds = headingImage.getBounds();

-			int x = bounds.width - imageBounds.width;

-			int y = 0;

-			//x = Math.max(x, 0);

-			x = 0;

-			if (headingBackground != null) {

-				gc.setBackground(headingBackground);

-				gc.fillRectangle(0, 0, bounds.width, height);

-			}

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

-				gc.drawImage(headingImage, x, y);

-			}

-			if (headingForeground != null)

-				gc.setForeground(headingForeground);

-			else

-				gc.setForeground(factory.getForegroundColor());

-			gc.setFont(titleFont);

-			gc.drawText(getHeadingText(), TITLE_HMARGIN, TITLE_VMARGIN, true);

-		} else {

-			gc.setFont(titleFont);

-			gc.setBackground(factory.getColor(FormWidgetFactory.DEFAULT_HEADER_COLOR));

-			//gc.fillRectangle(TITLE_HMARGIN, TITLE_VMARGIN, bounds.width-TITLE_HMARGIN*2, height-TITLE_VMARGIN*2);

-			gc.setForeground(factory.getForegroundColor());

-			gc.drawText(getHeadingText(), TITLE_HMARGIN, TITLE_VMARGIN, true);

-		}

-	}

-

-	public final void paintControl(PaintEvent event) {

-		if (!headingVisible)

-			return;

-		GC gc = event.gc;

-		Control form = (Control) event.widget;

-		paint(form, gc);

-	}

-

-	public void setHeadingVisible(boolean newHeadingVisible) {

-		super.setHeadingVisible(newHeadingVisible);

-		if (control != null)

-			control.layout(true);

-	}

-	public void setHeadingText(String headingText) {

-		super.setHeadingText(headingText);

-		if (control != null) {

-			control.layout(true);

-			control.redraw();

-		}

-	}

-

-	public void propertyChange(PropertyChangeEvent event) {

-		titleFont = JFaceResources.getHeaderFont();

-		if (control != null && !control.isDisposed()) {

-			control.layout(true);

-			control.redraw();

-		}

-	}

-

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/SelectableControl.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/SelectableControl.java
deleted file mode 100644
index 8479133..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/SelectableControl.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

-

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

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

-import org.eclipse.swt.SWT;

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

-

-/**

- * FormText is a windowless control that

- * draws text in the provided context.

- */

-public abstract class SelectableControl extends Canvas {

-	private boolean hasFocus;

-

-	public SelectableControl(Composite parent, int style) {

-		super(parent, style);

-		addPaintListener(new PaintListener() {

-			public void paintControl(PaintEvent e) {

-				paint(e);

-			}

-		});

-		addMouseListener(new MouseAdapter () {

-			public void mouseUp(MouseEvent e) {

-				notifyListeners(SWT.Selection);

-			}

-		});

-		addKeyListener(new KeyAdapter() {

-			public void keyPressed(KeyEvent e) {

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

-					// Activation

-					notifyListeners(SWT.Selection);

-				}

-			}

-		});

-		addListener(SWT.Traverse, new Listener () {

-			public void handleEvent(Event e) {

-				if (e.detail != SWT.TRAVERSE_RETURN)

-					e.doit = true;

-			}

-		});

-		addFocusListener(new FocusListener() {

-			public void focusGained(FocusEvent e) {

-				if (!hasFocus) {

-				   hasFocus=true;

-				   redraw();

-				}

-			}

-			public void focusLost(FocusEvent e) {

-				if (hasFocus) {

-					hasFocus=false;

-					redraw();

-				}

-			}

-		});

-	}

-

-	protected void paint(PaintEvent e) {

-		GC gc = e.gc;

-		Point size = getSize();

-	   	gc.setFont(getFont());

-	   	paint(gc);

-		if (hasFocus) {

-	   		gc.setForeground(getForeground());

-	   		gc.drawFocus(0, 0, size.x, size.y);

-		}

-	}

-	

-	protected abstract void paint(GC gc);

-	

-	private void notifyListeners(int eventType) {

-		Event event = new Event();

-		event.type = eventType;

-		event.widget = this;

-		notifyListeners(eventType, event);

-	}

-	

-	public void addSelectionListener(SelectionListener listener) {

-		checkWidget ();

-		if (listener == null) return;

-		TypedListener typedListener = new TypedListener (listener);

-		addListener (SWT.Selection,typedListener);

-	}

-	

-	public void removeSelectionListener(SelectionListener listener) {

-		checkWidget ();

-		if (listener == null) return;

-		removeListener (SWT.Selection, listener);

-	}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/SelectableFormLabel.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/SelectableFormLabel.java
deleted file mode 100644
index ea5d5c4..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/SelectableFormLabel.java
+++ /dev/null
@@ -1,149 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

-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.*;

-

-public class SelectableFormLabel extends FormLabel {

-	private boolean hasFocus;

-

-	public boolean getSelection() {

-		return hasFocus;

-	}

-	

-	/**

-	 * Constructor for SelectableFormLabel

-	 */

-	public SelectableFormLabel(Composite parent, int style) {

-		super(parent, style);

-		addKeyListener(new KeyAdapter() {

-			public void keyPressed(KeyEvent e) {

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

-					// Activation

-					notifyListeners(SWT.DefaultSelection);

-				}

-			}

-		});

-		addListener(SWT.Traverse, new Listener () {

-			public void handleEvent(Event e) {

-				switch (e.detail) {

-					case SWT.TRAVERSE_PAGE_NEXT:

-					case SWT.TRAVERSE_PAGE_PREVIOUS:

-					case SWT.TRAVERSE_ARROW_NEXT:

-					case SWT.TRAVERSE_ARROW_PREVIOUS:

-					case SWT.TRAVERSE_RETURN:

-					e.doit = false;

-					return;

-				}

-				e.doit = true;

-			}

-		});

-		addFocusListener(new FocusListener() {

-			public void focusGained(FocusEvent e) {

-				if (!hasFocus) {

-				   hasFocus=true;

-				   notifyListeners(SWT.Selection);

-				   redraw();

-				}

-			}

-			public void focusLost(FocusEvent e) {

-				if (hasFocus) {

-					hasFocus=false;

-					notifyListeners(SWT.Selection);

-					redraw();

-				}

-			}

-		});

-		textMarginWidth = 1;

-		textMarginHeight = 1;

-	}

-	

-	protected 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_PUSHBUTTON;

-			}

-

-			public void getState(AccessibleControlEvent e) {

-				e.detail = SelectableFormLabel.this.getSelection()?ACC.STATE_SELECTED:ACC.STATE_NORMAL;

-			}

-		});

-	}

-	

-	private void notifyListeners(int eventType) {

-		Event event = new Event();

-		event.type = eventType;

-		event.widget = this;

-		notifyListeners(eventType, event);

-	}

-

-	protected void paint(PaintEvent e) {

-		super.paint(e);

-	   	if (hasFocus) {

-	   		GC gc = e.gc;

-	   		Point size = getSize();

-	   		gc.setForeground(getForeground());

-	   		gc.drawFocus(0, 0, size.x, size.y);

-		}

-	}

-

-	public void addSelectionListener(SelectionListener listener) {

-		checkWidget ();

-		if (listener == null) return;

-		TypedListener typedListener = new TypedListener (listener);

-		addListener (SWT.Selection,typedListener);

-		addListener (SWT.DefaultSelection,typedListener);

-	}

-	

-	public void removeSelectionListener(SelectionListener listener) {

-		checkWidget ();

-		if (listener == null) return;

-		removeListener (SWT.Selection, listener);

-		removeListener (SWT.DefaultSelection, listener);

-	}

-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/TableData.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/TableData.java
deleted file mode 100644
index bd3cfc4..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/TableData.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-import org.eclipse.swt.SWT;

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

-

-/**

- * 

- * @author dejan

- *

- * To change the template for this generated type comment go to

- * Window - Preferences - Java - Code Generation - Code and Comments

- */

-

-public class TableData {

-	public static final int LEFT = 1;

-	public static final int CENTER = 2;

-	public static final int RIGHT = 3;

-	public static final int TOP = 4;

-	public static final int MIDDLE = 5;

-	public static final int BOTTOM = 6;

-	public static final int FILL = 7;

-	public int colspan=1;

-	public int rowspan=1;

-	public int align = LEFT;

-	public int valign = TOP;

-	public int indent = 0;

-	public int maxWidth = SWT.DEFAULT;

-	public int maxHeight = SWT.DEFAULT;

-	public int heightHint = SWT.DEFAULT;

-	public boolean grabHorizontal=false;

-	

-	//private

-	int childIndex;

-	boolean isItemData=true; 

-	int compWidth;

-	Point compSize;

-		

-	public TableData() {

-	}

-	

-	public TableData(int align, int valign) {

-		this(align, valign, 1, 1);

-	}

-	

-	public TableData(int align, int valign, int rowspan, int colspan) {

-		this.align = align;

-		this.valign = valign;

-		this.rowspan = rowspan;

-		this.colspan = colspan;

-	}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/TableLayoutTest.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/TableLayoutTest.java
deleted file mode 100644
index 417e4e2..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/TableLayoutTest.java
+++ /dev/null
@@ -1,243 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-import org.eclipse.jface.action.StatusLineManager;

-import org.eclipse.swt.SWT;

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

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

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

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

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

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

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

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

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

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

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

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

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

-

-public class TableLayoutTest {

-

-public static void main (String [] args) {

-     Display display = new Display ();

-     Shell shell = new Shell (display);

-     shell.setLayout(new FillLayout());

-     final ScrolledComposite sc = new ScrolledComposite(shell, SWT.H_SCROLL | SWT.V_SCROLL);

-    // sc.setAlwaysShowScrollBars(true);

-     sc.setBackground(sc.getDisplay().getSystemColor(SWT.COLOR_WHITE));

-     final Composite c = new Composite(sc, SWT.NONE);

-     //c.setBackground(c.getDisplay().getSystemColor(SWT.COLOR_RED));

-     sc.setContent(c);

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

-		public void handleEvent (Event e) {

-			Rectangle ssize = sc.getClientArea();

-			int swidth = ssize.width;

-			HTMLTableLayout layout = (HTMLTableLayout)c.getLayout();

-			Point size = layout.computeSize(c, swidth, SWT.DEFAULT, true);

-			//if (size.x < swidth) size.x = swidth;

-			Rectangle trim = c.computeTrim(0, 0, size.x, size.y);

-			size = new Point(trim.width, trim.height);

-			/*

-			Point size = c.computeSize(swidth, SWT.DEFAULT, true);

-			*/

-			//System.out.println("in: "+swidth+", out: "+size.x);

-			c.setSize(size);

-		}

-	});

-     c.setBackground(c.getDisplay().getSystemColor(SWT.COLOR_WHITE));

-     HTMLTableLayout layout = new HTMLTableLayout();

-     layout.numColumns = 2;

-     //layout.horizontalSpacing = 0;

-     layout.leftMargin = 0;

-     layout.rightMargin = 0;

-     layout.makeColumnsEqualWidth=false;

-     //layout.marginWidth = layout.marginHeight = 0;

-     //layout.horizontalSpacing = 0;

-     c.setLayout(layout);

-     

-     Label label;

-     Button b;

-     TableData td;

-/*     

-     label = new Label(c, SWT.NULL);

-     label.setText("Single line1");

-     

-     //label = new Label(c, SWT.WRAP);

-     Text text = new Text(c, SWT.MULTI | SWT.WRAP);

-     text.setEditable(false);

-     text.setText("This is a much longer text that I want wrapped,"+

-     " but depending on the window size it can be rendered completely.");

-     

-     b = new Button(c, SWT.PUSH);

-     b.setText("Simple button");

-     

-     label = new Label(c, SWT.WRAP);

-     label.setText("Another text that may or may not be wrapped");

-

-     label = new Label(c, SWT.NULL);

-     td = new TableData(TableData.RIGHT, TableData.BOTTOM);

-     label.setLayoutData(td);

-     label.setText("Fixed label");

-     

-     Composite nested = new Composite(c, SWT.NULL);

-     layout = new HTMLTableLayout();

-     layout.numColumns = 2;

-     nested.setLayout(layout);

-     b = new Button(nested, SWT.PUSH);

-     b.setText("Button2");

-     label = new Label(nested, SWT.WRAP);

-     td = new TableData(TableData.LEFT, TableData.MIDDLE);

-     label.setLayoutData(td);

-     label.setText("Some text in the nested label that can be wrapped");

-*/     

-     label = new Label(c, SWT.NULL);

-     label.setText("Text in the left column");

-     

-     b = new Button(c, SWT.CHECK);

-     b.setText("Checkbox in the right column");

-

-     

-     label = new Label(c, SWT.WRAP);

-     label.setText("This assignment step is then repeated for nested tables using the minimum and maximum widths derived for all such tables in the first pass. In this case, the width of the parent table cell plays the role of the current window size in the above description. This process is repeated recursively for all nested tables. The topmost table is then rendered using the assigned widths. Nested tables are subsequently rendered as part of the parent table's cell contents.");

-     td = new TableData();

-     td.colspan = 2;

-     td.align = TableData.FILL;

-     label.setLayoutData(td);

-     

-     ExpandableGroup exp = new ExpandableGroup (SWT.WRAP) {

-     	public void fillExpansion(Composite container, FormWidgetFactory factory) {

-     		HTMLTableLayout layout = new HTMLTableLayout();

-     		container.setLayout(layout);

-     		layout.leftMargin = layout.rightMargin = 0;

-     		Button button = factory.createButton(container, null, SWT.PUSH);

-     		button.setText("Button");

-    	}

-     	public void expanded() {

-     		c.layout(true);

-     		updateSize(sc, c);

-     	}

-     	public void collapsed() {

-     		c.layout(true);

-     		updateSize(sc, c);

-     	}

-     };

-     exp.setText("Expandable Section");

-     //exp.setExpandable(false);

-     FormWidgetFactory factory = new FormWidgetFactory();

-     exp.createControl(c, factory);

-     //exp.getControl().setBackground(label.getDisplay().getSystemColor(SWT.COLOR_GREEN));

-     td = new TableData();

-     td.colspan = 2;

-     td.align = TableData.FILL;

-     exp.getControl().setLayoutData(td);

-     

-	 StatusLineManager manager = new StatusLineManager();

-     //addFormEngine(c, factory, manager);

-     //addFormEngine(c, factory, manager);

-     //addFormEngine(c, factory, manager);

-     

-     addRow(c);

- 

-     Control mcontrol = manager.createControl(c);

-     td = new TableData();

-     td.colspan = 2;

-     td.align = TableData.FILL;

-     mcontrol.setLayoutData(td);

-     

-     factory.setHyperlinkUnderlineMode(HyperlinkHandler.UNDERLINE_ROLLOVER);

-     

-     SelectableFormLabel ft = new SelectableFormLabel(c, SWT.WRAP);

-     ft.setText("Some text in the form text that should also wrap");

-     factory.turnIntoHyperlink(ft, new IHyperlinkListener() {

-     	public void linkEntered(Control link) {

-     		System.out.println("Link entered");

-     	}

-     	public void linkExited(Control link) {

-    		System.out.println("Link exited");

-     	}

-     	public void linkActivated(Control link) {

-     		System.out.println("Link activated");

-     	}

-     });

-

-     ft = new SelectableFormLabel(c, SWT.WRAP);

-     ft.setText("Some more form text here");

-     factory.turnIntoHyperlink(ft, new IHyperlinkListener() {

-     	public void linkEntered(Control link) {

-     		System.out.println("Link entered");

-     	}

-     	public void linkExited(Control link) {

-    		System.out.println("Link exited");

-     	}

-     	public void linkActivated(Control link) {

-     		System.out.println("Link activated");

-     	}

-     });

-   

-     shell.open ();

-     while (!shell.isDisposed ()) {

-          if (!display.readAndDispatch ()) display.sleep ();

-     }

-     display.dispose ();

-}

-

-/*

-

-public static void addFormEngine(Composite c, FormWidgetFactory factory, IStatusLineManager manager) {

-     new Label(c, SWT.NULL);

-     RichText html = new RichText(c, SWT.WRAP);

-     html.setHyperlinkSettings(factory.getHyperlinkHandler());

-     RichTextHTTPAction action = new RichTextHTTPAction(manager);

-     URL i1URL = TableLayoutTest.class.getResource("image1.gif");

-     ImageDescriptor id1 = ImageDescriptor.createFromURL(i1URL);

-     html.registerTextObject("urlHandler", action);

-     html.registerTextObject("image1", id1.createImage());

-     //html.setBackground(factory.getBackgroundColor());

-     html.setForeground(factory.getForegroundColor());

-     InputStream is = TableLayoutTest.class.getResourceAsStream("index.xml");

-     //html.setParagraphsSeparated(false);

-     html.setContents(is, true);

-     TableData td = new TableData();

-     td.colspan = 1;

-     td.align = TableData.FILL;

-     html.setLayoutData(td);

-}

-*/

-

-public static void addRow(Composite c) {

-	Composite row = new Composite(c, SWT.WRAP);

-	RowLayout layout = new RowLayout();

-	layout.wrap = true;

-	row.setLayout(layout);

-	

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

-		Button button = new Button(row, SWT.PUSH);

-		button.setText("Button that should be wrapped");

-	}

-	TableData td = new TableData();

-	td.colspan = 2;

-	td.align = TableData.FILL;

-	td.grabHorizontal = true;

-	row.setLayoutData(td);

-}

-

-private static void updateSize(ScrolledComposite sc, Composite c) {

-	Rectangle ssize = sc.getClientArea();

-	int swidth = ssize.width;

-	HTMLTableLayout layout = (HTMLTableLayout)c.getLayout();

-	Point size = layout.computeSize(c, swidth, SWT.DEFAULT, true);

-	Rectangle trim = c.computeTrim(0, 0, size.x, size.y);

-	size = new Point(trim.width, trim.height);

-	c.setSize(size);

-}

-

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/ToggleControl.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/ToggleControl.java
deleted file mode 100644
index f4a127e..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/ToggleControl.java
+++ /dev/null
@@ -1,169 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-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.Composite;

-

-public class ToggleControl extends SelectableControl {

-	private boolean selection;

-	private Color decorationColor;

-	private Color activeColor;

-	private Cursor activeCursor;

-	private boolean hover=false;

-	private static final int marginWidth = 2;

-	private static final int marginHeight = 2;

-	private static final int WIDTH = 9;

-	private static final int HEIGHT = 9;

-	private static final int [] offPoints = { 0,2, 8,2, 4,6 };

-	private static final int [] onPoints = { 2, -1, 2,8, 6,4 };	

-

-	public ToggleControl(Composite parent, int style) {

-		super(parent, style);

-		addSelectionListener(new SelectionAdapter() {

-			public void widgetSelected(SelectionEvent e) {

-				selection = !selection;

-				redraw();

-			}

-		});

-

-		addMouseTrackListener(new MouseTrackAdapter() {

-			public void mouseEnter(MouseEvent e) {

-				hover = true;

-				if (activeCursor!=null)

-				   setCursor(activeCursor);

-				redraw();

-			}

-			public void mouseExit(MouseEvent e) {

-				hover = false;

-				if (activeCursor!=null)

-				   setCursor(null);

-				redraw();

-			}

-		});

-		initAccessible();

-	}

-	void initAccessible() {

-		getAccessible().addAccessibleListener(new AccessibleAdapter() {

-			public void getHelp(AccessibleEvent e) {

-				e.result = getToolTipText();

-			}

-		});

-		

-		getAccessible().addAccessibleControlListener(new AccessibleControlAdapter() {

-			public void getChildAtPoint(AccessibleControlEvent e) {

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

-				if (getBounds().contains(testPoint)) {

-					e.childID = ACC.CHILDID_SELF;

-				}

-			}

-		

-			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_TREE;

-			}

-		

-			public void getState(AccessibleControlEvent e) {

-				e.detail = ToggleControl.this.getSelection()?ACC.STATE_EXPANDED:ACC.STATE_COLLAPSED;

-			}

-

-			public void getValue(AccessibleControlEvent e) {

-				e.result = ToggleControl.this.getSelection()?"1":"0";

-			}

-		});

-	}

-	

-	public void setDecorationColor(Color decorationColor) {

-		this.decorationColor = decorationColor;

-	}

-	

-	public Color getDecorationColor() {

-		return decorationColor;

-	}

-	

-	public void setActiveDecorationColor(Color activeColor) {

-		this.activeColor = activeColor;

-	}

-	

-	public void setActiveCursor(Cursor activeCursor) {

-		this.activeCursor = activeCursor;

-	}

-	

-	public Color getActiveDecorationColor() {

-		return activeColor;

-	}

-	

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

-		int width, height;

-		

-		if (wHint!=SWT.DEFAULT) width = wHint; 

-		else 

-		   width = WIDTH + 2*marginWidth;

-		if (hHint!=SWT.DEFAULT) height = hHint;

-		else height = HEIGHT + 2*marginHeight;

-		return new Point(width, height);

-	}

-

-	/*

-	 * @see SelectableControl#paint(GC)

-	 */

-	protected void paint(GC gc) {

-		if (hover && activeColor!=null)

-			gc.setBackground(activeColor);

-		else if (decorationColor!=null)

-	   	   gc.setBackground(decorationColor);

-	   	else

-	   			gc.setBackground(getForeground());

-		int [] data;

-		Point size = getSize();

-		int x = (size.x - 9)/2;

-		int y = (size.y - 9)/2;

-		if (selection)

-			data = translate(onPoints, x, y);

-		else 

-			data = translate(offPoints, x, y);

-		gc.fillPolygon(data);

-		gc.setBackground(getBackground());

-	}

-	

-	private int [] translate(int [] data, int x, int y) {

-		int [] target = new int [data.length];

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

-			target[i] = data[i]+ x;

-		}

-		for (int i=1; i<data.length; i+=2) {

-			target[i] = data[i]+y;

-		}

-		return target;

-	}

-

-	public boolean getSelection() {

-		return selection;

-	}

-	

-	public void setSelection(boolean selection) {

-		this.selection = selection;

-	}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/WebForm.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/WebForm.java
deleted file mode 100644
index ee6c76e..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/WebForm.java
+++ /dev/null
@@ -1,237 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal;

-

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

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

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

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

-import org.eclipse.swt.*;

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

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

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

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

-

-/**

- * This form implementation assumes that it contains

- * children that do not have independent dimensions.

- * In other words, these widgets are not capable

- * of answering their preferred size. Instead,

- * desired width must be supplied to get the

- * preferred height. These forms are layed out

- * top to bottom, left to right and use

- * a layout algorithm very similar to

- * HTML tables. Scrolling is not optional

- * for this type of presentation - 

- * scroll bars will show up when needed.

- */

-

-public class WebForm extends AbstractSectionForm {

-	protected ScrolledComposite scrollComposite;

-	private Composite control;

-	private Composite client;

-	private final static int HMARGIN = 5;

-	private final static int VMARGIN = 5;

-	private Image headingUnderlineImage;

-

-	class WebFormLayout extends Layout {

-

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

-			Rectangle bounds = parent.getClientArea();

-			int x = 0;

-			int y = 0;

-			if (isHeadingVisible()) {

-				y = getHeadingHeight(parent);

-			}

-			Point csize;

-

-			Layout layout = client.getLayout();

-			if (layout != null && layout instanceof HTMLTableLayout) {

-				HTMLTableLayout hlayout = (HTMLTableLayout) layout;

-				csize = hlayout.computeSize(client, bounds.width, SWT.DEFAULT, true);

-				if (csize.x < bounds.width)

-					csize.x = bounds.width;

-				Rectangle trim = control.computeTrim(0, 0, csize.x, csize.y);

-				csize = new Point(trim.width, trim.height);

-			} else {

-				csize = client.computeSize(bounds.width, SWT.DEFAULT, changed);

-			}

-			client.setBounds(x, y, csize.x, csize.y);

-		}

-

-		protected Point computeSize(

-			Composite parent,

-			int wHint,

-			int hHint,

-			boolean changed) {

-			int width = wHint;

-			int height = 0;

-			if (isHeadingVisible()) {

-				height = getHeadingHeight(parent);

-			}

-			Point csize;

-			Layout layout = client.getLayout();

-

-			if (layout != null && layout instanceof HTMLTableLayout) {

-				HTMLTableLayout hlayout = (HTMLTableLayout) layout;

-				csize = hlayout.computeSize(client, width, SWT.DEFAULT, true);

-				if (csize.x < width)

-					csize.x = width;

-				Rectangle trim = control.computeTrim(0, 0, csize.x, csize.y);

-				csize = new Point(trim.width, trim.height);

-			} else {

-				csize = client.computeSize(width, SWT.DEFAULT, changed);

-			}

-			width = csize.x;

-			height += csize.y;

-			return new Point(width, height);

-		}

-	}

-

-	public WebForm() {

-	}

-

-	public Control createControl(Composite parent) {

-		scrollComposite = new ScrolledComposite(parent, SWT.V_SCROLL | SWT.H_SCROLL);

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

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

-		final Composite form = factory.createComposite(scrollComposite);

-

-		scrollComposite.setContent(form);

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

-			public void handleEvent(Event e) {

-				updateSize();

-			}

-		});

-		WebFormLayout layout = new WebFormLayout();

-		form.setLayout(layout);

-		form.addPaintListener(new PaintListener() {

-			public void paintControl(PaintEvent e) {

-				paint(e);

-			}

-		});

-		this.control = form;

-		client = factory.createComposite(form);

-		createContents(client);

-		initializeScrollBars(scrollComposite);

-		//form.setFocus();

-		return scrollComposite;

-	}

-	private void initializeScrollBars(ScrolledComposite scomp) {

-		ScrollBar hbar = scomp.getHorizontalBar();

-		if (hbar != null) {

-			hbar.setIncrement(H_SCROLL_INCREMENT);

-		}

-		ScrollBar vbar = scomp.getVerticalBar();

-		if (vbar != null) {

-			vbar.setIncrement(V_SCROLL_INCREMENT);

-		}

-		updatePageIncrement(scomp);

-	}

-

-	public int getHeadingHeight(Composite parent) {

-		int width = parent.getSize().x;

-		int height = 0;

-		int imageHeight = 0;

-		if (getHeadingImage() != null) {

-			Rectangle ibounds = getHeadingImage().getBounds();

-			imageHeight = ibounds.height;

-		}

-		GC gc = new GC(parent);

-		gc.setFont(titleFont);

-		int textWidth = width - 2 * HMARGIN;

-		height = FormLabel.computeWrapHeight(gc, getHeadingText(), textWidth);

-		height += 2 * VMARGIN;

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

-		if (headingUnderlineImage != null) {

-			Rectangle ibounds = headingUnderlineImage.getBounds();

-			height += ibounds.height;

-		}

-		gc.dispose();

-		return height;

-	}

-

-	protected void createContents(Composite parent) {

-	}

-

-	public Control getControl() {

-		return control;

-	}

-

-	public void setHeadingVisible(boolean newHeadingVisible) {

-		super.setHeadingVisible(newHeadingVisible);

-		if (control != null)

-			control.layout();

-	}

-

-	public Image getHeadingUnderlineImage() {

-		return headingUnderlineImage;

-	}

-

-	public void setHeadingUnderlineImage(Image image) {

-		this.headingUnderlineImage = image;

-	}

-

-	public void propertyChange(PropertyChangeEvent event) {

-		titleFont = JFaceResources.getHeaderFont();

-		if (control != null && !control.isDisposed()) {

-			control.layout();

-		}

-	}

-	

-	protected void updateHyperlinkColors() {

-		factory.updateHyperlinkColors();

-		if (control != null && !control.isDisposed()) {

-			control.redraw();

-		}

-	}

-

-	public void updateSize() {

-		Rectangle ssize = scrollComposite.getClientArea();

-		int swidth = ssize.width;

-		WebFormLayout layout = (WebFormLayout) control.getLayout();

-		Point size = layout.computeSize(control, swidth, SWT.DEFAULT, true);

-		if (size.x < swidth)

-			size.x = swidth;

-		Rectangle trim = control.computeTrim(0, 0, size.x, size.y);

-		size = new Point(trim.width, trim.height);

-		control.setSize(size);

-		updatePageIncrement(scrollComposite);

-	}

-

-	private void paint(PaintEvent e) {

-		if (isHeadingVisible() == false)

-			return;

-		GC gc = e.gc;

-		if (headingImage != null) {

-			gc.drawImage(headingImage, 0, 0);

-		}

-		Point size = control.getSize();

-		if (getHeadingBackground() != null)

-			gc.setBackground(getHeadingBackground());

-		if (getHeadingForeground() != null)

-			gc.setForeground(getHeadingForeground());

-		gc.setFont(titleFont);

-		FormLabel.paintWrapText(gc, size, getHeadingText(), HMARGIN, VMARGIN);

-		if (headingUnderlineImage != null) {

-			int y =

-				getHeadingHeight(control)

-					- headingUnderlineImage.getBounds().height;

-			gc.drawImage(headingUnderlineImage, 0, y);

-		}

-	}

-	public void setHeadingText(String headingText) {

-		super.setHeadingText(headingText);

-		if (control!=null)

-			control.redraw();

-	}

-

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/BulletParagraph.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/BulletParagraph.java
deleted file mode 100644
index de3f838..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/BulletParagraph.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.update.ui.forms.internal.engine;
-
-import org.eclipse.swt.graphics.GC;
-import java.util.Hashtable;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Color;
-
-public class BulletParagraph extends Paragraph implements IBulletParagraph {
-	private int style = CIRCLE;
-	private String text;
-	private int CIRCLE_DIAM = 5;
-	private int SPACING = 10;
-	private int indent = -1;
-	/**
-	 * Constructor for BulletParagraph.
-	 * @param addVerticalSpace
-	 */
-	public BulletParagraph(boolean addVerticalSpace) {
-		super(addVerticalSpace);
-	}
-
-	public int getIndent() {
-		if (indent != -1)
-			return indent;
-		switch (style) {
-			case CIRCLE :
-				return CIRCLE_DIAM + SPACING;
-		}
-		return 20;
-	}
-
-	/*
-	 * @see IBulletParagraph#getBulletStyle()
-	 */
-	public int getBulletStyle() {
-		return style;
-	}
-
-	public void setBulletStyle(int style) {
-		this.style = style;
-	}
-
-	public void setBulletText(String text) {
-		this.text = text;
-	}
-
-	public void setIndent(int indent) {
-		this.indent = indent;
-	}
-
-	/*
-	 * @see IBulletParagraph#getBulletText()
-	 */
-	public String getBulletText() {
-		return text;
-	}
-
-	public void paint(
-		GC gc,
-		int width,
-		Locator loc,
-		int lineHeight,
-		Hashtable objectTable,
-		IHyperlinkSegment selectedLink) {
-		paintBullet(gc, loc, lineHeight, objectTable);
-		super.paint(gc, width, loc, lineHeight, objectTable, selectedLink);
-	}
-
-	public void paintBullet(
-		GC gc,
-		Locator loc,
-		int lineHeight,
-		Hashtable objectTable) {
-		int x = loc.x - getIndent();
-		if (style == CIRCLE) {
-			int y = loc.y + lineHeight / 2 - CIRCLE_DIAM / 2;
-			Color bg = gc.getBackground();
-			Color fg = gc.getForeground();
-			gc.setBackground(fg);
-			gc.fillRectangle(x, y + 1, 5, 3);
-			gc.fillRectangle(x + 1, y, 3, 5);
-			gc.setBackground(bg);
-		} else if (style == TEXT && text != null) {
-			gc.drawText(text, x, loc.y);
-		} else if (style == IMAGE && text != null) {
-			Image image = (Image) objectTable.get(text);
-			if (image != null) {
-				int y = loc.y + lineHeight / 2 - image.getBounds().height / 2;
-				gc.drawImage(image, x, y);
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/FormEngine.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/FormEngine.java
deleted file mode 100644
index 53c8c7f..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/FormEngine.java
+++ /dev/null
@@ -1,560 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

-

-import java.io.InputStream;

-import java.util.Hashtable;

-

-import org.eclipse.core.runtime.CoreException;

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

-import org.eclipse.jface.action.IMenuManager;

-import org.eclipse.swt.SWT;

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

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

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

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

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

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

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

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

-import org.eclipse.update.ui.forms.internal.*;

-

-public class FormEngine extends Canvas {

-	public static final String URL_HANDLER_ID = "urlHandler";

-	boolean hasFocus;

-	boolean paragraphsSeparated = true;

-	TextModel model;

-	Hashtable objectTable = new Hashtable();

-	public int marginWidth = 0;

-	public int marginHeight = 1;

-	IHyperlinkSegment entered;

-	boolean mouseDown = false;

-	Point dragOrigin;

-	private Action openAction;

-	private Action copyShortcutAction;

-	private boolean loading=true;

-	private String loadingText="Loading...";

-

-	public boolean getFocus() {

-		return hasFocus;

-	}

-	

-	public boolean isLoading() {

-		return loading;

-	}

-	

-	public String getLoadingText() {

-		return loadingText;

-	}

-	

-	public void setLoadingText(String loadingText) {

-		this.loadingText = loadingText;

-	}

-

-	public int getParagraphSpacing(int lineHeight) {

-		return lineHeight / 2;

-	}

-

-	public void setParagraphsSeparated(boolean value) {

-		paragraphsSeparated = value;

-	}

-

-	/**

-	 * Constructor for SelectableFormLabel

-	 */

-	public FormEngine(Composite parent, int style) {

-		super(parent, style);

-		setLayout(new FormEngineLayout());

-		model = new TextModel();

-

-		addDisposeListener(new DisposeListener() {

-			public void widgetDisposed(DisposeEvent e) {

-				model.dispose();

-			}

-		});

-		addPaintListener(new PaintListener() {

-			public void paintControl(PaintEvent e) {

-				paint(e);

-			}

-		});

-		addListener(SWT.KeyDown, new Listener() {

-			public void handleEvent(Event e) {

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

-					activateSelectedLink();

-					return;

-				}

-			}

-		});

-		addListener(SWT.Traverse, new Listener() {

-			public void handleEvent(Event e) {

-				switch (e.detail) {

-					case SWT.TRAVERSE_PAGE_NEXT :

-					case SWT.TRAVERSE_PAGE_PREVIOUS :

-					case SWT.TRAVERSE_ARROW_NEXT :

-					case SWT.TRAVERSE_ARROW_PREVIOUS :

-						e.doit = false;

-						return;

-				}

-				if (!model.hasFocusSegments()) {

-					e.doit = true;

-					return;

-				}

-				if (e.detail == SWT.TRAVERSE_TAB_NEXT)

-					e.doit = advance(true);

-				else if (e.detail == SWT.TRAVERSE_TAB_PREVIOUS)

-					e.doit = advance(false);

-				else if (e.detail != SWT.TRAVERSE_RETURN)

-					e.doit = true;

-			}

-		});

-		addFocusListener(new FocusListener() {

-			public void focusGained(FocusEvent e) {

-				if (!hasFocus) {

-					hasFocus = true;

-					handleFocusChange();

-				}

-			}

-			public void focusLost(FocusEvent e) {

-				if (hasFocus) {

-					hasFocus = false;

-					handleFocusChange();

-				}

-			}

-		});

-		addMouseListener(new MouseListener() {

-			public void mouseDoubleClick(MouseEvent e) {

-			}

-			public void mouseDown(MouseEvent e) {

-				// select a link

-				handleMouseClick(e, true);

-			}

-			public void mouseUp(MouseEvent e) {

-				// activate a link

-				handleMouseClick(e, false);

-			}

-		});

-		addMouseTrackListener(new MouseTrackListener() {

-			public void mouseEnter(MouseEvent e) {

-				handleMouseMove(e);

-			}

-			public void mouseExit(MouseEvent e) {

-				if (entered != null) {

-					exitLink(entered);

-					paintLinkHover(entered, false);

-					entered = null;

-					setCursor(null);

-				}

-			}

-			public void mouseHover(MouseEvent e) {

-				handleMouseHover(e);

-			}

-		});

-		addMouseMoveListener(new MouseMoveListener() {

-			public void mouseMove(MouseEvent e) {

-				handleMouseMove(e);

-			}

-		});

-		initAccessible();

-		makeActions();

-	}

-

-	private void makeActions() {

-		openAction = new Action() {

-			public void run() {

-				activateSelectedLink();

-			}

-		};

-		openAction.setText(

-			FormsPlugin.getResourceString("FormEgine.linkPopup.open"));

-		copyShortcutAction = new Action() {

-			public void run() {

-				copyShortcut(getSelectedLink());

-			}

-		};

-		copyShortcutAction.setText(

-			FormsPlugin.getResourceString("FormEgine.linkPopup.copyShortcut"));

-	}

-

-	private String getAcessibleText() {

-		return model.getAccessibleText();

-	}

-

-	private void initAccessible() {

-		Accessible accessible = getAccessible();

-		accessible.addAccessibleListener(new AccessibleAdapter() {

-			public void getName(AccessibleEvent e) {

-				e.result = getAcessibleText();

-			}

-

-			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_TEXT;

-			}

-

-			public void getState(AccessibleControlEvent e) {

-				e.detail = ACC.STATE_READONLY;

-			}

-		});

-	}

-

-	private void handleMouseClick(MouseEvent e, boolean down) {

-		if (down) {

-			// select a hyperlink

-			IHyperlinkSegment segmentUnder = model.findHyperlinkAt(e.x, e.y);

-			if (segmentUnder != null) {

-				IHyperlinkSegment oldLink = model.getSelectedLink();

-				model.selectLink(segmentUnder);

-				enterLink(segmentUnder);

-				paintFocusTransfer(oldLink, segmentUnder);

-			}

-			mouseDown = true;

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

-		} else {

-			if (e.button == 1) {

-				IHyperlinkSegment segmentUnder =

-					model.findHyperlinkAt(e.x, e.y);

-				if (segmentUnder != null) {

-					activateLink(segmentUnder);

-				}

-			}

-			mouseDown = false;

-		}

-	}

-	private void handleMouseHover(MouseEvent e) {

-	}

-	private void handleMouseMove(MouseEvent e) {

-		if (mouseDown) {

-			handleDrag(e);

-			return;

-		}

-		ITextSegment segmentUnder = model.findSegmentAt(e.x, e.y);

-

-		if (segmentUnder == null) {

-			if (entered != null) {

-				exitLink(entered);

-				paintLinkHover(entered, false);

-				entered = null;

-			}

-			setCursor(null);

-		} else {

-			if (segmentUnder instanceof IHyperlinkSegment) {

-				IHyperlinkSegment linkUnder = (IHyperlinkSegment) segmentUnder;

-				if (entered == null) {

-					entered = linkUnder;

-					enterLink(linkUnder);

-					paintLinkHover(entered, true);

-					setCursor(

-						model.getHyperlinkSettings().getHyperlinkCursor());

-				}

-			} else {

-				if (entered != null) {

-					exitLink(entered);

-					paintLinkHover(entered, false);

-					entered = null;

-				}

-				setCursor(model.getHyperlinkSettings().getTextCursor());

-			}

-		}

-	}

-

-	private void handleDrag(MouseEvent e) {

-	}

-

-	public HyperlinkSettings getHyperlinkSettings() {

-		return model.getHyperlinkSettings();

-	}

-

-	public void setHyperlinkSettings(HyperlinkSettings settings) {

-		model.setHyperlinkSettings(settings);

-	}

-

-	private boolean advance(boolean next) {

-		IHyperlinkSegment current = model.getSelectedLink();

-		if (current != null)

-			exitLink(current);

-

-		boolean valid = model.traverseLinks(next);

-		

-		IHyperlinkSegment newLink = model.getSelectedLink();

-

-		if (valid)

-			enterLink(newLink);

-		paintFocusTransfer(current, newLink);

-		if (newLink!=null) ensureVisible(newLink);

-		return !valid;

-	}

-

-	public IHyperlinkSegment getSelectedLink() {

-		return model.getSelectedLink();

-	}

-

-	private void handleFocusChange() {

-		if (hasFocus) {

-			model.traverseLinks(true);

-			enterLink(model.getSelectedLink());

-			paintFocusTransfer(null, model.getSelectedLink());

-		} else {

-			paintFocusTransfer(model.getSelectedLink(), null);

-			model.selectLink(null);

-		}

-	}

-

-	private void enterLink(IHyperlinkSegment link) {

-		if (link == null)

-			return;

-		HyperlinkAction action = link.getAction(objectTable);

-		if (action != null)

-			action.linkEntered(link);

-	}

-

-	private void exitLink(IHyperlinkSegment link) {

-		if (link == null)

-			return;

-		HyperlinkAction action = link.getAction(objectTable);

-		if (action != null)

-			action.linkExited(link);

-	}

-

-	private void paintLinkHover(IHyperlinkSegment link, boolean hover) {

-		GC gc = new GC(this);

-

-		HyperlinkSettings settings = getHyperlinkSettings();

-

-		gc.setForeground(

-			hover ? settings.getActiveForeground() : settings.getForeground());

-		gc.setBackground(getBackground());

-		gc.setFont(getFont());

-		boolean selected = (link == getSelectedLink());

-		link.repaint(gc, hover);

-		if (selected) {

-			link.paintFocus(gc, getBackground(), getForeground(), false);

-			link.paintFocus(gc, getBackground(), getForeground(), true);

-		}

-		gc.dispose();

-	}

-

-	private void activateSelectedLink() {

-		IHyperlinkSegment link = model.getSelectedLink();

-		if (link != null)

-			activateLink(link);

-	}

-

-	private void activateLink(IHyperlinkSegment link) {

-		setCursor(model.getHyperlinkSettings().getBusyCursor());

-		HyperlinkAction action = link.getAction(objectTable);

-		if (action != null)

-			action.linkActivated(link);

-		if (!isDisposed())

-			setCursor(model.getHyperlinkSettings().getHyperlinkCursor());

-	}

-

-	protected void paint(PaintEvent e) {

-		int width = getClientArea().width;

-

-		GC gc = e.gc;

-		gc.setFont(getFont());

-		gc.setForeground(getForeground());

-		gc.setBackground(getBackground());

-

-		Locator loc = new Locator();

-		loc.marginWidth = marginWidth;

-		loc.marginHeight = marginHeight;

-		loc.x = marginWidth;

-		loc.y = marginHeight;

-

-		FontMetrics fm = gc.getFontMetrics();

-		int lineHeight = fm.getHeight();

-		

-		if (loading) {

-			int textWidth = gc.textExtent(loadingText).x;

-			gc.drawText(loadingText, width/2-textWidth/2, getClientArea().height/2-lineHeight/2);

-			return;

-		}

-		

-		IParagraph[] paragraphs = model.getParagraphs();

-

-		IHyperlinkSegment selectedLink = model.getSelectedLink();

-

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

-			IParagraph p = paragraphs[i];

-

-			if (i > 0 && paragraphsSeparated && p.getAddVerticalSpace())

-				loc.y += getParagraphSpacing(lineHeight);

-

-			loc.indent = p.getIndent();

-			loc.resetCaret();

-			loc.rowHeight = 0;

-			p.paint(gc, width, loc, lineHeight, objectTable, selectedLink);

-		}

-	}

-

-	public void registerTextObject(String key, Object value) {

-		objectTable.put(key, value);

-	}

-

-	public void load(String text, boolean parseTags, boolean expandURLs) {

-		try {

-			if (parseTags)

-				model.parseTaggedText(text, expandURLs);

-			else

-				model.parseRegularText(text, expandURLs);

-		} catch (CoreException e) {

-			FormsPlugin.logException(e);

-		}

-		finally {

-			loading = false;

-		}

-	}

-	public void load(InputStream is, boolean expandURLs) {

-		try {

-			model.parseInputStream(is, expandURLs);

-		} catch (CoreException e) {

-			FormsPlugin.logException(e);

-		}

-		finally {

-			loading = false;

-		}

-	}

-

-	public boolean setFocus() {

-		/*

-		if (!model.hasFocusSegments())

-			return false;

-		*/

-		return super.setFocus();

-	}

-

-	private void paintFocusTransfer(

-		IHyperlinkSegment oldLink,

-		IHyperlinkSegment newLink) {

-		GC gc = new GC(this);

-		Color bg = getBackground();

-		Color fg = getForeground();

-

-		gc.setFont(getFont());

-

-		if (oldLink != null) {

-			gc.setBackground(bg);

-			gc.setForeground(fg);

-			oldLink.paintFocus(gc, bg, fg, false);

-		}

-		if (newLink != null) {

-			//ensureVisible(newLink);

-			gc.setBackground(bg);

-			gc.setForeground(fg);

-			newLink.paintFocus(gc, bg, fg, true);

-		}

-		gc.dispose();

-	}

-	/**

-	 * Gets the marginWidth.

-	 * @return Returns a int

-	 */

-	public int getMarginWidth() {

-		return marginWidth;

-	}

-

-	/**

-	 * Sets the marginWidth.

-	 * @param marginWidth The marginWidth to set

-	 */

-	public void setMarginWidth(int marginWidth) {

-		this.marginWidth = marginWidth;

-	}

-

-	/**

-	 * Gets the marginHeight.

-	 * @return Returns a int

-	 */

-	public int getMarginHeight() {

-		return marginHeight;

-	}

-

-	/**

-	 * Sets the marginHeight.

-	 * @param marginHeight The marginHeight to set

-	 */

-	public void setMarginHeight(int marginHeight) {

-		this.marginHeight = marginHeight;

-	}

-

-	public void contextMenuAboutToShow(IMenuManager manager) {

-		IHyperlinkSegment link = getSelectedLink();

-		if (link != null)

-			contributeLinkActions(manager, link);

-	}

-

-	private void contributeLinkActions(

-		IMenuManager manager,

-		IHyperlinkSegment link) {

-		manager.add(openAction);

-		manager.add(copyShortcutAction);

-		manager.add(new Separator());

-	}

-

-	private void copyShortcut(IHyperlinkSegment link) {

-		String text = link.getText();

-		Clipboard clipboard = new Clipboard(getDisplay());

-		clipboard.setContents(

-			new Object[] { text },

-			new Transfer[] { TextTransfer.getInstance()});

-	}

-

-	private void ensureVisible(IHyperlinkSegment segment) {

-		Rectangle bounds = segment.getBounds();

-		ScrolledComposite scomp = getScrolledComposite();

-		if (scomp == null)

-			return;

-		Point origin = AbstractSectionForm.getControlLocation(scomp, this);

-		origin.x += bounds.x;

-		origin.y += bounds.y;

-		AbstractSectionForm.ensureVisible(

-			scomp,

-			origin,

-			new Point(bounds.width, bounds.height));

-	}

-	ScrolledComposite getScrolledComposite() {

-		Composite parent = getParent();

-		while (parent != null) {

-			if (parent instanceof ScrolledComposite)

-				return (ScrolledComposite) parent;

-			parent = parent.getParent();

-		}

-		return null;

-	}

-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/FormEngineLayout.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/FormEngineLayout.java
deleted file mode 100644
index ecaee4d..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/FormEngineLayout.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

-

-import org.eclipse.swt.SWT;

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

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

-import org.eclipse.update.ui.forms.internal.ILayoutExtension;

-

-/**

- * @version 	1.0

- * @author

- */

-public class FormEngineLayout extends Layout implements ILayoutExtension {

-

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

-		return computeSize(parent, SWT.DEFAULT, SWT.DEFAULT, changed).x;

-	}

-

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

-		return 30;

-	}

-

-	/*

-	 * @see Layout#computeSize(Composite, int, int, boolean)

-	 */

-

-	public Point computeSize(

-		Composite composite,

-		int wHint,

-		int hHint,

-		boolean changed) {

-		FormEngine engine = (FormEngine) composite;

-		int innerWidth = wHint;

-		if (engine.isLoading()) {

-			return computeLoading(engine);

-		}

-		if (innerWidth != SWT.DEFAULT)

-			innerWidth -= engine.marginWidth * 2;

-		Point textSize = computeTextSize(engine, innerWidth);

-		int textWidth = textSize.x + 2 * engine.marginWidth;

-		int textHeight = textSize.y + 2 * engine.marginHeight;

-		Point result = new Point(textWidth, textHeight);

-		return result;

-	}

-	

-	private Point computeLoading(FormEngine engine) {

-		GC gc = new GC(engine);

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

-		String loadingText = engine.getLoadingText();

-		Point size = gc.textExtent(loadingText);

-		gc.dispose();

-		size.x += 2 * engine.marginWidth;

-		size.y += 2 * engine.marginHeight;

-		return size;

-	}

-

-	private Point computeTextSize(FormEngine engine, int wHint) {

-		IParagraph[] paragraphs = engine.model.getParagraphs();

-

-		GC gc = new GC(engine);

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

-

-		Locator loc = new Locator();

-

-		int width = wHint != SWT.DEFAULT ? wHint : 0;

-

-		FontMetrics fm = gc.getFontMetrics();

-		int lineHeight = fm.getHeight();

-

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

-			IParagraph p = paragraphs[i];

-

-			if (i > 0 && engine.paragraphsSeparated && p.getAddVerticalSpace())

-				loc.y += engine.getParagraphSpacing(lineHeight);

-

-			loc.rowHeight = 0;

-			loc.indent = p.getIndent();

-			loc.x = p.getIndent();

-

-			IParagraphSegment[] segments = p.getSegments();

-			if (segments.length > 0) {

-				for (int j = 0; j < segments.length; j++) {

-					IParagraphSegment segment = segments[j];

-					segment.advanceLocator(gc, wHint, loc, engine.objectTable);

-					width = Math.max(width, loc.width);

-				}

-				loc.y += loc.rowHeight;

-			} else {

-				// empty new line

-				loc.y += lineHeight;

-			}

-		}

-		gc.dispose();

-		return new Point(width, loc.y);

-	}

-

-	/*

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

-	 */

-	protected void layout(Composite composite, boolean flushCache) {

-	}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/HTTPAction.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/HTTPAction.java
deleted file mode 100644
index cd3d0b5..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/HTTPAction.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

-import org.eclipse.swt.program.Program;

-

-/**

- * @version 	1.0

- * @author

- */

-public class HTTPAction extends HyperlinkAction {

-	public HTTPAction () {

-	}

-	

-	public void linkActivated(IHyperlinkSegment link) {

-		Program.launch(link.getText());

-	}

-	

-	public void linkEntered(IHyperlinkSegment link) {

-		setDescription(link.getText());

-		super.linkEntered(link);

-	}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/HyperlinkAction.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/HyperlinkAction.java
deleted file mode 100644
index 3b11a68..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/HyperlinkAction.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

-

-import org.eclipse.jface.action.IStatusLineManager;

-

-/**

- * @version 	1.0

- * @author

- */

-public class HyperlinkAction {

-	IStatusLineManager manager;

-	private String description;

-	

-	public HyperlinkAction() {

-	}

-	

-	public void linkActivated(final IHyperlinkSegment link) {

-	}

-	

-	public void linkEntered(IHyperlinkSegment link) {

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

-			manager.setMessage(description);

-		}

-	}

-

-	public void linkExited(IHyperlinkSegment link) {

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

-			manager.setMessage(null);

-		}

-	}

-	

-	public void setStatusLineManager(IStatusLineManager manager) {

-		this.manager = manager;

-	}

-	

-	public String getDescription() {

-		return description;

-	}

-	public void setDescription(String description) {

-		this.description = description;

-	}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/HyperlinkSegment.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/HyperlinkSegment.java
deleted file mode 100644
index 2c41587..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/HyperlinkSegment.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

-

-import java.util.Hashtable;

-import org.eclipse.update.ui.forms.internal.*;

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

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

-

-/**

- * @version 	1.0

- * @author

- */

-public class HyperlinkSegment

-	extends TextSegment

-	implements IHyperlinkSegment {

-	private String actionId;

-	private String arg;

-	private HyperlinkSettings settings;

-	

-	public HyperlinkSegment(String text, HyperlinkSettings settings, String fontId) {

-		super(text, fontId);

-		this.settings = settings;

-		underline = settings.getHyperlinkUnderlineMode()==HyperlinkSettings.UNDERLINE_ALWAYS;

-	}

-	

-	/*

-	 * @see IHyperlinkSegment#getListener(Hashtable)

-	 */

-	public HyperlinkAction getAction(Hashtable objectTable) {

-		if (actionId==null) return null;

-		Object obj = objectTable.get(actionId);

-		if (obj==null) return null;

-		if (obj instanceof HyperlinkAction) return (HyperlinkAction)obj;

-		return null;

-	}

-	

-	/*

-	 * @see IObjectReference#getObjectId()

-	 */

-	public String getObjectId() {

-		return actionId;

-	}

-	

-	void setActionId(String id) {

-		this.actionId = id;

-	}

-	public void paint(GC gc, int width, Locator locator, Hashtable objectTable, boolean selected) {

-		setColor(settings.getForeground());

-		super.paint(gc, width, locator, objectTable, selected);

-	}

-	

-	public void repaint(GC gc, boolean hover) {

-		FontMetrics fm = gc.getFontMetrics();

-		int lineHeight = fm.getHeight();

-		int descent = fm.getDescent();

-		boolean rolloverMode = settings.getHyperlinkUnderlineMode()==HyperlinkSettings.UNDERLINE_ROLLOVER;

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

-			AreaRectangle areaRectangle = (AreaRectangle)areaRectangles.get(i);

-			Rectangle rect = areaRectangle.rect;

-			String text = areaRectangle.getText();

-			Point extent = gc.textExtent(text);

-			int textX = rect.x + 1;

-			gc.drawString(text, textX, rect.y, true);

-			if (underline || hover || rolloverMode) {

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

-				Color saved=null;

-				if (rolloverMode && !hover) {

-					saved = gc.getForeground();

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

-				}

-				gc.drawLine(textX, lineY, textX+extent.x, lineY);

-				if (saved!=null)

-					gc.setForeground(saved);

-			}

-		}

-	}

-	/**

-	 * @return

-	 */

-	public String getArg() {

-		return arg;

-	}

-

-	/**

-	 * @param string

-	 */

-	public void setArg(String string) {

-		arg = string;

-	}

-

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IBulletParagraph.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IBulletParagraph.java
deleted file mode 100644
index 55f3383..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IBulletParagraph.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-
-package org.eclipse.update.ui.forms.internal.engine;
-
-import org.eclipse.swt.graphics.GC;
-import java.util.Hashtable;
-
-public interface IBulletParagraph extends IParagraph {
-	int CIRCLE = 0;
-	int TEXT = 1;
-	int IMAGE = 2;
-	public int getBulletStyle();
-	public String getBulletText();
-
-	public void paintBullet(GC gc, Locator loc, int lineHeight, Hashtable objectTable);
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IHyperlinkSegment.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IHyperlinkSegment.java
deleted file mode 100644
index ea5b58a..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IHyperlinkSegment.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

-

-import java.util.Hashtable;

-

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

-

-/**

- * @version 	1.0

- * @author

- */

-public interface IHyperlinkSegment extends ITextSegment, IObjectReference {

-	HyperlinkAction getAction(Hashtable objectTable);

-	

-	boolean contains(int x, int y);

-	

-	String getArg();

-	

-	public void repaint(GC gc, boolean hover);

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IImageSegment.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IImageSegment.java
deleted file mode 100644
index 1e9bd56..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IImageSegment.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

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

-import java.util.Hashtable;

-

-/**

- * @version 	1.0

- * @author

- */

-public interface IImageSegment extends IParagraphSegment, IObjectReference {

-	public static final int TOP = 1;

-	public static final int MIDDLE = 2;

-	public static final int BOTTOM = 3;

-	

-	public int getVerticalAlignment();

-

-	Image getImage(Hashtable objectTable);

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IObjectReference.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IObjectReference.java
deleted file mode 100644
index f12a7eb..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IObjectReference.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

-

-/**

- * @version 	1.0

- * @author

- */

-public interface IObjectReference {

-	public String getObjectId();

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IParagraph.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IParagraph.java
deleted file mode 100644
index fb336eb..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IParagraph.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

-

-

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

-import java.util.Hashtable;

-

-/**

- * @version 	1.0

- * @author

- */

-public interface IParagraph {

-	public int getIndent();

-	public IParagraphSegment [] getSegments();

-	public void addSegment(IParagraphSegment segment);

-	public boolean getAddVerticalSpace();

-	public ITextSegment findSegmentAt(int x, int y);

-	public void paint(GC gc, int width, Locator loc, int lineHeight, Hashtable objectTable, IHyperlinkSegment selectedLink);

-	public String getAccessibleText();

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IParagraphSegment.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IParagraphSegment.java
deleted file mode 100644
index 9217105..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/IParagraphSegment.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

-

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

-import java.util.Hashtable;

-

-/**

- * @version 	1.0

- * @author

- */

-public interface IParagraphSegment {

-	

-	public void advanceLocator(GC gc, int wHint, Locator loc, Hashtable objectTable);

-	

-	public void paint(GC gc, int width, Locator loc, Hashtable objectTable, boolean selected);

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/ITextModel.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/ITextModel.java
deleted file mode 100644
index 4071ad2..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/ITextModel.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

-

-import org.eclipse.core.runtime.CoreException;

-

-/**

- * @version 	1.0

- * @author

- */

-public interface ITextModel {

-	IParagraph [] getParagraphs();

-	public void parseTaggedText(String taggedText, boolean expandURLs) throws CoreException;

-	public void parseRegularText(String regularText, boolean expandURLs) throws CoreException;

-	public void dispose();

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/ITextSegment.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/ITextSegment.java
deleted file mode 100644
index 47e5fb0..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/ITextSegment.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

-

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

-

-/**

- * @version 	1.0

- * @author

- */

-public interface ITextSegment extends IParagraphSegment {

-	String getText();

-	Color getColor();

-	Font getFont();

-	boolean isWordWrapAllowed();

-	boolean isSelectable();

-	boolean contains(int x, int y);

-	Rectangle getBounds();

-	void paintFocus(GC gc, Color bg, Color fg, boolean selected);

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/ImageSegment.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/ImageSegment.java
deleted file mode 100644
index 4c84cb9..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/ImageSegment.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

-

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

-import java.util.Hashtable;

-import org.eclipse.swt.SWT;

-

-/**

- * @version 	1.0

- * @author

- */

-public class ImageSegment extends ParagraphSegment implements IImageSegment {

-	private int alignment = BOTTOM;

-	private String imageId;

-	

-	public int getVerticalAlignment() {

-		return alignment;

-	}

-	

-	void setVerticalAlignment(int alignment) {

-		this.alignment = alignment;

-	}

-	

-	public Image getImage(Hashtable objectTable) {

-		if (imageId==null) return null;

-		Object obj = objectTable.get(imageId);

-		if (obj==null) return null;

-		if (obj instanceof Image) return (Image)obj;

-		return null;

-	}

-	

-	public String getObjectId() {

-		return imageId;

-	}

-	

-	void setObjectId(String imageId) {

-		this.imageId = imageId;

-	}

-	

-	public void advanceLocator(GC gc, int wHint, Locator loc, Hashtable objectTable) {

-		Image image = getImage(objectTable);

-		int iwidth = 0;

-		int iheight = 0;

-		if (image!=null) {

-			Rectangle rect = image.getBounds();

-			iwidth = rect.width;

-			iheight = rect.height;

-		}

-		if (wHint != SWT.DEFAULT && loc.x + iwidth > wHint) {

-			// new line

-			loc.x = loc.indent + iwidth;

-			loc.width = loc.x;

-			loc.y += loc.rowHeight;

-			loc.rowHeight = iheight;

-		}

-		else {

-			loc.x += iwidth;

-			loc.rowHeight = Math.max(loc.rowHeight, iheight);

-		}

-	}

-

-	public void paint(GC gc, int width, Locator loc, Hashtable objectTable, boolean selected) {

-		Image image = getImage(objectTable);

-		int iwidth = 0;

-		int iheight = 0;

-		if (image!=null) {

-			Rectangle rect = image.getBounds();

-			iwidth = rect.width;

-			iheight = rect.height;

-		}

-		else return;

-		loc.width = iwidth;

-		loc.height = iheight;

-		

-		int ix = loc.x;

-		int iy = loc.y;

-		

-		if (ix + iwidth > width) {

-			// new row

-			ix = loc.indent + loc.marginWidth;

-			iy += loc.rowHeight;

-			loc.rowHeight = 0;

-		}

-		

-		gc.drawImage(image, ix, iy);

-		loc.x = ix + iwidth;

-		loc.y = iy;

-		loc.rowHeight = Math.max(loc.rowHeight, iheight);

-	}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/Locator.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/Locator.java
deleted file mode 100644
index 350154b..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/Locator.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

-

-/**

- * @version 	1.0

- * @author

- */

-public class Locator { 

-	public int indent;

-	public int x, y;

-	public int width, height;

-	public int rowHeight;

-	public int marginWidth;

-	public int marginHeight;

-	

-	public void newLine() {

-		resetCaret();

-		y += rowHeight;

-		rowHeight = 0;

-	}

-	

-	public void resetCaret() {

-		x = marginWidth + indent;

-	}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/Paragraph.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/Paragraph.java
deleted file mode 100644
index a9a4352..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/Paragraph.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

-

-import java.io.*;

-import java.util.*;

-

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

-import org.eclipse.update.ui.forms.internal.HyperlinkSettings;

-

-/**

- * @version 	1.0

- * @author

- */

-public class Paragraph implements IParagraph {

-	public static final String HTTP = "http://";

-	private Vector segments;

-	private boolean addVerticalSpace = true;

-

-	public Paragraph(boolean addVerticalSpace) {

-		this.addVerticalSpace = addVerticalSpace;

-	}

-

-	public int getIndent() {

-		return 0;

-	}

-

-	public boolean getAddVerticalSpace() {

-		return addVerticalSpace;

-	}

-

-	/*

-	 * @see IParagraph#getSegments()

-	 */

-	public IParagraphSegment[] getSegments() {

-		if (segments == null)

-			return new IParagraphSegment[0];

-		return (IParagraphSegment[]) segments.toArray(

-			new IParagraphSegment[segments.size()]);

-	}

-

-	public void addSegment(IParagraphSegment segment) {

-		if (segments == null)

-			segments = new Vector();

-		segments.add(segment);

-	}

-

-	public void parseRegularText(

-		String text,

-		boolean expandURLs,

-		HyperlinkSettings settings,

-		String fontId) {

-		if (text.length() == 0)

-			return;

-		if (expandURLs) {

-			int loc = text.indexOf(HTTP);

-

-			if (loc == -1)

-				addSegment(new TextSegment(text, fontId));

-			else {

-				int textLoc = 0;

-				while (loc != -1) {

-					addSegment(new TextSegment(text.substring(textLoc, loc), fontId));

-					boolean added = false;

-					for (textLoc = loc; textLoc < text.length(); textLoc++) {

-						char c = text.charAt(textLoc);

-						if (Character.isSpaceChar(c)) {

-							addHyperlinkSegment(text.substring(loc, textLoc), settings, fontId);

-							added = true;

-							break;

-						}

-					}

-					if (!added) {

-						// there was no space - just end of text

-						addHyperlinkSegment(text.substring(loc), settings, fontId);

-						break;

-					}

-					loc = text.indexOf(HTTP, textLoc);

-				}

-				if (textLoc < text.length()) {

-					addSegment(new TextSegment(text.substring(textLoc), fontId));

-				}

-			}

-		} else {

-			addSegment(new TextSegment(text, fontId));

-		}

-	}

-

-	private void addHyperlinkSegment(

-		String text,

-		HyperlinkSettings settings,

-		String fontId) {

-		HyperlinkSegment hs = new HyperlinkSegment(text, settings, fontId);

-		hs.setWordWrapAllowed(false);

-		hs.setActionId(FormEngine.URL_HANDLER_ID);

-		addSegment(hs);

-	}

-

-	public void paint(

-		GC gc,

-		int width,

-		Locator loc,

-		int lineHeight,

-		Hashtable objectTable,

-		IHyperlinkSegment selectedLink) {

-		IParagraphSegment [] segments = getSegments();

-		if (segments.length > 0) {

-			if (segments[0] instanceof ITextSegment

-				&& ((ITextSegment) segments[0]).isSelectable())

-				loc.x += 1;

-			for (int j = 0; j < segments.length; j++) {

-				IParagraphSegment segment = segments[j];

-				boolean doSelect = false;

-				if (selectedLink != null && segment.equals(selectedLink))

-					doSelect = true;

-				segment.paint(gc, width, loc, objectTable, doSelect);

-			}

-			loc.y += loc.rowHeight;

-		} else {

-			loc.y += lineHeight;

-		}

-	}

-	public String getAccessibleText() {

-		IParagraphSegment [] segments = getSegments();

-		StringWriter swriter = new StringWriter();

-		PrintWriter writer = new PrintWriter(swriter);

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

-			IParagraphSegment segment = segments[i];

-			if (segment instanceof ITextSegment) {

-				String text = ((ITextSegment)segment).getText();

-				writer.print(text);

-			}

-		}

-		writer.println();

-		swriter.flush();

-		return swriter.toString();

-	}

-	public ITextSegment findSegmentAt(int x, int y) {

-		if (segments!=null) {

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

-				IParagraphSegment segment = (IParagraphSegment)segments.get(i);

-				if (segment instanceof ITextSegment) {

-					ITextSegment textSegment = (ITextSegment)segment;

-					if (textSegment.contains(x, y))

-						return textSegment;

-				}

-			}

-		}

-		return null;

-	}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/ParagraphSegment.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/ParagraphSegment.java
deleted file mode 100644
index 7d16aac..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/ParagraphSegment.java
+++ /dev/null
@@ -1,19 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

-

-/**

- * @version 	1.0

- * @author

- */

-public abstract class ParagraphSegment implements IParagraphSegment {

-

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/TextModel.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/TextModel.java
deleted file mode 100644
index 0ec9682..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/TextModel.java
+++ /dev/null
@@ -1,457 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

-

-import java.io.*;

-import java.util.*;

-import javax.xml.parsers.*;

-

-import org.eclipse.core.runtime.*;

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

-import org.eclipse.update.ui.forms.internal.*;

-import org.w3c.dom.*;

-import org.xml.sax.*;

-

-/**

- * @version 	1.0

- * @author

- */

-public class TextModel implements ITextModel {

-	private static final DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();

-

-	Vector paragraphs;

-	IHyperlinkListener urlListener;

-	IHyperlinkSegment[] hyperlinks;

-	int selectedLinkIndex = -1;

-	HyperlinkSettings hyperlinkSettings;

-	

-	public TextModel() {

-		reset();

-	}

-

-	class LocalHyperlinkSettings extends HyperlinkSettings {

-	}

-

-	/*

-	 * @see ITextModel#getParagraphs()

-	 */

-	public IParagraph[] getParagraphs() {

-		if (paragraphs == null)

-			return new IParagraph[0];

-		return (IParagraph[]) paragraphs.toArray(

-			new IParagraph[paragraphs.size()]);

-	}

-	

-	public String getAccessibleText() {

-		if (paragraphs == null)

-			return "";

-		StringBuffer sbuf = new StringBuffer();

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

-			IParagraph paragraph  = (IParagraph)paragraphs.get(i);

-			String text = paragraph.getAccessibleText();

-			sbuf.append(text);

-		}

-		return sbuf.toString();

-	}

-

-	/*

-	 * @see ITextModel#parse(String)

-	 */

-	public void parseTaggedText(String taggedText, boolean expandURLs)

-		throws CoreException {

-		if (taggedText==null) {

-			reset();

-			return;

-		}

-		try {

-			InputStream stream =

-				new ByteArrayInputStream(taggedText.getBytes("UTF8"));

-			parseInputStream(stream, expandURLs);

-		} catch (UnsupportedEncodingException e) {

-		}

-	}

-

-	public void parseInputStream(InputStream is, boolean expandURLs)

-		throws CoreException {

-			

-		documentBuilderFactory.setNamespaceAware(true);

-	

-		reset();

-		try {

-			DocumentBuilder parser = documentBuilderFactory.newDocumentBuilder();

-			InputSource source = new InputSource(is);

-			Document doc = parser.parse(source);

-			processDocument(doc, expandURLs);

-		} catch (ParserConfigurationException e) {

-			FormsPlugin.logException(e);

-		} catch (SAXException e) {

-			FormsPlugin.logException(e);

-		} catch (IOException e) {

-			FormsPlugin.logException(e);

-		}

-	}

-

-	private void processDocument(Document doc, boolean expandURLs) {

-		Node root = doc.getDocumentElement();

-		NodeList children = root.getChildNodes();

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

-			Node child = children.item(i);

-			if (child.getNodeType() == Node.TEXT_NODE) {

-				// Make an implicit paragraph

-				String text = child.getNodeValue();

-				if (text != null && !isIgnorableWhiteSpace(text, true)) {

-					Paragraph p = new Paragraph(true);

-					p.parseRegularText(

-						text,

-						expandURLs,

-						getHyperlinkSettings(),

-						null);

-					paragraphs.add(p);

-				}

-			} else if (child.getNodeType() == Node.ELEMENT_NODE) {

-				String tag = child.getNodeName().toLowerCase();

-				if (tag.equals("p")) {

-					IParagraph p = processParagraph(child, expandURLs);

-					if (p != null)

-						paragraphs.add(p);

-				} else if (tag.equals("li")) {

-					IParagraph p = processListItem(child, expandURLs);

-					if (p != null)

-						paragraphs.add(p);

-				}

-			}

-		}

-	}

-	private IParagraph processParagraph(Node paragraph, boolean expandURLs) {

-		NodeList children = paragraph.getChildNodes();

-		NamedNodeMap atts = paragraph.getAttributes();

-		Node addSpaceAtt = atts.getNamedItem("addVerticalSpace");

-		boolean addSpace = true;

-

-		if (addSpaceAtt != null) {

-			String value = addSpaceAtt.getNodeValue();

-			addSpace = value.equalsIgnoreCase("true");

-		}

-		Paragraph p = new Paragraph(addSpace);

-

-		processSegments(p, children, expandURLs);

-		return p;

-	}

-	private IParagraph processListItem(Node listItem, boolean expandURLs) {

-		NodeList children = listItem.getChildNodes();

-		NamedNodeMap atts = listItem.getAttributes();

-		Node addSpaceAtt = atts.getNamedItem("addVerticalSpace");

-		Node styleAtt = atts.getNamedItem("style");

-		Node valueAtt = atts.getNamedItem("value");

-		Node indentAtt = atts.getNamedItem("indent");

-		int style = IBulletParagraph.CIRCLE;

-		int indent = -1;

-		String text = null;

-		boolean addSpace = true;

-

-		if (addSpaceAtt != null) {

-			String value = addSpaceAtt.getNodeValue();

-			addSpace = value.equalsIgnoreCase("true");

-		}

-		if (styleAtt != null) {

-			String value = styleAtt.getNodeValue();

-			if (value.equalsIgnoreCase("text")) {

-				style = IBulletParagraph.TEXT;

-			} else if (value.equalsIgnoreCase("image")) {

-				style = IBulletParagraph.IMAGE;

-			}

-		}

-		if (valueAtt != null) {

-			text = valueAtt.getNodeValue();

-		}

-		if (indentAtt != null) {

-			String value = indentAtt.getNodeValue();

-			try {

-				indent = Integer.parseInt(value);

-			} catch (NumberFormatException e) {

-			}

-		}

-

-		BulletParagraph p = new BulletParagraph(addSpace);

-		p.setIndent(indent);

-		p.setBulletStyle(style);

-		p.setBulletText(text);

-

-		processSegments(p, children, expandURLs);

-		return p;

-	}

-

-	private void processSegments(

-		Paragraph p,

-		NodeList children,

-		boolean expandURLs) {

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

-			Node child = children.item(i);

-			IParagraphSegment segment = null;

-

-			if (child.getNodeType() == Node.TEXT_NODE) {

-				String value = child.getNodeValue();

-

-				if (value != null && !isIgnorableWhiteSpace(value, false)) {

-					p.parseRegularText(

-						value,

-						expandURLs,

-						getHyperlinkSettings(),

-						null);

-				}

-			} else if (child.getNodeType() == Node.ELEMENT_NODE) {

-				String name = child.getNodeName();

-				if (name.equalsIgnoreCase("img")) {

-					segment = processImageSegment(child);

-				} else if (name.equalsIgnoreCase("a")) {

-					segment =

-						processHyperlinkSegment(child, getHyperlinkSettings());

-				} else if (name.equalsIgnoreCase("text")) {

-					processTextSegment(p, expandURLs, child);

-				} else if (name.equalsIgnoreCase("b")) {

-					String text = getNodeText(child).trim();

-					String fontId = JFaceResources.BANNER_FONT;

-					p.parseRegularText(

-						text,

-						expandURLs,

-						getHyperlinkSettings(),

-						fontId);

-				}

-			}

-			if (segment != null) {

-				p.addSegment(segment);

-			}

-		}

-	}

-

-	private boolean isIgnorableWhiteSpace(String text, boolean ignoreSpaces) {

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

-			char c = text.charAt(i);

-			if (ignoreSpaces && c == ' ')

-				continue;

-			if (c == '\n' || c == '\r' || c == '\f')

-				continue;

-			return false;

-		}

-		return true;

-	}

-

-	private IParagraphSegment processImageSegment(Node image) {

-		ImageSegment segment = new ImageSegment();

-		NamedNodeMap atts = image.getAttributes();

-		Node id = atts.getNamedItem("href");

-		Node align = atts.getNamedItem("align");

-		if (id != null) {

-			String value = id.getNodeValue();

-			segment.setObjectId(value);

-		}

-		if (align != null) {

-			String value = align.getNodeValue().toLowerCase();

-			if (value.equals("top"))

-				segment.setVerticalAlignment(ImageSegment.TOP);

-			else if (value.equals("middle"))

-				segment.setVerticalAlignment(ImageSegment.MIDDLE);

-			else if (value.equals("bottom"))

-				segment.setVerticalAlignment(ImageSegment.BOTTOM);

-		}

-		return segment;

-	}

-

-	private String getNodeText(Node node) {

-		NodeList children = node.getChildNodes();

-		String text = "";

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

-			Node child = children.item(i);

-			if (child.getNodeType() == Node.TEXT_NODE) {

-				text += child.getNodeValue();

-			}

-		}

-		return text;

-	}

-

-	private IParagraphSegment processHyperlinkSegment(

-		Node link,

-		HyperlinkSettings settings) {

-		String text = getNodeText(link);

-		HyperlinkSegment segment = new HyperlinkSegment(text, settings, null);

-		NamedNodeMap atts = link.getAttributes();

-		Node href = atts.getNamedItem("href");

-		if (href != null) {

-			String value = href.getNodeValue();

-			segment.setActionId(value);

-		}

-		Node arg = atts.getNamedItem("arg");

-		if (arg != null) {

-			String value = arg.getNodeValue();

-			segment.setArg(value);

-		}

-		return segment;

-	}

-

-	private void processTextSegment(

-		Paragraph p,

-		boolean expandURLs,

-		Node textNode) {

-		String text = getNodeText(textNode).trim();

-

-		NamedNodeMap atts = textNode.getAttributes();

-		Node font = atts.getNamedItem("font");

-		String fontId = null;

-		if (font != null) {

-			fontId = font.getNodeValue();

-		}

-		p.parseRegularText(text, expandURLs, getHyperlinkSettings(), fontId);

-	}

-

-	public void parseRegularText(String regularText, boolean convertURLs)

-		throws CoreException {

-		reset();

-		

-		if (regularText==null) return;

-

-		Paragraph p = new Paragraph(true);

-		paragraphs.add(p);

-		int pstart = 0;

-

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

-			char c = regularText.charAt(i);

-			if (p == null) {

-				p = new Paragraph(true);

-				paragraphs.add(p);

-			}

-			if (c == '\n') {

-				String text = regularText.substring(pstart, i);

-				pstart = i + 1;

-				p.parseRegularText(

-					text,

-					convertURLs,

-					getHyperlinkSettings(),

-					null);

-				p = null;

-			}

-		}

-		if (p != null) {

-			// no new line

-			String text = regularText.substring(pstart);

-			p.parseRegularText(text, convertURLs, getHyperlinkSettings(), null);

-		}

-	}

-

-	public HyperlinkSettings getHyperlinkSettings() {

-		if (hyperlinkSettings == null) {

-			hyperlinkSettings = new LocalHyperlinkSettings();

-		}

-		return hyperlinkSettings;

-	}

-

-	public void setHyperlinkSettings(HyperlinkSettings settings) {

-		this.hyperlinkSettings = settings;

-	}

-

-	public void setURLListener(IHyperlinkListener urlListener) {

-		this.urlListener = urlListener;

-	}

-

-	private void reset() {

-		if (paragraphs == null)

-			paragraphs = new Vector();

-		paragraphs.clear();

-		selectedLinkIndex = -1;

-		hyperlinks = null;

-	}

-

-	IHyperlinkSegment[] getHyperlinks() {

-		if (hyperlinks != null || paragraphs == null)

-			return hyperlinks;

-		Vector result = new Vector();

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

-			IParagraph p = (IParagraph) paragraphs.get(i);

-			IParagraphSegment[] segments = p.getSegments();

-			for (int j = 0; j < segments.length; j++) {

-				if (segments[j] instanceof IHyperlinkSegment)

-					result.add(segments[j]);

-			}

-		}

-		hyperlinks =

-			(IHyperlinkSegment[]) result.toArray(

-				new IHyperlinkSegment[result.size()]);

-		return hyperlinks;

-	}

-

-	public IHyperlinkSegment findHyperlinkAt(int x, int y) {

-		IHyperlinkSegment[] links = getHyperlinks();

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

-			if (links[i].contains(x, y))

-				return links[i];

-		}

-		return null;

-	}

-	public ITextSegment findSegmentAt(int x, int y) {

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

-			IParagraph p = (IParagraph) paragraphs.get(i);

-			ITextSegment segment = p.findSegmentAt(x, y);

-			if (segment != null)

-				return segment;

-		}

-		return null;

-	}

-

-	public IHyperlinkSegment getSelectedLink() {

-		if (selectedLinkIndex == -1)

-			return null;

-		return hyperlinks[selectedLinkIndex];

-	}

-

-	public boolean traverseLinks(boolean next) {

-		IHyperlinkSegment[] links = getHyperlinks();

-		if (links == null)

-			return false;

-		int size = links.length;

-		if (next) {

-			selectedLinkIndex++;

-		} else

-			selectedLinkIndex--;

-

-		if (selectedLinkIndex < 0 || selectedLinkIndex > size - 1) {

-			selectedLinkIndex = -1;

-		}

-		return selectedLinkIndex != -1;

-	}

-

-	public void selectLink(IHyperlinkSegment link) {

-		if (link == null)

-			selectedLinkIndex = -1;

-		else {

-			IHyperlinkSegment[] links = getHyperlinks();

-			selectedLinkIndex = -1;

-			if (links == null)

-				return;

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

-				if (links[i].equals(link)) {

-					selectedLinkIndex = i;

-					break;

-				}

-			}

-		}

-	}

-

-	public boolean hasFocusSegments() {

-		IHyperlinkSegment[] links = getHyperlinks();

-		if (links.length > 0)

-			return true;

-		return false;

-	}

-

-	public void dispose() {

-		if (hyperlinkSettings instanceof LocalHyperlinkSettings)

-			hyperlinkSettings.dispose();

-	}

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/TextSegment.java b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/TextSegment.java
deleted file mode 100644
index 49ec5d1..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/engine/TextSegment.java
+++ /dev/null
@@ -1,368 +0,0 @@
-/*******************************************************************************

- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation

- *******************************************************************************/

-package org.eclipse.update.ui.forms.internal.engine;

-

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

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

-import java.util.Hashtable;

-import org.eclipse.swt.SWT;

-import java.text.BreakIterator;

-import java.util.Vector;

-

-/**

- * @version 	1.0

- * @author

- */

-public class TextSegment extends ParagraphSegment implements ITextSegment {

-	private Color color;

-	private String fontId;

-	private String text;

-	protected boolean underline;

-	private boolean wrapAllowed = true;

-	protected Vector areaRectangles = new Vector();

-	

-	class AreaRectangle {

-		Rectangle rect;

-		int from, to;

-		public AreaRectangle(Rectangle rect, int from, int to) {

-			this.rect = rect;

-			this.from = from;

-			this.to = to;

-		}

-		public boolean contains(int x, int y) {

-			return rect.contains(x, y);

-		}

-		public String getText() {

-			if (from==0 && to== -1)

-				return TextSegment.this.getText();

-			if (from >0 && to == -1)

-				return TextSegment.this.getText().substring(from);

-			return TextSegment.this.getText().substring(from, to);

-		}

-	}

-	

-	public TextSegment(String text, String fontId) {

-		this.text = cleanup(text);

-		this.fontId = fontId;

-	}

-

-	private String cleanup(String text) {

-		StringBuffer buf = new StringBuffer();

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

-			char c = text.charAt(i);

-			if (c == '\n' || c == '\r' || c=='\f') {

-				if (i > 0)

-					buf.append(' ');

-			} else

-				buf.append(c);

-		}

-		return buf.toString();

-	}

-

-	public void setWordWrapAllowed(boolean value) {

-		wrapAllowed = value;

-	}

-

-	public boolean isWordWrapAllowed() {

-		return wrapAllowed;

-	}

-	

-	public boolean isSelectable() {

-		return false;

-	}

-

-	public Color getColor() {

-		return color;

-	}

-

-	public Font getFont() {

-		if (fontId == null)

-			return JFaceResources.getDefaultFont();

-		else

-			return JFaceResources.getFontRegistry().get(fontId);

-	}

-

-	public String getText() {

-		return text;

-	}

-

-	void setText(String text) {

-		this.text = cleanup(text);

-	}

-

-	void setColor(Color color) {

-		this.color = color;

-	}

-

-	void setFontId(String fontId) {

-		this.fontId = fontId;

-	}

-

-	public boolean contains(int x, int y) {

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

-			AreaRectangle ar = (AreaRectangle) areaRectangles.get(i);

-			if (ar.contains(x, y))

-				return true;

-		}

-		return false;

-	}

-	

-	public Rectangle getBounds() {

-		int x=0, y=0;

-		int width = 0, height = 0;

-		

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

-			AreaRectangle ar = (AreaRectangle)areaRectangles.get(i);

-			if (i==0) y = ar.rect.y;

-			x = Math.min(ar.rect.x, x);

-			width = Math.max(ar.rect.width, width);

-			height += ar.rect.height;

-		}

-		return new Rectangle(x, y, width, height);

-	}

-

-	public void advanceLocator(

-		GC gc,

-		int wHint,

-		Locator locator,

-		Hashtable objectTable) {

-		Font oldFont = null;

-		if (fontId != null) {

-			oldFont = gc.getFont();

-			gc.setFont(getFont());

-		}

-		FontMetrics fm = gc.getFontMetrics();

-		int lineHeight = fm.getHeight();

-

-		if (wHint == SWT.DEFAULT || !wrapAllowed) {

-			Point extent = gc.textExtent(text);

-

-			if (locator.x + extent.x > wHint) {

-				// new line

-				locator.x = isSelectable()?locator.indent+1:locator.indent;

-				locator.y += locator.rowHeight;

-				locator.rowHeight = 0;

-			}

-			int width = extent.x;

-			if (isSelectable()) width+=2;

-			locator.x += width;

-			locator.width = width;

-			locator.height = extent.y;

-			locator.rowHeight = Math.max(locator.rowHeight, extent.y);

-			return;

-		}

-

-		BreakIterator wb = BreakIterator.getLineInstance();

-		wb.setText(text);

-

-		int saved = 0;

-		int last = 0;

-

-		int width = 0;

-

-		Point lastExtent = null;

-

-		for (int loc = wb.first(); loc != BreakIterator.DONE; loc = wb.next()) {

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

-			Point extent = gc.textExtent(word);

-

-			if (locator.x + extent.x > wHint) {

-				// overflow

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

-				if (lastExtent==null)

-				   lastExtent = gc.textExtent(savedWord);

-				int lineWidth = locator.x + lastExtent.x;

-				if (isSelectable()) lineWidth+=2;

-

-				saved = last;

-				locator.rowHeight = Math.max(locator.rowHeight, lastExtent.y);

-				locator.x = isSelectable()?locator.indent+1:locator.indent;

-				locator.y += locator.rowHeight;

-				locator.rowHeight = 0;

-				width = Math.max(width, lineWidth);

-			}

-			last = loc;

-			lastExtent = extent;

-		}

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

-		Point extent = gc.textExtent(lastString);

-		int lineWidth = extent.x;

-		if (isSelectable()) lineWidth += 2;

-		locator.x += lineWidth;

-		locator.width = width;

-		locator.height = lineHeight;

-		locator.rowHeight = Math.max(locator.rowHeight, extent.y);

-		if (oldFont != null) {

-			gc.setFont(oldFont);

-		}

-	}

-	

-	public void paint(

-		GC gc,

-		int width,

-		Locator locator,

-		Hashtable objectTable,

-		boolean selected) {

-		Font oldFont = null;

-		Color oldColor = null;

-

-		areaRectangles.clear();

-

-		if (fontId != null) {

-			oldFont = gc.getFont();

-			gc.setFont(getFont());

-		}

-		if (color != null) {

-			oldColor = gc.getForeground();

-			gc.setForeground(color);

-		}

-		FontMetrics fm = gc.getFontMetrics();

-		int lineHeight = fm.getHeight();

-		int descent = fm.getDescent();

-

-		if (!wrapAllowed) {

-			Point extent = gc.textExtent(text);

-			int ewidth = extent.x;

-			if (isSelectable()) ewidth += 2;

-

-			if (locator.x + ewidth > width) {

-				// new line

-				locator.resetCaret();

-				if (isSelectable()) locator.x += 1;

-				locator.y += locator.rowHeight;

-				locator.rowHeight = 0;

-			}

-			gc.drawString(text, locator.x, locator.y);

-			if (underline) {

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

-				gc.drawLine(locator.x, lineY, locator.x + extent.x, lineY);

-			}

-			Rectangle br =

-				new Rectangle(locator.x - 1, locator.y, extent.x + 2, lineHeight - descent + 3);

-			areaRectangles.add(new AreaRectangle(br, 0, -1));

-			if (selected) {

-				if (color != null)

-					gc.setForeground(oldColor);

-				gc.drawFocus(br.x, br.y, br.width, br.height);

-			}

-

-			locator.x += ewidth;

-			locator.width = ewidth;

-			locator.height = lineHeight;

-			locator.rowHeight = Math.max(locator.rowHeight, extent.y);

-			if (oldFont != null) {

-				gc.setFont(oldFont);

-			}

-			if (oldColor != null) {

-				gc.setForeground(oldColor);

-			}

-			return;

-		}

-

-		BreakIterator wb = BreakIterator.getLineInstance();

-		wb.setText(text);

-

-		int saved = 0;

-		int last = 0;

-

-		for (int loc = wb.first(); loc != BreakIterator.DONE; loc = wb.next()) {

-			if (loc == 0)

-				continue;

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

-			Point extent = gc.textExtent(word);

-			int ewidth = extent.x;

-			if (isSelectable()) ewidth += 2;

-

-			if (locator.x + ewidth > width) {

-				// overflow

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

-				gc.drawString(prevLine, locator.x, locator.y, true);

-				Point prevExtent = gc.textExtent(prevLine);

-				int prevWidth = prevExtent.x;

-				if (isSelectable()) prevWidth += 2;

-

-				if (underline) {

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

-					gc.drawLine(locator.x, lineY, locator.x + prevWidth, lineY);

-				}

-				Rectangle br =

-					new Rectangle(

-						locator.x - 1,

-						locator.y,

-						prevExtent.x + 2,

-						lineHeight - descent + 3);

-				if (selected) {

-					if (color != null)

-						gc.setForeground(oldColor);

-					gc.drawFocus(br.x, br.y, br.width, br.height);

-					if (color != null)

-						gc.setForeground(color);

-				}

-				areaRectangles.add(new AreaRectangle(br, saved, last));

-				

-				locator.rowHeight = Math.max(locator.rowHeight, prevExtent.y);

-				locator.resetCaret();

-				if (isSelectable()) locator.x +=1;

-				locator.y += locator.rowHeight;

-				locator.rowHeight = 0;

-				saved = last;

-			}

-			last = loc;

-		}

-		// paint the last line

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

-		gc.drawString(lastLine, locator.x, locator.y, true);

-		Point lastExtent = gc.textExtent(lastLine);

-		int lastWidth = lastExtent.x;

-		if (isSelectable()) lastWidth += 2;

-		Rectangle br =

-			new Rectangle(

-				locator.x - 1,

-				locator.y,

-				lastExtent.x + 2,

-				lineHeight - descent + 3);

-		areaRectangles.add(new AreaRectangle(br, saved, last));

-		if (underline) {

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

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

-		}

-		if (selected) {

-			if (color != null)

-				gc.setForeground(oldColor);

-			gc.drawFocus(br.x, br.y, br.width, br.height);

-		}

-		locator.x += lastWidth;

-		locator.rowHeight = Math.max(locator.rowHeight, lastExtent.y);

-		if (oldFont != null) {

-			gc.setFont(oldFont);

-		}

-		if (oldColor != null) {

-			gc.setForeground(oldColor);

-		}

-	}

-	

-	public void paintFocus(GC gc, Color bg, Color fg, boolean selected) {

-		if (areaRectangles==null) return;

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

-			AreaRectangle areaRectangle = (AreaRectangle)areaRectangles.get(i);

-			Rectangle br = areaRectangle.rect;

-			if (selected) {

-				gc.setBackground(bg);

-				gc.setForeground(fg);

-				gc.drawFocus(br.x, br.y, br.width, br.height);

-			}

-			else {

-				gc.setForeground(bg);

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

-			}

-		}

-	}	

-}

diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/image1.gif b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/image1.gif
deleted file mode 100644
index c5c94ee..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/image1.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/index.xml b/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/index.xml
deleted file mode 100644
index 4732f87..0000000
--- a/update/org.eclipse.update.ui.forms/src/org/eclipse/update/ui/forms/internal/index.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<form>

-<p>

-To check for updates for features you have installed, 

-go to the <a href="action1">My Eclipse 1</a> and select 

-<b>Available Updates</b> folder. <b>Search page</b> will 

-be shown allowing you to initiate and customize the search. 

-Now we <b>will</b> add an 

-<img href="image1"/> 

-image here. Just

- to show how wrapping should apply to images when they are 

- larger than the regular text.

-</p>

-<li style="text" value="1.">To check for updates for features you have installed, 

-go to the <a href="action2">My Eclipse 2</a> and select 

-<b>Available Updates</b> folder. <b>Search page</b> will 

-be shown allowing you to initiate and customize the search.</li>

-<li style="text" value="2.">This is the item number 2.</li>

-<li style="text" value="3.">This is the item number 3.</li>

-<li>This is the bullet item.</li>

-<li>This is another bullet item.</li>

-</form>
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.win32/.classpath b/update/org.eclipse.update.ui.win32/.classpath
deleted file mode 100644
index 314d270..0000000
--- a/update/org.eclipse.update.ui.win32/.classpath
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<classpath>

-    <classpathentry kind="src" path="src/"/>

-    <classpathentry kind="src" path="/org.eclipse.core.resources"/>

-    <classpathentry kind="src" path="/org.eclipse.ui"/>

-    <classpathentry kind="src" path="/org.eclipse.update.ui.forms"/>

-    <classpathentry kind="src" path="/org.eclipse.help"/>

-    <classpathentry kind="src" path="/org.eclipse.core.boot"/>

-    <classpathentry kind="src" path="/org.eclipse.core.runtime"/>

-    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>

-    <classpathentry kind="output" path="bin"/>

-</classpath>

diff --git a/update/org.eclipse.update.ui.win32/.cvsignore b/update/org.eclipse.update.ui.win32/.cvsignore
deleted file mode 100644
index ba077a4..0000000
--- a/update/org.eclipse.update.ui.win32/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/update/org.eclipse.update.ui.win32/.project b/update/org.eclipse.update.ui.win32/.project
deleted file mode 100644
index eb41f90..0000000
--- a/update/org.eclipse.update.ui.win32/.project
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<projectDescription>

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

-	<comment></comment>

-	<projects>

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

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

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

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

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

-		<project>org.eclipse.update.ui.forms</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.win32/about.html b/update/org.eclipse.update.ui.win32/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/update/org.eclipse.update.ui.win32/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.win32/build.properties b/update/org.eclipse.update.ui.win32/build.properties
deleted file mode 100644
index a31730b..0000000
--- a/update/org.eclipse.update.ui.win32/build.properties
+++ /dev/null
@@ -1,7 +0,0 @@
-bin.includes = plugin.properties,\
-               icons/,\
-               *.jar,\
-               plugin.xml,\
-               about.html
-src.includes = about.html
-source.updateui32.jar = src/
diff --git a/update/org.eclipse.update.ui.win32/icons/full/clcl16/backward_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/clcl16/backward_nav.gif
deleted file mode 100644
index 740419b..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/clcl16/backward_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/clcl16/forward_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/clcl16/forward_nav.gif
deleted file mode 100644
index 7a1511d..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/clcl16/forward_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/clcl16/go_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/clcl16/go_nav.gif
deleted file mode 100644
index bb20d88..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/clcl16/go_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/clcl16/hierarchicalLayout.gif b/update/org.eclipse.update.ui.win32/icons/full/clcl16/hierarchicalLayout.gif
deleted file mode 100644
index e597c3d..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/clcl16/hierarchicalLayout.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/clcl16/home_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/clcl16/home_nav.gif
deleted file mode 100644
index 949c2db..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/clcl16/home_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/clcl16/refresh_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/clcl16/refresh_nav.gif
deleted file mode 100644
index a063c23..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/clcl16/refresh_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/clcl16/show_unconf.gif b/update/org.eclipse.update.ui.win32/icons/full/clcl16/show_unconf.gif
deleted file mode 100644
index 4c75f55..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/clcl16/show_unconf.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/clcl16/stop_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/clcl16/stop_nav.gif
deleted file mode 100644
index 4eb53ec..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/clcl16/stop_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/cview16/browser.gif b/update/org.eclipse.update.ui.win32/icons/full/cview16/browser.gif
deleted file mode 100644
index fd70277..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/cview16/browser.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/dlcl16/backward_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/dlcl16/backward_nav.gif
deleted file mode 100644
index e2179ad..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/dlcl16/backward_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/dlcl16/forward_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/dlcl16/forward_nav.gif
deleted file mode 100644
index 0c5af08..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/dlcl16/forward_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/dlcl16/go_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/dlcl16/go_nav.gif
deleted file mode 100644
index 472f005..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/dlcl16/go_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/dlcl16/hierarchicalLayout.gif b/update/org.eclipse.update.ui.win32/icons/full/dlcl16/hierarchicalLayout.gif
deleted file mode 100644
index 76f3360..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/dlcl16/hierarchicalLayout.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/dlcl16/home_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/dlcl16/home_nav.gif
deleted file mode 100644
index 3c80080..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/dlcl16/home_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/dlcl16/refresh_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/dlcl16/refresh_nav.gif
deleted file mode 100644
index b2281b4..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/dlcl16/refresh_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/dlcl16/show_unconf.gif b/update/org.eclipse.update.ui.win32/icons/full/dlcl16/show_unconf.gif
deleted file mode 100644
index 493f498..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/dlcl16/show_unconf.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/dlcl16/stop_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/dlcl16/stop_nav.gif
deleted file mode 100644
index 7f0f9b9..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/dlcl16/stop_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/elcl16/backward_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/elcl16/backward_nav.gif
deleted file mode 100644
index 85188b7..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/elcl16/backward_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/elcl16/collapseall.gif b/update/org.eclipse.update.ui.win32/icons/full/elcl16/collapseall.gif
deleted file mode 100644
index 72c7ca2..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/elcl16/collapseall.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/elcl16/forward_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/elcl16/forward_nav.gif
deleted file mode 100644
index dc28ee1..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/elcl16/forward_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/elcl16/go_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/elcl16/go_nav.gif
deleted file mode 100644
index 7683327..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/elcl16/go_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/elcl16/hierarchicalLayout.gif b/update/org.eclipse.update.ui.win32/icons/full/elcl16/hierarchicalLayout.gif
deleted file mode 100644
index b50b2c3..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/elcl16/hierarchicalLayout.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/elcl16/home_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/elcl16/home_nav.gif
deleted file mode 100644
index bf2ba86..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/elcl16/home_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/elcl16/refresh_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/elcl16/refresh_nav.gif
deleted file mode 100644
index 919423d..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/elcl16/refresh_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/elcl16/show_unconf.gif b/update/org.eclipse.update.ui.win32/icons/full/elcl16/show_unconf.gif
deleted file mode 100644
index bdf381a..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/elcl16/show_unconf.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/elcl16/stop_nav.gif b/update/org.eclipse.update.ui.win32/icons/full/elcl16/stop_nav.gif
deleted file mode 100644
index a519f44..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/elcl16/stop_nav.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/eview16/browser.gif b/update/org.eclipse.update.ui.win32/icons/full/eview16/browser.gif
deleted file mode 100644
index 33935b1..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/eview16/browser.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/forms/def_provider.jpg b/update/org.eclipse.update.ui.win32/icons/full/forms/def_provider.jpg
deleted file mode 100644
index a43cbeb..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/forms/def_provider.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/forms/form_banner.gif b/update/org.eclipse.update.ui.win32/icons/full/forms/form_banner.gif
deleted file mode 100644
index aebc0b2..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/forms/form_banner.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/forms/form_banner.jpg b/update/org.eclipse.update.ui.win32/icons/full/forms/form_banner.jpg
deleted file mode 100644
index 253e2d2..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/forms/form_banner.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/forms/form_underline.jpg b/update/org.eclipse.update.ui.win32/icons/full/forms/form_underline.jpg
deleted file mode 100644
index 0ff3d0b..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/forms/form_underline.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/forms/form_underline2.jpg b/update/org.eclipse.update.ui.win32/icons/full/forms/form_underline2.jpg
deleted file mode 100644
index 57414f7..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/forms/form_underline2.jpg
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/full/forms/topic.gif b/update/org.eclipse.update.ui.win32/icons/full/forms/topic.gif
deleted file mode 100644
index 10137e9..0000000
--- a/update/org.eclipse.update.ui.win32/icons/full/forms/topic.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/icons/sample.gif b/update/org.eclipse.update.ui.win32/icons/sample.gif
deleted file mode 100644
index 34fb3c9..0000000
--- a/update/org.eclipse.update.ui.win32/icons/sample.gif
+++ /dev/null
Binary files differ
diff --git a/update/org.eclipse.update.ui.win32/plugin.properties b/update/org.eclipse.update.ui.win32/plugin.properties
deleted file mode 100644
index 5288763..0000000
--- a/update/org.eclipse.update.ui.win32/plugin.properties
+++ /dev/null
@@ -1,3 +0,0 @@
-pluginName = Welcome Portal for Windows
-providerName = Eclipse.org
-views.webBrowser.label = Web Browser
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.win32/plugin.xml b/update/org.eclipse.update.ui.win32/plugin.xml
deleted file mode 100644
index 1b0b77a..0000000
--- a/update/org.eclipse.update.ui.win32/plugin.xml
+++ /dev/null
@@ -1,192 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="org.eclipse.update.ui.win32"
-   name="%pluginName"
-   version="2.1.0"
-   provider-name="%providerName"
-   class="org.eclipse.welcome.internal.WelcomePortal">
-
-   <runtime>
-      <library name="updateui32.jar">
-         <export name="*"/>
-         <packages prefixes="org.eclipse.welcome.internal"/>
-      </library>
-   </runtime>
-   <requires>
-      <import plugin="org.eclipse.core.runtime.compatibility"/>
-      <import plugin="org.eclipse.ui.ide"/>
-      <import plugin="org.eclipse.ui.views"/>
-      <import plugin="org.eclipse.jface.text"/>
-      <import plugin="org.eclipse.ui.workbench.texteditor"/>
-      <import plugin="org.eclipse.ui.editors"/>
-      <import plugin="org.eclipse.core.resources"/>
-      <import plugin="org.eclipse.ui"/>
-      <import plugin="org.eclipse.update.ui.forms"/>
-      <import plugin="org.eclipse.help"/>
-   </requires>
-
-
-   <extension-point id="welcomePages" name="Welcome Pages" schema="schema/welcomePages.exsd"/>
-   <extension-point id="welcomeSections" name="Welcome Sections" schema="schema/welcomeSections.exsd"/>
-
-   <extension
-         point="org.eclipse.ui.actionSets">
-      <actionSet
-            label="Sample Action Set"
-            visible="true"
-            id="org.eclipse.update.ui.win32.actionSet">
-         <action
-               label="Open Home Page"
-               icon="icons/sample.gif"
-               tooltip="Open Home Page"
-               class="org.eclipse.welcome.internal.ShowWelcomePageAction"
-               menubarPath="help/helpEnd"
-               id="org.eclipse.welcome.internal.ShowWelcomePageAction">
-         </action>
-      </actionSet>
-   </extension>
-   <extension
-         point="org.eclipse.ui.perspectiveExtensions">
-      <perspectiveExtension
-            targetID="org.eclipse.ui.resourcePerspective">
-         <actionSet
-               id="org.eclipse.update.ui.win32.actionSet">
-         </actionSet>
-      </perspectiveExtension>
-   </extension>
-   <extension
-         point="org.eclipse.ui.editors">
-      <editor
-            name="Web Browser"
-            icon="icons/sample.gif"
-            contributorClass="org.eclipse.welcome.internal.webbrowser.WebBrowserEditorContributor"
-            class="org.eclipse.welcome.internal.webbrowser.WebBrowserEditor"
-            id="org.eclipse.welcome.webbrowser">
-      </editor>
-      <editor
-            name="Welcome Page"
-            icon="icons/sample.gif"
-            class="org.eclipse.welcome.internal.portal.WelcomePortalEditor"
-            id="org.eclipse.welcome.portal">
-      </editor>
-   </extension>
-   <extension
-         point="org.eclipse.ui.elementFactories">
-      <factory
-            class="org.eclipse.welcome.internal.webbrowser.WebBrowserEditorInputFactory"
-            id="org.eclipse.welcome.internal.webbrowser.WebBrowserEditorInputFactory">
-      </factory>
-      <factory
-            class="org.eclipse.welcome.internal.portal.WelcomePortalEditorInputFactory"
-            id="org.eclipse.welcome.internal.portal.WelcomePortalEditorInputFactory">
-      </factory>
-   </extension>
-   <extension
-         point="org.eclipse.update.ui.win32.welcomePages">
-      <page
-            name="Home"
-            numColumns="2"
-            id="org.eclipse.update.ui.win32.homePage">
-         <section
-               span="2"
-               id="community.news.remote">
-         </section>
-         <section
-               id="search">
-         </section>
-         <section
-               id="tasks.softwareUpdates">
-         </section>
-         <section
-               id="quickStart">
-         </section>
-         <section
-               id="tipsAndTricks">
-         </section>
-      </page>
-      <page
-            name="News"
-            id="org.eclipse.update.ui.win32.news">
-      </page>
-      <page
-            name="Community"
-            numColumns="1"
-            id="org.eclipse.update.ui.win32.community">
-         <section
-               id="community.links">
-         </section>
-         <section
-               id="community.articles">
-         </section>
-      </page>
-      <page
-            name="Samples"
-            id="org.eclipse.update.ui.win32.samples">
-      </page>
-   </extension>
-   <extension
-         point="org.eclipse.update.ui.win32.welcomeSections">
-      <section
-            name="Software Updates"
-            id="tasks.softwareUpdates">
-         <form>
-            &lt;p&gt;
-&lt;a href=&quot;action&quot; arg=&quot;org.eclipse.update.ui:org.eclipse.update.internal.ui.InstallWizardAction&quot;&gt;
-Find updates for the currently installed features
-&lt;/a&gt;&lt;/p&gt;
-&lt;p&gt;
-&lt;a href=&quot;action&quot; arg=&quot;org.eclipse.update.ui:org.eclipse.update.internal.ui.ConfigurationManagerAction&quot;&gt;
-Manage my workbench configuration&lt;/a&gt;&lt;/p&gt;
-         </form>
-      </section>
-      <section
-            name="Eclipse Community Sites"
-            id="community.links">
-         <form>
-            &lt;li&gt;&lt;a href=&quot;url&quot; arg=&quot;http://www.eclipse.org&quot;&gt;Eclipse.org&lt;/a&gt;&lt;/li&gt;
-         </form>
-      </section>
-      <section
-            name="New Eclipse Articles"
-            id="community.articles">
-         <form
-               url="http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-update-home/welcome-articles.xml"
-               type="remote">
-         </form>
-      </section>
-      <section
-            name="Headlines"
-            id="community.news.remote">
-         <form
-               url="http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-update-home/welcome-news.xml"
-               type="remote">
-         </form>
-      </section>
-      <section
-            name="Get Help"
-            id="search">
-         <form
-               type="custom"
-               class="org.eclipse.welcome.internal.portal.HelpSection">
-         </form>
-      </section>
-      <section
-            name="Quick Start"
-            id="quickStart">
-         <form
-               type="dynamic"
-               class="org.eclipse.welcome.internal.actions.WelcomeContentProvider">
-         </form>
-      </section>
-      <section
-            name="Tips and Tricks"
-            id="tipsAndTricks">
-         <form
-               type="dynamic"
-               class="org.eclipse.welcome.internal.actions.TipsAndTricksContentProvider">
-         </form>
-      </section>
-   </extension>
-
-</plugin>
diff --git a/update/org.eclipse.update.ui.win32/schema/welcomePages.exsd b/update/org.eclipse.update.ui.win32/schema/welcomePages.exsd
deleted file mode 100644
index 7e43f1b..0000000
--- a/update/org.eclipse.update.ui.win32/schema/welcomePages.exsd
+++ /dev/null
@@ -1,135 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.update.ui.win32">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.update.ui.win32" id="welcomePages" name="Welcome Pages"/>

-      </appInfo>

-      <documentation>

-         [Enter description of this extension point.]

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="page" minOccurs="1" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="page">

-      <complexType>

-         <sequence>

-            <element ref="section" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="numColumns" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="section">

-      <complexType>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="span" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         [Enter the first release in which this extension point appears.]

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         [Enter extension point usage example here.]

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         [Enter API information here.]

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         [Enter information about supplied implementation of this extension point.]

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/update/org.eclipse.update.ui.win32/schema/welcomeSections.exsd b/update/org.eclipse.update.ui.win32/schema/welcomeSections.exsd
deleted file mode 100644
index 9c4b5e2..0000000
--- a/update/org.eclipse.update.ui.win32/schema/welcomeSections.exsd
+++ /dev/null
@@ -1,166 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.update.ui.win32">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.update.ui.win32" id="welcomeSections" name="Welcome Sections"/>

-      </appInfo>

-      <documentation>

-         [Enter description of this extension point.]

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="section" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="section">

-      <complexType>

-         <sequence>

-            <element ref="form" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="class" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.welcome.internal.portal.IPortalSection"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="form">

-      <complexType>

-         <attribute name="type" use="default" value="local">

-            <annotation>

-               <documentation>

-                  Forms are loaded depending on the &lt;samp&gt;type&lt;/samp&gt; attribute:

-&lt;ul&gt;

-&lt;li&gt;&lt;b&gt;local&lt;/b&gt; - the content of the form will be loaded from the body text of the element.&lt;/li&gt;

-&lt;li&gt;&lt;b&gt;remote&lt;/b&gt; - the content of the form will be downloaded using the specified URL.&lt;/li&gt;

-&lt;li&gt;&lt;b&gt;custom&lt;/b&gt; - the form will be created by loading the class specified by the &lt;samp&gt;class&lt;/samp&gt; attribute that implements IPortalSection interface.&lt;/li&gt;

-&lt;li&gt;&lt;b&gt;dynamic&lt;/b&gt; - the form will be created by loading the class specified by the &lt;samp&gt;class&lt;/samp&gt; attribute that implements IFormContentProvider interface.&lt;/li&gt;

-&lt;/ul&gt;

-               </documentation>

-            </annotation>

-            <simpleType>

-               <restriction base="string">

-                  <enumeration value="local">

-                  </enumeration>

-                  <enumeration value="remote">

-                  </enumeration>

-                  <enumeration value="custom">

-                  </enumeration>

-                  <enumeration value="dynamic">

-                  </enumeration>

-               </restriction>

-            </simpleType>

-         </attribute>

-         <attribute name="url" type="string">

-            <annotation>

-               <documentation>

-                  If &lt;samp&gt;type&lt;/samp&gt; is &lt;samp&gt;remote&lt;/samp&gt;, the content of the form will be downloaded from the specified URL.

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="class" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.welcome.internal.portal.IPortalSection"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         [Enter the first release in which this extension point appears.]

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         [Enter extension point usage example here.]

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         [Enter API information here.]

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         [Enter information about supplied implementation of this extension point.]

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/ShowWelcomePageAction.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/ShowWelcomePageAction.java
deleted file mode 100644
index 70ec5ba..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/ShowWelcomePageAction.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.welcome.internal;
-
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.*;
-import org.eclipse.welcome.internal.portal.WelcomePortalEditorInput;
-
-/**
- * Our sample action implements workbench action delegate.
- * The action proxy will be created by the workbench and
- * shown in the UI. When the user tries to use the action,
- * this delegate will be created and execution will be 
- * delegated to it.
- * @see IWorkbenchWindowActionDelegate
- */
-public class ShowWelcomePageAction implements IWorkbenchWindowActionDelegate {
-	private IWorkbenchWindow window;
-	/**
-	 * The constructor.
-	 */
-	public ShowWelcomePageAction() {
-	}
-
-	/**
-	 * The action has been activated. The argument of the
-	 * method represents the 'real' action sitting
-	 * in the workbench UI.
-	 * @see IWorkbenchWindowActionDelegate#run
-	 */
-	public void run(IAction action) {
-		try {
-			WelcomePortal.getActivePage().openEditor(
-				new WelcomePortalEditorInput(),
-				"org.eclipse.welcome.portal");
-		} catch (PartInitException e) {
-			WelcomePortal.logException(e);
-		}
-	}
-
-	/**
-	 * Selection in the workbench has been changed. We 
-	 * can change the state of the 'real' action here
-	 * if we want, but this can only happen after 
-	 * the delegate has been created.
-	 * @see IWorkbenchWindowActionDelegate#selectionChanged
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-	}
-
-	/**
-	 * We can use this method to dispose of any system
-	 * resources we previously allocated.
-	 * @see IWorkbenchWindowActionDelegate#dispose
-	 */
-	public void dispose() {
-	}
-
-	/**
-	 * We will cache window object in order to
-	 * be able to provide parent shell for the message dialog.
-	 * @see IWorkbenchWindowActionDelegate#init
-	 */
-	public void init(IWorkbenchWindow window) {
-		this.window = window;
-	}
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/WelcomePortal.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/WelcomePortal.java
deleted file mode 100644
index 06a2f00..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/WelcomePortal.java
+++ /dev/null
@@ -1,182 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.welcome.internal;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.*;
-
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.*;
-import org.eclipse.jface.dialogs.*;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.*;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.welcome.internal.webbrowser.*;
-
-/**
- * The main plugin class to be used in the desktop.
- */
-public class WelcomePortal extends AbstractUIPlugin {
-	public static final String PLUGIN_ID = "org.eclipse.update.ui.win32";
-	public static final String ID_BROWSER = PLUGIN_ID + "WebBrowser";
-	
-	//The shared instance.
-	private static WelcomePortal plugin;
-	//Resource bundle.
-	private ResourceBundle resourceBundle;
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IStartup#earlyStartup()
-	 */
-	public static void showURL(String name, String url) {
-		try {
-			WelcomePortal.getActivePage().openEditor(
-				new WebBrowserEditorInput(name, url),
-				"org.eclipse.welcome.webbrowser");
-		} catch (PartInitException e) {
-			WelcomePortal.logException(e);
-		}
-	}
-
-	/**
-	 * The constructor.
-	 */
-	public WelcomePortal(IPluginDescriptor descriptor) {
-		super(descriptor);
-		plugin = this;
-		try {
-			resourceBundle =
-				ResourceBundle.getBundle(
-					"org.eclipse.welcome.internal.WelcomePortalResources");
-		} catch (MissingResourceException x) {
-			resourceBundle = null;
-		}
-	}
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static WelcomePortal getDefault() {
-		return plugin;
-	}
-
-	public static IWorkbenchPage getActivePage() {
-		return getDefault().internalGetActivePage();
-	}
-
-	private IWorkbenchPage internalGetActivePage() {
-		IWorkbenchWindow window = getWorkbench().getActiveWorkbenchWindow();
-		if (window != null)
-			return window.getActivePage();
-		return null;
-	}
-
-	public static Shell getActiveWorkbenchShell() {
-		IWorkbenchWindow window = getActiveWorkbenchWindow();
-		return window != null ? window.getShell() : null;
-	}
-
-	public static IWorkbenchWindow getActiveWorkbenchWindow() {
-		return getDefault().getWorkbench().getActiveWorkbenchWindow();
-	}
-
-	public static String getPluginId() {
-		return getDefault().getDescriptor().getUniqueIdentifier();
-	}
-
-	/**
-	 * Returns the workspace instance.
-	 */
-	public static IWorkspace getWorkspace() {
-		return ResourcesPlugin.getWorkspace();
-	}
-
-	/**
-	 * Returns the string from the plugin's resource bundle,
-	 * or 'key' if not found.
-	 */
-	public static String getString(String key) {
-		ResourceBundle bundle = WelcomePortal.getDefault().getResourceBundle();
-		try {
-			return bundle.getString(key);
-		} catch (MissingResourceException e) {
-			return key;
-		}
-	}
-
-	public static String getFormattedMessage(String key, String[] args) {
-		String text = getString(key);
-		return java.text.MessageFormat.format(text, args);
-	}
-
-	public static String getFormattedMessage(String key, String arg) {
-		String text = getString(key);
-		return java.text.MessageFormat.format(text, new String[] { arg });
-	}
-
-	/**
-	 * Returns the plugin's resource bundle,
-	 */
-	public ResourceBundle getResourceBundle() {
-		return resourceBundle;
-	}
-
-	public void startup() throws CoreException {
-	}
-
-	public void shutdown() throws CoreException {
-	}
-
-	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 (status.getSeverity() != IStatus.INFO) {
-			if (showErrorDialog)
-				ErrorDialog.openError(
-					getActiveWorkbenchShell(),
-					null,
-					null,
-					status);
-			//ResourcesPlugin.getPlugin().getLog().log(status);
-			Platform.getPlugin("org.eclipse.core.runtime").getLog().log(status);
-		} else {
-			MessageDialog.openInformation(
-				getActiveWorkbenchShell(),
-				null,
-				status.getMessage());
-		}
-	}
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/WelcomePortalImages.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/WelcomePortalImages.java
deleted file mode 100644
index 3675f4b..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/WelcomePortalImages.java
+++ /dev/null
@@ -1,243 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.welcome.internal;
-
-import java.io.IOException;
-import java.net.MalformedURLException;
-import java.net.URL;
-
-import org.eclipse.core.runtime.IPluginDescriptor;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.swt.graphics.Image;
-
-/**
- * Bundle of all images used by the PDE plugin.
- */
-public class WelcomePortalImages {
-
-
-	private static final String NAME_PREFIX= WelcomePortal.getPluginId()+".";
-
-	private final static URL BASE_URL = WelcomePortal.getDefault().getDescriptor().getInstallURL();
-
-
-	private static ImageRegistry PLUGIN_REGISTRY;
-	
-	public final static String ICONS_PATH = "icons/full/";
-
-	/**
-	 * Set of predefined Image Descriptors.
-	 */
-	
-	private static final String PATH_OBJ= ICONS_PATH+"obj16/";
-	private static final String PATH_VIEW = ICONS_PATH+"cview16/";
-	private static final String PATH_LCL= ICONS_PATH+"elcl16/";
-	private static final String PATH_LCL_HOVER= ICONS_PATH+"clcl16/";
-	private static final String PATH_LCL_DISABLED= ICONS_PATH+"dlcl16/";
-	private static final String PATH_TOOL = ICONS_PATH + "etool16/";
-	private static final String PATH_TOOL_HOVER = ICONS_PATH + "ctool16/";
-	private static final String PATH_TOOL_DISABLED = ICONS_PATH + "dtool16/";
-	private static final String PATH_OVR = ICONS_PATH + "ovr16/";
-	private static final String PATH_WIZBAN = ICONS_PATH + "wizban/";
-	public static final String PATH_FORMS = ICONS_PATH + "forms/";
-
-
-	/**
-	 * Frequently used images
-	 */
-	public static final String IMG_FORM_BANNER = NAME_PREFIX+"FORM_BANNER";
-	public static final String IMG_FORM_BANNER_SHORT = NAME_PREFIX+"FORM_BANNER_SHORT";
-	public static final String IMG_FORM_UNDERLINE = NAME_PREFIX + "FORM_UNDERLINE";
-
-	/**
-	 * OBJ16
-	 */
-	public static final ImageDescriptor DESC_APP_OBJ = create(PATH_OBJ, "app_obj.gif");
-	public static final ImageDescriptor DESC_BFOLDER_OBJ = create(PATH_OBJ, "bfolder_obj.gif");
-	public static final ImageDescriptor DESC_CATEGORY_OBJ = create(PATH_OBJ, "category_obj.gif");
-	public static final ImageDescriptor DESC_CD_OBJ = create(PATH_OBJ, "cd_obj.gif");
-	public static final ImageDescriptor DESC_COMPUTER_OBJ = create(PATH_OBJ, "computer_obj.gif");
-	public static final ImageDescriptor DESC_CONFIG_OBJ = create(PATH_OBJ, "config_obj.gif");
-	public static final ImageDescriptor DESC_FEATURE_OBJ = create(PATH_OBJ, "feature_obj.gif");
-	public static final ImageDescriptor DESC_EFIX_OBJ = create(PATH_OBJ, "efix2_obj.gif");
-	public static final ImageDescriptor DESC_FLOPPY_OBJ = create(PATH_OBJ, "floppy_obj.gif");
-	public static final ImageDescriptor DESC_HISTORY_OBJ = create(PATH_OBJ, "history_obj.gif");
-	public static final ImageDescriptor DESC_LSITE_OBJ = create(PATH_OBJ, "lsite_obj.gif");
-	public static final ImageDescriptor DESC_PSITE_OBJ = create(PATH_OBJ, "psite_obj.gif");
-	public static final ImageDescriptor DESC_ESITE_OBJ = create(PATH_OBJ, "esite_obj.gif");
-	public static final ImageDescriptor DESC_SITE_OBJ = create(PATH_OBJ, "site_obj.gif");
-	public static final ImageDescriptor DESC_WEB_SITE_OBJ = create(PATH_OBJ, "web_bkmrk_obj.gif");
-	public static final ImageDescriptor DESC_PLACES_OBJ = create(PATH_OBJ, "places_obj.gif");
-	public static final ImageDescriptor DESC_SAVED_OBJ = create(PATH_OBJ, "saved_obj.gif");
-	public static final ImageDescriptor DESC_UNCONF_FEATURE_OBJ = create(PATH_OBJ, "unconf_feature_obj.gif");
-	public static final ImageDescriptor DESC_UPDATES_OBJ = create(PATH_OBJ, "updates_obj.gif");
-	public static final ImageDescriptor DESC_VFIXED_OBJ = create(PATH_OBJ, "vfixed_obj.gif");
-	public static final ImageDescriptor DESC_VREMOTE_OBJ = create(PATH_OBJ, "vremote_obj.gif");
-	public static final ImageDescriptor DESC_VREMOVABLE_OBJ = create(PATH_OBJ, "vremovable_obj.gif");
-	public static final ImageDescriptor DESC_NOTINST_FEATURE_OBJ = create(PATH_OBJ, "notinstalled_feature_obj.gif");	
-	public static final ImageDescriptor DESC_SHOW_SEARCH = create(PATH_OBJ, "tsearch_obj.gif");
-	public static final ImageDescriptor DESC_ERR_ST_OBJ = create(PATH_OBJ, "error_st_obj.gif");
-	public static final ImageDescriptor DESC_OK_ST_OBJ = create(PATH_OBJ, "ok_st_obj.gif");
-
-	
-	/**
-	 * OVR16
-	 */
-	public static final ImageDescriptor DESC_LINKED_CO   = create(PATH_OVR, "linked_co.gif");
-	public static final ImageDescriptor DESC_UPDATED_CO   = create(PATH_OVR, "updated_co.gif");
-	public static final ImageDescriptor DESC_INSTALLABLE_CO = create(PATH_OVR, "installable_co.gif");
-	public static final ImageDescriptor DESC_CURRENT_CO = create(PATH_OVR, "current_co.gif");
-	public static final ImageDescriptor DESC_ERROR_CO = create(PATH_OVR, "error_co.gif");
-	public static final ImageDescriptor DESC_WARNING_CO = create(PATH_OVR, "warning_co.gif");
-	public static final ImageDescriptor DESC_MOD_CO = create(PATH_OVR, "mod_co.gif");
-	public static final ImageDescriptor DESC_ADD_CO = create(PATH_OVR, "add_stat.gif");
-	public static final ImageDescriptor DESC_DEL_CO = create(PATH_OVR, "del_stat.gif");
-	public static final ImageDescriptor DESC_UNCONF_CO = create(PATH_OVR, "unconfigured_co.gif");
-
-	/**
-	 * VIEW16
-	 */
-
-	public static final ImageDescriptor DESC_CONFIGS_VIEW = create(PATH_VIEW, "configs.gif");
-	public static final ImageDescriptor DESC_SITES_VIEW = create(PATH_VIEW, "updates.gif");
-	public static final ImageDescriptor DESC_SELECTED_UPDATES_VIEW = create(PATH_VIEW, "selected_updates.gif");
-
-	/**
-	 * LCL
-	 */
-	public static final ImageDescriptor DESC_BACKWARD_NAV = create(PATH_LCL, "backward_nav.gif");
-	public static final ImageDescriptor DESC_BACKWARD_NAV_H = create(PATH_LCL_HOVER, "backward_nav.gif");
-	public static final ImageDescriptor DESC_BACKWARD_NAV_D = create(PATH_LCL_DISABLED, "backward_nav.gif");
-	public static final ImageDescriptor DESC_FORWARD_NAV = create(PATH_LCL, "forward_nav.gif");
-	public static final ImageDescriptor DESC_FORWARD_NAV_H = create(PATH_LCL_HOVER, "forward_nav.gif");
-	public static final ImageDescriptor DESC_FORWARD_NAV_D = create(PATH_LCL_DISABLED, "forward_nav.gif");
-	public static final ImageDescriptor DESC_HOME_NAV = create(PATH_LCL, "home_nav.gif");
-	public static final ImageDescriptor DESC_HOME_NAV_H = create(PATH_LCL_HOVER, "home_nav.gif");
-	public static final ImageDescriptor DESC_HOME_NAV_D = create(PATH_LCL_DISABLED, "home_nav.gif");
-	public static final ImageDescriptor DESC_REFRESH_NAV = create(PATH_LCL, "refresh_nav.gif");
-	public static final ImageDescriptor DESC_REFRESH_NAV_H = create(PATH_LCL_HOVER, "refresh_nav.gif");
-	public static final ImageDescriptor DESC_REFRESH_NAV_D = create(PATH_LCL_DISABLED, "refresh_nav.gif");
-	public static final ImageDescriptor DESC_STOP_NAV = create(PATH_LCL, "stop_nav.gif");
-	public static final ImageDescriptor DESC_STOP_NAV_H = create(PATH_LCL_HOVER, "stop_nav.gif");
-	public static final ImageDescriptor DESC_STOP_NAV_D = create(PATH_LCL_DISABLED, "stop_nav.gif");
-	public static final ImageDescriptor DESC_GO_NAV = create(PATH_LCL, "go_nav.gif");
-	public static final ImageDescriptor DESC_GO_NAV_H = create(PATH_LCL_HOVER, "go_nav.gif");
-	public static final ImageDescriptor DESC_GO_NAV_D = create(PATH_LCL_DISABLED, "go_nav.gif");
-	public static final ImageDescriptor DESC_SHOW_UNCONF = create(PATH_LCL, "show_unconf.gif");
-	public static final ImageDescriptor DESC_SHOW_UNCONF_H = create(PATH_LCL_HOVER, "show_unconf.gif");
-	public static final ImageDescriptor DESC_SHOW_UNCONF_D = create(PATH_LCL_DISABLED, "show_unconf.gif");
-	public static final ImageDescriptor DESC_COLLAPSE_ALL = create(PATH_LCL, "collapseall.gif");
-	public static final ImageDescriptor DESC_SHOW_HIERARCHY = create(PATH_LCL, "hierarchicalLayout.gif");
-	public static final ImageDescriptor DESC_SHOW_HIERARCHY_H = create(PATH_LCL_HOVER, "hierarchicalLayout.gif");
-	public static final ImageDescriptor DESC_SHOW_HIERARCHY_D = create(PATH_LCL_DISABLED, "hierarchicalLayout.gif");
-
-	/**
-	 * WIZ
-	 */
-	public static final ImageDescriptor DESC_INSTALL_WIZ  = create(PATH_WIZBAN, "install_wiz.gif");
-	public static final ImageDescriptor DESC_UPDATE_WIZ  = create(PATH_WIZBAN, "update_wiz.gif");
-	public static final ImageDescriptor DESC_CONFIG_WIZ  = create(PATH_WIZBAN, "config_wiz.gif");
-	public static final ImageDescriptor DESC_UNINSTALL_WIZ  = create(PATH_WIZBAN, "uninstall_wiz.gif");
-	public static final ImageDescriptor DESC_INSTALL_BANNER  = create(PATH_WIZBAN, "def_wizban.jpg");
-	public static final ImageDescriptor DESC_FORM_BANNER  = create(PATH_FORMS, "form_banner.jpg");
-	public static final ImageDescriptor DESC_FORM_BANNER_SHORT  = create(PATH_FORMS, "form_banner.gif");
-	public static final ImageDescriptor DESC_FORM_UNDERLINE  = create(PATH_FORMS, "form_underline2.jpg");
-	public static final ImageDescriptor DESC_PROVIDER = create(PATH_FORMS, "def_provider.jpg");
-	public static final ImageDescriptor DESC_ITEM = create(PATH_FORMS, "topic.gif");
-	public static final ImageDescriptor DESC_NEW_BOOKMARK  = create(PATH_WIZBAN, "new_bookmark_wiz.gif");
-	public static final ImageDescriptor DESC_NEW_FOLDER  = create(PATH_WIZBAN, "new_folder_wiz.gif");
-	public static final ImageDescriptor DESC_NEW_SEARCH  = create(PATH_WIZBAN, "new_search_wiz.gif");
-
-	private static ImageDescriptor create(String prefix, String name) {
-		return ImageDescriptor.createFromURL(makeImageURL(prefix, name));
-	}
-
-
-	public static Image get(String key) {
-		if (PLUGIN_REGISTRY==null) initialize();
-		return PLUGIN_REGISTRY.get(key);
-	}
-
-
-public static ImageDescriptor getImageDescriptorFromPlugin(
-	IPluginDescriptor pluginDescriptor, 
-	String subdirectoryAndFilename) {
-	URL installURL = pluginDescriptor.getInstallURL();
-	try {
-		URL newURL = new URL(installURL, subdirectoryAndFilename);
-		return ImageDescriptor.createFromURL(newURL);
-	}
-	catch (MalformedURLException e) {
-	}
-	return null;
-}
-
-
-public static Image getImageFromPlugin(
-	IPluginDescriptor pluginDescriptor,
-	String subdirectoryAndFilename) {
-	URL installURL = pluginDescriptor.getInstallURL();
-	Image image = null;
-	try {
-		URL newURL = new URL(installURL, subdirectoryAndFilename);
-		String key = newURL.toString();
-		if (PLUGIN_REGISTRY==null) initialize();
-		image = PLUGIN_REGISTRY.get(key);
-		if (image==null) {
-			ImageDescriptor desc = ImageDescriptor.createFromURL(newURL);
-			image = desc.createImage();
-			PLUGIN_REGISTRY.put(key, image);
-		}
-	}
-	catch (MalformedURLException e) {
-	}
-	return image;
-}
-/* package */
-private static final void initialize() {
-	PLUGIN_REGISTRY = new ImageRegistry();
-	manage(IMG_FORM_BANNER_SHORT, DESC_FORM_BANNER_SHORT);
-	manage(IMG_FORM_BANNER, DESC_FORM_BANNER);
-	manage(IMG_FORM_UNDERLINE, DESC_FORM_UNDERLINE);
-}
-
-
-private static URL makeImageURL(String prefix, String name) {
-	String path = prefix + name;
-	URL url = null;
-	try {
-		url = new URL(BASE_URL, path);
-	}
-	catch (MalformedURLException e) {
-		return null;
-	}
-	return url;
-}
-
-public static Image manage(String key, ImageDescriptor desc) {
-	Image image = desc.createImage();
-	PLUGIN_REGISTRY.put(key, image);
-	return image;
-}
-
-public static URL getDefaultProviderImageURL() {
-	URL url = makeImageURL(PATH_FORMS, "def_provider.jpg");
-	try {
-		url = Platform.resolve(url);
-	}
-	catch (IOException e) {
-	}
-	return url; 
-}
-
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/WelcomePortalResources.properties b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/WelcomePortalResources.properties
deleted file mode 100644
index 491ee42..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/WelcomePortalResources.properties
+++ /dev/null
@@ -1,29 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
-###############################################################################
-# 
-#
-#
-
-BrowserPage.address = Address:
-BrowserPage.stop = Stop
-BrowserPage.go = Go
-BrowserPage.refresh = Refresh
-
-WebBrowserView.notAvailable = Embedded Web browser is not available. \
-Requiests for opening URLs are processed using Web browser registered to handle \
-Web pages on your system.
-WebBrowserView.address = Address:
-WebBrowserView.stop = Stop
-WebBrowserView.go = Go
-WebBrowserView.home = Go Home
-WebBrowserView.refresh = Refresh
-WebBrowserView.backward = Go Back
-WebBrowserView.forward = Go Forward
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/actions/TipsAndTricksContentProvider.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/actions/TipsAndTricksContentProvider.java
deleted file mode 100644
index 65b3b9a..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/actions/TipsAndTricksContentProvider.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Created on Jun 20, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.welcome.internal.actions;
-
-import java.io.*;
-import java.util.ArrayList;
-
-import org.eclipse.ui.internal.*;
-import org.eclipse.welcome.internal.WelcomePortal;
-import org.eclipse.welcome.internal.portal.*;
-
-/**
- * @author dejan
- *
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class TipsAndTricksContentProvider implements IFormContentProvider {
-	private IFormContentObserver observer;
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.welcome.internal.portal.IFormContentProvider#getContent()
-	 */
-	public String getContent() {
-		/*
-		// Ask the user to select a feature
-		AboutInfo[] features = ((Workbench) WelcomePortal.getDefault().getWorkbench()).getConfigurationInfo().getFeaturesInfo();
-		ArrayList welcomeFeatures = new ArrayList();
-		StringWriter swriter = new StringWriter();
-		PrintWriter writer = new PrintWriter(swriter);
-		writer.println("<form>");
-		for (int i = 0; i < features.length; i++) {
-			AboutInfo feature = features[i];
-			if (feature.getWelcomePageURL() != null) {
-				addFeatureLink(writer, feature);
-			}
-		}
-		writer.println("</form>");
-		writer.close();
-		return swriter.toString();
-		*/
-		return "<form></form>";
-	}
-
-	private void addFeatureLink(PrintWriter writer, AboutInfo feature) {
-		String name = feature.getFeatureLabel();
-		String href = feature.getTipsAndTricksHref();
-		if (href==null) return;
-		writer.print("<li>");
-		writer.print("<a href=\"help\" arg=\""+href+"\">"+name+"</a>");
-		writer.println("</li>");
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.welcome.internal.portal.IFormContentProvider#setContentObserver(org.eclipse.welcome.internal.portal.IFormContentObserver)
-	 */
-	public void setContentObserver(IFormContentObserver observer) {
-		this.observer = observer;
-	}
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/actions/WelcomeContentProvider.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/actions/WelcomeContentProvider.java
deleted file mode 100644
index 59c2d79..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/actions/WelcomeContentProvider.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Created on Jun 20, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.welcome.internal.actions;
-
-import java.io.*;
-import java.net.URL;
-import java.util.ArrayList;
-
-import org.eclipse.ui.internal.*;
-import org.eclipse.welcome.internal.WelcomePortal;
-import org.eclipse.welcome.internal.portal.*;
-
-/**
- * @author dejan
- *
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class WelcomeContentProvider implements IFormContentProvider {
-	private IFormContentObserver observer;
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.welcome.internal.portal.IFormContentProvider#getContent()
-	 */
-	public String getContent() {
-		/*
-		// Ask the user to select a feature
-		AboutInfo[] features = ((Workbench) WelcomePortal.getDefault().getWorkbench()).getConfigurationInfo().getFeaturesInfo();
-		ArrayList welcomeFeatures = new ArrayList();
-		StringWriter swriter = new StringWriter();
-		PrintWriter writer = new PrintWriter(swriter);
-		writer.println("<form>");
-		for (int i = 0; i < features.length; i++) {
-			AboutInfo feature = features[i];
-			if (feature.getWelcomePageURL() != null) {
-				addFeatureLink(writer, feature);
-			}
-		}
-		writer.println("</form>");
-		/*
-
-		if (perspectiveId != null) {
-			try {
-				page = (WorkbenchPage) window.getWorkbench().showPerspective(perspectiveId, window);
-			} catch (WorkbenchException e) {
-				return;
-			}
-		}
-
-		page.setEditorAreaVisible(true);
-
-		// create input
-		WelcomeEditorInput input = new WelcomeEditorInput(feature);
-
-		// see if we already have a welcome editor
-		IEditorPart editor = page.findEditor(input);
-		if (editor != null) {
-			page.activate(editor);
-			return;
-		}
-
-		try {
-			page.openEditor(input, EDITOR_ID);
-		} catch (PartInitException e) {
-			IStatus status = new Status(IStatus.ERROR, WorkbenchPlugin.PI_WORKBENCH, 1, WorkbenchMessages.getString("QuickStartAction.openEditorException"), e); //$NON-NLS-1$
-			ErrorDialog.openError(
-				window.getShell(),
-				WorkbenchMessages.getString("Workbench.openEditorErrorDialogTitle"),  //$NON-NLS-1$
-				WorkbenchMessages.getString("Workbench.openEditorErrorDialogMessage"), //$NON-NLS-1$
-				status);
-		}
-		writer.close();
-		return swriter.toString();
-		*/
-		return "<form></form>";
-	}
-
-	private void addFeatureLink(PrintWriter writer, AboutInfo feature) {
-		String name = feature.getFeatureLabel();
-		URL welcomeURL = feature.getWelcomePageURL();
-		String action = "";
-		writer.print("<li>");
-		writer.print("<a href=\"action\">"+name+"</a>");
-		writer.println("</li>");
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.welcome.internal.portal.IFormContentProvider#setContentObserver(org.eclipse.welcome.internal.portal.IFormContentObserver)
-	 */
-	public void setContentObserver(IFormContentObserver observer) {
-		this.observer = observer;
-	}
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/HelpSection.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/HelpSection.java
deleted file mode 100644
index 393de2b..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/HelpSection.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Created on Jun 20, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.welcome.internal.portal;
-
-import java.io.UnsupportedEncodingException;
-import java.net.URLEncoder;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.update.ui.forms.internal.*;
-
-/**
- * @author dejan
- *
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class HelpSection implements IPortalSectionForm {
-	private Text phraseText;
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.welcome.internal.portal.IPortalSection#init(org.eclipse.update.ui.forms.internal.IFormPage)
-	 */
-	public void init(IFormPage page) {
-	}
-	
-	public void dispose() {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.welcome.internal.portal.IPortalSection#createControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public Control createControl(Composite parent, FormWidgetFactory factory) {
-		Composite container = factory.createComposite(parent);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 3;
-		layout.marginWidth = 0;
-		container.setLayout(layout);
-		factory.createLabel(container, "Phrase:");
-		phraseText = factory.createText(container, "");
-		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
-		phraseText.setLayoutData(gd);
-		final Button button = factory.createButton(container, "Go", SWT.PUSH);
-		button.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				doSearch(phraseText.getText());
-			}
-		});
-		button.setEnabled(false);
-		phraseText.addModifyListener(new ModifyListener() {
-			public void modifyText(ModifyEvent e) {
-				String text=phraseText.getText();
-				button.setEnabled(text.length()>0);
-			}
-		});
-		phraseText.addKeyListener(new KeyAdapter() {
-			public void keyReleased(KeyEvent e) {
-				if (e.character=='\r') {
-					if (button.isEnabled())
-						doSearch(phraseText.getText());
-				}
-			}
-		});
-		factory.paintBordersFor(container);
-		return container;
-	}
-	private void doSearch(String phrase) {
-		try {
-			String ephrase = URLEncoder.encode(phrase, "UTF-8");
-			String query = "tab=search&searchWord="+ephrase;
-			WorkbenchHelp.getHelpSupport().displayHelpResource(query);
-		}
-		catch (UnsupportedEncodingException e) {
-			System.out.println(e);
-		}
-	} 
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/IFormContentObserver.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/IFormContentObserver.java
deleted file mode 100644
index ba7801b..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/IFormContentObserver.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
- * Created on Jun 20, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.welcome.internal.portal;
-
-/**
- * @author dejan
- *
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public interface IFormContentObserver {
-	public void contentChanged(IFormContentProvider provider);
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/IFormContentProvider.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/IFormContentProvider.java
deleted file mode 100644
index 15e85ee..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/IFormContentProvider.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*
- * Created on Jun 20, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.welcome.internal.portal;
-
-/**
- * @author dejan
- *
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public interface IFormContentProvider {
-	String getContent();
-	void setContentObserver(IFormContentObserver observer);
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/IPortalSectionForm.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/IPortalSectionForm.java
deleted file mode 100644
index a7d77a6..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/IPortalSectionForm.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Created on Jun 19, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.welcome.internal.portal;
-
-import org.eclipse.swt.widgets.*;
-import org.eclipse.update.ui.forms.internal.*;
-
-/**
- * @author dejan
- *
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public interface IPortalSectionForm {
-	void init(IFormPage page);
-	Control createControl(Composite parent, FormWidgetFactory factory);
-	void dispose();
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/PortalSection.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/PortalSection.java
deleted file mode 100644
index b25eaa2..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/PortalSection.java
+++ /dev/null
@@ -1,289 +0,0 @@
-/*
- * Created on Jun 19, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.welcome.internal.portal;
-
-import java.io.*;
-import java.net.*;
-import java.util.Hashtable;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.jface.action.*;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.ui.*;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.update.ui.forms.internal.*;
-import org.eclipse.update.ui.forms.internal.engine.*;
-import org.eclipse.welcome.internal.WelcomePortal;
-
-/**
- * @author dejan
- *
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class PortalSection extends FormSection  {
-	private SectionDescriptor desc;
-	private WelcomePortalForm form;
-	private HyperlinkAction eclipseAction;
-	private HTTPAction httpAction;
-	private HyperlinkAction helpAction;
-	private Composite formContainer;
-	private Hashtable eclipseActions;
-
-	class ActionWrapper extends Action {
-		IActionDelegate delegate;
-
-		public ActionWrapper(String arg, IActionDelegate delegate) {
-			super(arg);
-			this.delegate = delegate;
-			if (delegate instanceof IWorkbenchWindowActionDelegate)
-				((IWorkbenchWindowActionDelegate) delegate).init(
-					WelcomePortal.getActiveWorkbenchWindow());
-		}
-		public void run() {
-			delegate.run(this);
-		}
-	}
-
-	public PortalSection(SectionDescriptor desc, WelcomePortalForm form) {
-		this.desc = desc;
-		this.form = form;
-		setDescriptionPainted(false);
-		setCollapsable(true);
-		setHeaderText(desc.getName());
-		makeHyperlinkActions();
-	}
-
-	private void makeHyperlinkActions() {
-		IActionBars bars =
-			form.getPortal().getEditor().getEditorSite().getActionBars();
-		httpAction = new HTTPAction() {
-			public void linkActivated(IHyperlinkSegment link) {
-				String url = link.getArg();
-				if (url != null)
-					WelcomePortal.showURL(link.getText(), url);
-			}
-		};
-		httpAction.setStatusLineManager(bars.getStatusLineManager());
-		eclipseAction = new HyperlinkAction() {
-			public void linkActivated(IHyperlinkSegment link) {
-				String arg = link.getArg();
-				if (arg != null)
-					runEclipseAction(arg);
-			}
-		};
-		eclipseAction.setStatusLineManager(bars.getStatusLineManager());
-		helpAction = new HyperlinkAction() {
-			public void linkActivated(IHyperlinkSegment link) {
-				String arg = link.getArg();
-				if (arg != null)
-					openEclipseHelp(arg);
-			}
-		};
-		helpAction.setStatusLineManager(bars.getStatusLineManager());
-	}
-	public Composite createClient(
-		Composite parent,
-		FormWidgetFactory factory) {
-		IConfigurationElement config = desc.getConfig();
-		formContainer = factory.createComposite(parent);
-		HTMLTableLayout layout = new HTMLTableLayout();
-		formContainer.setLayout(layout);
-		layout.topMargin = layout.bottomMargin = 0;
-		layout.leftMargin = layout.rightMargin = 0;
-		IConfigurationElement[] children = config.getChildren();
-		for (int i = 0; i < children.length; i++) {
-			IConfigurationElement child = children[i];
-			if (child.getName().equals("form")) {
-				createForm(formContainer, child, factory);
-			}
-		}
-		return formContainer;
-	}
-
-	private void createForm(
-		final Composite parent,
-		IConfigurationElement config,
-		FormWidgetFactory factory) {
-		String type = config.getAttribute("type");
-		if (type != null && type.equals("custom")) {
-			createCustomForm(parent, config, factory);
-			return;
-		}
-		final FormEngine engine = factory.createFormEngine(parent);
-		//engine.setBackground(parent.getDisplay().getSystemColor(SWT.COLOR_CYAN));
-		engine.setHyperlinkSettings(factory.getHyperlinkHandler());
-		TableData td = new TableData(TableData.FILL, TableData.TOP);
-		td.grabHorizontal = true;
-		engine.setLayoutData(td);
-		engine.registerTextObject("url", httpAction);
-		engine.registerTextObject("action", eclipseAction);
-		engine.registerTextObject("help", helpAction);
-		if (type == null || type.equals("local")) {
-			String value = config.getValue();
-			engine.load("<form>" + value + "</form>", true, false);
-		} else if (type.equals("dynamic")) {
-			IFormContentProvider provider = createContentProvider(config);
-			if (provider!=null) {
-				engine.load(provider.getContent(), true, false);
-				provider.setContentObserver(new IFormContentObserver() {
-					public void contentChanged(IFormContentProvider provider) {
-						engine.load(provider.getContent(), true, false);
-						reflow();
-					}
-				});
-			}
-		} else if (type.equals("remote")) {
-			String urlName = config.getAttribute("url");
-			try {
-				final URL url = new URL(urlName);
-				Runnable loader = new Runnable() {
-					public void run() {
-						InputStream is = null;
-						try {
-							is = url.openStream();
-							engine.load(is, false);
-							parent.getDisplay().syncExec(new Runnable() {
-								public void run() {
-									reflow();
-								}
-							});
-						} catch (final IOException e) {
-							parent.getDisplay().syncExec(new Runnable() {
-								public void run() {
-									WelcomePortal.logException(e);
-								}
-							});
-
-						} finally {
-							try {
-								if (is != null)
-									is.close();
-							} catch (IOException e) {
-							}
-						}
-					}
-				};
-				Thread t = new Thread(loader);
-				t.start();
-			} catch (MalformedURLException e) {
-				WelcomePortal.logException(e);
-			}
-		}
-	}
-
-	private void createCustomForm(
-		Composite parent,
-		IConfigurationElement config,
-		FormWidgetFactory factory) {
-		try {
-			Object obj = config.createExecutableExtension("class");
-			if (obj instanceof IPortalSectionForm) {
-				IPortalSectionForm psection = (IPortalSectionForm) obj;
-				//psection.init(form.getPortal());
-				Control control = psection.createControl(parent, factory);
-				TableData td = new TableData(TableData.FILL, TableData.TOP);
-				td.grabHorizontal = true;
-				control.setLayoutData(td);
-			}
-		} catch (CoreException e) {
-			WelcomePortal.logException(e);
-		}
-	}
-	
-	private IFormContentProvider createContentProvider(IConfigurationElement config) {
-		try {
-			Object obj = config.createExecutableExtension("class");
-			if (obj instanceof IFormContentProvider) {
-				return (IFormContentProvider) obj;
-			}
-		} catch (CoreException e) {
-			WelcomePortal.logException(e);
-		}
-		return null;
-	}
-	protected void reflow() {
-		formContainer.layout();
-		super.reflow();
-		form.updateSize();
-	}
-
-	private void runEclipseAction(final String arg) {
-		BusyIndicator
-			.showWhile(form.getControl().getDisplay(), new Runnable() {
-			public void run() {
-				final IAction action = getEclipseAction(arg);
-				if (action != null)
-					action.run();
-			}
-		});
-	}
-
-	private IAction getEclipseAction(String arg) {
-		if (eclipseActions == null) {
-			eclipseActions = new Hashtable();
-		}
-		IAction action = (IAction) eclipseActions.get(arg);
-		if (action != null)
-			return action;
-		// load
-		int col = arg.indexOf(':');
-		String pluginId = arg.substring(0, col);
-		String className = arg.substring(col + 1);
-		IPluginDescriptor desc =
-			Platform.getPluginRegistry().getPluginDescriptor(pluginId);
-		if (desc == null) {
-			logActionLinkError(pluginId, className);
-			return null;
-		}
-		Class actionClass;
-		try {
-			actionClass = desc.getPluginClassLoader().loadClass(className);
-		} catch (ClassNotFoundException e) {
-			logActionLinkError(pluginId, className);
-			return null;
-		}
-		try {
-			Object obj = actionClass.newInstance();
-			if (obj instanceof IAction)
-				action = (IAction) obj;
-			else
-				action = new ActionWrapper(arg, (IActionDelegate) obj);
-		} catch (InstantiationException e) {
-			logActionLinkError(pluginId, className);
-			return null;
-		} catch (IllegalAccessException e) {
-			logActionLinkError(pluginId, className);
-			return null;
-		} catch (ClassCastException e) {
-			logActionLinkError(pluginId, className);
-			return null;
-		}
-		eclipseActions.put(arg, action);
-		return action;
-	}
-
-	private void logActionLinkError(String pluginId, String className) {
-		IStatus status =
-			new Status(
-				IStatus.ERROR,
-				WelcomePortal.getPluginId(),
-				IStatus.OK,
-				"Unable to load class "
-					+ className
-					+ " from plug-in "
-					+ pluginId
-					+ ".",
-				null);
-		WelcomePortal.log(status, true);
-	}
-	
-	private void openEclipseHelp(String arg) {
-		WorkbenchHelp.getHelpSupport().displayHelpResource(arg);
-	}
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/SectionDescriptor.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/SectionDescriptor.java
deleted file mode 100644
index 1f497b0..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/SectionDescriptor.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Created on Jun 19, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.welcome.internal.portal;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-
-/**
- * @author dejan
- *
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class SectionDescriptor {
-	private IConfigurationElement config;
-	
-	public SectionDescriptor(IConfigurationElement config) {
-		this.config = config;
-	}
-	
-	public String getId() {
-		return config.getAttribute("id");
-	}
-	
-	public String getName() {
-		return config.getAttribute("name");
-	}
-	public IConfigurationElement getConfig() {
-		return config;
-	}
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalEditor.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalEditor.java
deleted file mode 100644
index 23412e6..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalEditor.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * Created on Jun 19, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.welcome.internal.portal;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.*;
-import org.eclipse.ui.part.EditorPart;
-
-/**
- * @author dejan
- *
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class WelcomePortalEditor extends EditorPart {
-	private WelcomePortalPart welcomePart;
-	
-	public WelcomePortalEditor() {
-		welcomePart = new WelcomePortalPart(this);
-	}
-
-	public void dispose() {
-		if (welcomePart!=null)
-			welcomePart.dispose();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.ISaveablePart#doSave(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public void doSave(IProgressMonitor monitor) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.ISaveablePart#doSaveAs()
-	 */
-	public void doSaveAs() {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IEditorPart#gotoMarker(org.eclipse.core.resources.IMarker)
-	 */
-	public void gotoMarker(IMarker marker) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IEditorPart#init(org.eclipse.ui.IEditorSite, org.eclipse.ui.IEditorInput)
-	 */
-	public void init(IEditorSite site, IEditorInput input)
-		throws PartInitException {
-		if (!(input instanceof WelcomePortalEditorInput))
-			throw new PartInitException("Invalid Input: Must be WelcomePortalEditorInput");
-		setSite(site);
-		setInput(input);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.ISaveablePart#isDirty()
-	 */
-	public boolean isDirty() {
-		return false;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.ISaveablePart#isSaveAsAllowed()
-	 */
-	public boolean isSaveAsAllowed() {
-		return false;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public void createPartControl(Composite parent) {
-		welcomePart.createControl(parent);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchPart#setFocus()
-	 */
-	public void setFocus() {
-	}
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalEditorInput.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalEditorInput.java
deleted file mode 100644
index 93f1f42..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalEditorInput.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.welcome.internal.portal;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.*;
-/**
- * A simple editor input for the welcome editor
- */
-public class WelcomePortalEditorInput implements IEditorInput {
-	private final static String FACTORY_ID = "org.eclipse.welcome.internal.portal.WelcomePortalEditorInputFactory"; //$NON-NLS-1$
-	/**
-	 * WelcomeEditorInput constructor comment.
-	 */
-	public WelcomePortalEditorInput() {
-	}
-	public boolean exists() {
-		return false;
-	}
-	public Object getAdapter(Class adapter) {
-		return null;
-	}
-	public ImageDescriptor getImageDescriptor() {
-		return null;
-	}
-	public String getName() {
-		return "Welcome";
-	}
-	public boolean equals(Object obj) {
-		if (obj==null) return false;
-		if (obj == this) return true;
-		if (obj instanceof WelcomePortalEditorInput) {
-			WelcomePortalEditorInput wobj = (WelcomePortalEditorInput)obj;
-			return true;
-		}
-		return false;
-	}
-	public IPersistableElement getPersistable() {
-		return new IPersistableElement() {
-			public String getFactoryId() {
-				return FACTORY_ID;
-			}
-			public void saveState(IMemento memento) {
-			}
-		};
-	}
-	public String getToolTipText() {
-		return getName();
-	}
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalEditorInputFactory.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalEditorInputFactory.java
deleted file mode 100644
index 30c76f3..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalEditorInputFactory.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package org.eclipse.welcome.internal.portal;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.ui.*;
-import org.eclipse.ui.IElementFactory;
-
-/**
- */
-public class WelcomePortalEditorInputFactory implements IElementFactory {
-	/**
-	 */
-	public WelcomePortalEditorInputFactory() {
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IElementFactory#createElement(org.eclipse.ui.IMemento)
-	 */
-	public IAdaptable createElement(IMemento memento) {
-		return new WelcomePortalEditorInput();
-	}
-
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalForm.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalForm.java
deleted file mode 100644
index e4a44b0..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalForm.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Created on Jun 19, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.welcome.internal.portal;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.update.ui.forms.internal.*;
-
-/**
- * @author dejan
- *
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class WelcomePortalForm extends WebForm {
-	private WelcomePortalPart portal;
-	private IConfigurationElement pageConfig;
-
-	public WelcomePortalForm(WelcomePortalPart portal, IConfigurationElement pageConfig) {
-		this.portal = portal;
-		this.pageConfig = pageConfig;
-		setHeadingVisible(false);
-	}
-	
-	public void initialize(Object model) {
-		update();
-	}
-	
-	public WelcomePortalPart getPortal() {
-		return portal;
-	}
-	
-	protected void createContents(Composite parent) {
-		HTMLTableLayout layout = new HTMLTableLayout();
-		parent.setLayout(layout);
-		layout.numColumns = getInteger(pageConfig, "numColumns", 1);
-		layout.topMargin = 0;
-		layout.leftMargin = layout.rightMargin = 10;
-		layout.horizontalSpacing=15;
-		layout.verticalSpacing = 5;
-		//parent.setBackground(parent.getDisplay().getSystemColor(SWT.COLOR_GREEN));
-		layout.makeColumnsEqualWidth=true;
-		SelectableFormLabel customize = getFactory().createSelectableLabel(parent, "Customize...");
-		getFactory().turnIntoHyperlink(customize, new HyperlinkAdapter() {
-			public void linkActivated(Control link) {
-			}
-		});
-		TableData td = new TableData();
-		td.align = TableData.CENTER;
-		td.colspan = layout.numColumns;
-		customize.setLayoutData(td);
-		
-		IConfigurationElement [] sectionRefs = pageConfig.getChildren("section");
-		for (int i=0; i<sectionRefs.length; i++) {
-			IConfigurationElement sectionRef = sectionRefs[i];
-			String id = sectionRef.getAttribute("id");
-			SectionDescriptor desc = portal.findSection(id);
-			if (desc==null) continue;
-			PortalSection section = new PortalSection(desc, this);
-			Control control = section.createControl(parent, getFactory());
-			int span = getInteger(sectionRef, "span", 1);
-			td = new TableData(TableData.FILL, TableData.TOP);
-			td.colspan = span;
-			td.grabHorizontal = true;
-			control.setLayoutData(td);
-			registerSection(section);
-		}
-	}
-
-	private int getInteger(IConfigurationElement config, String attName, int def) {
-		String value = config.getAttribute(attName);
-		if (value!=null) {
-			try {
-				return Integer.parseInt(value);
-			}
-			catch (NumberFormatException e) {
-			}
-		}
-		return def;
-	}
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalPage.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalPage.java
deleted file mode 100644
index f4334d1..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalPage.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Created on Jun 19, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.welcome.internal.portal;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.update.ui.forms.internal.*;
-
-/**
- * @author dejan
- *
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class WelcomePortalPage implements IFormPage {
-	private Control control;
-	private String name;
-	private WelcomePortalPart portal;
-	private WelcomePortalForm form;
-	private IConfigurationElement config;
-	private SelectableFormLabel tab;
-	
-	public WelcomePortalPage(WelcomePortalPart portal, IConfigurationElement config) {
-		this.portal = portal;
-		this.form = new WelcomePortalForm(portal, config);
-		this.name = config.getAttribute("name");
-		this.config = config;
-	}
-	
-	public void setTab(SelectableFormLabel tab) {
-		this.tab = tab;
-	}
-	
-	public SelectableFormLabel getTab() {
-		return tab;
-	}
-
-	public boolean becomesInvisible(IFormPage newPage) {
-		return true;
-	}
-
-	public void becomesVisible(IFormPage previousPage) {
-	}
-
-	public void createControl(Composite parent) {
-		this.control = form.createControl(parent);
-		form.initialize(null);
-	}
-
-	public Control getControl() {
-		return control;
-	}
-
-	public String getLabel() {
-		return name;
-	}
-
-	public String getTitle() {
-		return name;
-	}
-
-	public boolean isSource() {
-		return false;
-	}
-
-	public boolean isVisible() {
-		return portal.isVisible(this);
-	}
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalPart.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalPart.java
deleted file mode 100644
index cd36701..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomePortalPart.java
+++ /dev/null
@@ -1,183 +0,0 @@
-/*
- * Created on Jun 19, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.welcome.internal.portal;
-
-import java.util.Hashtable;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.update.ui.forms.internal.*;
-import org.eclipse.welcome.internal.WelcomePortal;
-
-/**
- * @author dejan
- *
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class WelcomePortalPart {
-	private static final int TAB_PADDING = 5;
-	private Hashtable sectionDescriptors;
-	class TabListener implements IHyperlinkListener {
-		public void linkActivated(Control linkLabel) {
-			IFormPage page = (IFormPage) linkLabel.getData();
-			workbook.selectPage(page, false);
-		}
-
-		public void linkEntered(Control linkLabel) {
-		}
-
-		public void linkExited(Control linkLabel) {
-			if (linkLabel==selectedTab)
-				highlightTab(selectedTab, true);
-		}
-	}
-
-	private TabListener tabListener = new TabListener();
-	private Composite tabContainer;
-	private FormWidgetFactory factory;
-	private HyperlinkHandler hhandler;
-	private WelcomePortalEditor editor;
-	private Color tabColor;
-	private NoTabsWorkbook workbook;
-	private SelectableFormLabel selectedTab;
-
-	public WelcomePortalPart(WelcomePortalEditor editor) {
-		factory = new FormWidgetFactory();
-		hhandler = new HyperlinkHandler();
-		workbook = new NoTabsWorkbook();
-		this.editor = editor;
-	}
-	
-	public WelcomePortalEditor getEditor() {
-		return editor;
-	}
-
-	public void dispose() {
-		factory.dispose();
-		hhandler.dispose();
-	}
-	
-	public boolean isVisible(IFormPage page) {
-		return workbook.getCurrentPage().equals(page);
-	}
-
-	public void createControl(Composite parent) {
-		Composite container = factory.createComposite(parent);
-		GridLayout layout = new GridLayout();
-		layout.marginWidth = layout.marginHeight = 0;
-		layout.numColumns = 2;
-		layout.verticalSpacing = 0;
-		layout.horizontalSpacing = 0;
-		container.setLayout(layout);
-		createTitle(container);
-		createTabs(container);
-		workbook.createControl(container);
-		workbook.getControl().setLayoutData(new GridData(GridData.FILL_BOTH));
-		workbook.addFormSelectionListener(new IFormSelectionListener() {
-			public void formSelected(IFormPage page, boolean setFocus) {
-				hightlightTab((WelcomePortalPage) page);
-			}
-		});
-		workbook.selectPage(workbook.getPages()[0], true);
-	}
-
-	private void createTitle(Composite parent) {
-		WelcomeTitleArea title = new WelcomeTitleArea(parent, SWT.NULL);
-		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.horizontalSpan = 2;
-		title.setLayoutData(gd);
-		title.setText("Welcome");
-		title.setBackground(factory.getBackgroundColor());
-		title.setForeground(factory.getForegroundColor());
-		title.setFont(JFaceResources.getHeaderFont());
-	}
-
-	private void createTabs(Composite parent) {
-		tabContainer = factory.createComposite(parent);
-		tabContainer.addPaintListener(new PaintListener() {
-			public void paintControl(PaintEvent e) {
-				Point size = tabContainer.getSize();
-				Rectangle tabBounds = selectedTab.getBounds();
-				GC gc = e.gc;
-				gc.setBackground(factory.getBackgroundColor());
-				gc.fillRectangle(0, tabBounds.y-TAB_PADDING, size.x, tabBounds.height+TAB_PADDING+TAB_PADDING);
-			}
-		});
-		tabColor =
-			factory.getColor(FormWidgetFactory.COLOR_COMPOSITE_SEPARATOR);
-		tabContainer.setBackground(tabColor);
-		GridLayout layout = new GridLayout();
-		layout.marginWidth = 10;
-		layout.marginHeight = TAB_PADDING;
-		layout.verticalSpacing = TAB_PADDING + TAB_PADDING;
-		tabContainer.setLayout(layout);
-		GridData gd = new GridData(GridData.FILL_VERTICAL);
-		tabContainer.setLayoutData(gd);
-		hhandler.setBackground(tabColor);
-		hhandler.setForeground(factory.getBackgroundColor());
-		hhandler.setHyperlinkUnderlineMode(
-			HyperlinkSettings.UNDERLINE_ROLLOVER);
-		loadTabs(tabContainer);
-	}
-	
-	private void loadTabs(Composite parent) {
-		IConfigurationElement [] pages = Platform.getPluginRegistry().getConfigurationElementsFor(WelcomePortal.getPluginId(), "welcomePages");
-		for (int i=0; i<pages.length; i++) {
-			createTab(parent, pages[i]);
-		}
-	}
-
-	private void createTab(
-		Composite parent,
-		IConfigurationElement config) {
-		WelcomePortalPage page = new WelcomePortalPage(this, config);
-		SelectableFormLabel tab = factory.createSelectableLabel(parent, page.getTitle());
-		GridData gd = new GridData(GridData.VERTICAL_ALIGN_BEGINNING);
-		tab.setBackground(tabColor);
-		tab.setForeground(factory.getBackgroundColor());
-		hhandler.registerHyperlink(tab, tabListener);
-		tab.setFont(JFaceResources.getBannerFont());
-		tab.setLayoutData(gd);
-		tab.setData(page);
-		page.setTab(tab);
-		workbook.addPage(page);
-	}
-
-	private void hightlightTab(WelcomePortalPage page) {
-		if (selectedTab != null)
-			highlightTab(selectedTab, false);
-		SelectableFormLabel tab = page.getTab();
-		highlightTab(tab, true);
-		selectedTab = tab;
-		tabContainer.redraw();
-	}
-
-	private void highlightTab(SelectableFormLabel tab, boolean selected) {
-		Color bg = tabColor;
-		Color fg = factory.getBackgroundColor();
-		tab.setForeground(selected ? bg : fg);
-		tab.setBackground(selected ? fg : bg);
-	}
-
-	public SectionDescriptor findSection(String id) {
-		if (sectionDescriptors==null) {
-			sectionDescriptors=new Hashtable();
-			IConfigurationElement [] sections = Platform.getPluginRegistry().getConfigurationElementsFor(WelcomePortal.getPluginId(), "welcomeSections");
-			for (int i=0; i<sections.length; i++) {
-				SectionDescriptor desc = new SectionDescriptor(sections[i]);
-				sectionDescriptors.put(desc.getId(), desc);
-			}
-		}
-		return (SectionDescriptor)sectionDescriptors.get(id);
-	}
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomeTitleArea.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomeTitleArea.java
deleted file mode 100644
index 8c60003..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/portal/WelcomeTitleArea.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Created on Jun 19, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.welcome.internal.portal;
-
-import org.eclipse.swt.events.PaintEvent;
-import org.eclipse.swt.graphics.*;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.update.ui.forms.internal.FormLabel;
-import org.eclipse.welcome.internal.WelcomePortalImages;
-
-/**
- * @author dejan
- *
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class WelcomeTitleArea extends FormLabel {
-	private Image topImage;
-	private Image bottomImage;
-
-	public WelcomeTitleArea(Composite parent, int style) {
-		super(parent, style);
-		topImage = WelcomePortalImages.get(WelcomePortalImages.IMG_FORM_BANNER);
-		bottomImage = WelcomePortalImages.get(WelcomePortalImages.IMG_FORM_UNDERLINE);
-	}
-	public Point computeSize(int wHint, int hHint, boolean changed) {
-		Point textSize = super.computeSize(wHint, hHint, changed);
-		int width = textSize.x;
-		int height = Math.max(textSize.y, topImage.getBounds().height);
-		height += bottomImage.getBounds().height;
-		return new Point(width, height);
-	}
-	protected void paint(PaintEvent e) {
-		GC gc = e.gc;
-		Rectangle bounds = getBounds();
-		gc.drawImage(topImage, bounds.x, bounds.y);
-		int y =	bounds.y + bounds.height - bottomImage.getBounds().height;
-		gc.drawImage(bottomImage, 0, y);
-		super.paint(e);
-	}
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/BrowserControlSite.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/BrowserControlSite.java
deleted file mode 100644
index 26b7024..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/BrowserControlSite.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.welcome.internal.webbrowser;
-
-import org.eclipse.jface.action.IStatusLineManager;
-import org.eclipse.swt.ole.win32.*;
-import org.eclipse.swt.widgets.Composite;
-
-/**
- * Needed for the OLE implementation
- */
-public class BrowserControlSite extends OleControlSite {
-
-	protected boolean beenBuilt = false;
-	protected boolean startedDownload = false;
-	// Web Browser
-	private WebBrowser browser;
-	private String presentationURL;
-	private IStatusLineManager statusLineManager;
-	private int workSoFar = 0;
-	private int prevMax = 0;
-
-	public void setStatusLineManager(IStatusLineManager manager) {
-		this.statusLineManager = manager;
-	}
-
-	void setBrowser(WebBrowser browser) {
-		this.browser = browser;
-	}
-
-	public String getPresentationURL() {
-		return presentationURL;
-	}
-
-	/**
-	 * BrowserControlSite constructor
-	 */
-	public BrowserControlSite(Composite parent, int style, String progId) {
-		super(parent, style, progId);
-
-		addEventListener(WebBrowser.DownloadBegin, new OleListener() {
-			public void handleEvent(OleEvent event) {
-				startedDownload = true;
-				//webProgress.setSelection(0);
-				prevMax = -1;
-			}
-		});
-
-		addEventListener(WebBrowser.DownloadComplete, new OleListener() {
-			public void handleEvent(OleEvent event) {
-				startedDownload = false;
-				//webProgress.setSelection(0);
-				if (statusLineManager != null)
-					statusLineManager.getProgressMonitor().done();
-				presentationURL = browser.getLocationURL();
-			}
-		});
-
-		addEventListener(WebBrowser.BeforeNavigate2, new OleListener() {
-			public void handleEvent(OleEvent event) {
-				//Variant urlVar = event.arguments[1];
-				//String strUrl = urlVar.getString();
-			}
-		});
-
-		// Respond to ProgressChange events by updating the Progress bar
-		addEventListener(WebBrowser.ProgressChange, new OleListener() {
-			public void handleEvent(OleEvent event) {
-				if (!startedDownload) {
-					return;
-				}
-
-				Variant progress = event.arguments[0];
-				Variant maxProgress = event.arguments[1];
-
-				if (progress == null || maxProgress == null || progress.getInt() == -1) {
-					return;
-				}
-				/*
-				if (maxProgress.getInt()!=100)
-				   webProgress.setMaximum(maxProgress.getInt());
-				*/
-				if (prevMax != maxProgress.getInt()) {
-					statusLineManager.getProgressMonitor().beginTask("", maxProgress.getInt());
-					prevMax = maxProgress.getInt();
-				}
-				//webProgress.setSelection(progress.getInt());
-				int newValue = progress.getInt();
-				int worked = newValue - workSoFar;
-				workSoFar = newValue;
-				if (statusLineManager != null)
-					statusLineManager.getProgressMonitor().worked(worked);
-			}
-		});
-
-		addEventListener(WebBrowser.StatusTextChange, new OleListener() {
-			public void handleEvent(OleEvent event) {
-				Variant newText = event.arguments[0];
-				String msg = newText.getString();
-
-				if (msg != null) {
-					if (statusLineManager != null)
-						statusLineManager.setMessage(msg);
-				} else {
-					if (statusLineManager != null)
-						statusLineManager.setMessage("");
-				}
-			}
-		});
-	}
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/GlobalActionHandler.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/GlobalActionHandler.java
deleted file mode 100644
index efb3c23..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/GlobalActionHandler.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.welcome.internal.webbrowser;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.ui.*;
-import org.eclipse.ui.IWorkbenchActionConstants;
-
-/**
- *
- */
-public class GlobalActionHandler {
-	private boolean active = false;
-	private Combo combo;
-	private ControlListener controlListener;
-
-	private class ControlListener implements Listener {
-		public void handleEvent(Event event) {
-			switch (event.type) {
-				case SWT.Activate :
-					active = true;
-					updateActionsEnableState();
-					break;
-				case SWT.Deactivate :
-					active = false;
-					updateActionsEnableState();
-					break;
-				default :
-					break;
-			}
-		}
-	}
-
-	private class GlobalAction extends Action {
-		private String id;
-
-		public GlobalAction(String id) {
-			this.id = id;
-		}
-
-		public void run() {
-			doGlobalAction(id);
-		}
-	}
-
-	private GlobalAction cutAction;
-	private GlobalAction copyAction;
-	private GlobalAction pasteAction;
-	private GlobalAction deleteAction;
-	private GlobalAction selectAllAction;
-	private GlobalAction undoAction;
-
-	public GlobalActionHandler(IActionBars actionBar, Combo combo) {
-		this.combo = combo;
-		makeActions();
-		actionBar.setGlobalActionHandler(
-			IWorkbenchActionConstants.CUT,
-			cutAction);
-		actionBar.setGlobalActionHandler(
-			IWorkbenchActionConstants.COPY,
-			copyAction);
-		actionBar.setGlobalActionHandler(
-			IWorkbenchActionConstants.PASTE,
-			pasteAction);
-		actionBar.setGlobalActionHandler(
-			IWorkbenchActionConstants.DELETE,
-			deleteAction);
-		actionBar.setGlobalActionHandler(
-			IWorkbenchActionConstants.SELECT_ALL,
-			selectAllAction);
-		actionBar.setGlobalActionHandler(
-			IWorkbenchActionConstants.UNDO,
-			undoAction);
-		controlListener = new ControlListener();
-		combo.addListener(SWT.Activate, controlListener);
-		combo.addListener(SWT.Deactivate, controlListener);
-	}
-
-	public void dispose() {
-		if (!combo.isDisposed()) {
-			combo.removeListener(SWT.Activate, controlListener);
-			combo.removeListener(SWT.Deactivate, controlListener);
-		}
-	}
-
-	private void makeActions() {
-		cutAction = new GlobalAction(IWorkbenchActionConstants.CUT);
-		copyAction = new GlobalAction(IWorkbenchActionConstants.COPY);
-		pasteAction = new GlobalAction(IWorkbenchActionConstants.PASTE);
-		deleteAction = new GlobalAction(IWorkbenchActionConstants.DELETE);
-		selectAllAction =
-			new GlobalAction(IWorkbenchActionConstants.SELECT_ALL);
-		undoAction = new GlobalAction(IWorkbenchActionConstants.UNDO);
-	}
-
-	private void updateActionsEnableState() {
-		if (!active) {
-			cutAction.setEnabled(false);
-			copyAction.setEnabled(false);
-			pasteAction.setEnabled(false);
-			deleteAction.setEnabled(false);
-			selectAllAction.setEnabled(false);
-			undoAction.setEnabled(false);
-		} else {
-			cutAction.setEnabled(true);
-			copyAction.setEnabled(true);
-			pasteAction.setEnabled(true);
-			deleteAction.setEnabled(true);
-			selectAllAction.setEnabled(true);
-			undoAction.setEnabled(true);
-		}
-	}
-
-	private void doGlobalAction(String id) {
-		if (id.equals(IWorkbenchActionConstants.CUT))
-			combo.cut();
-		else if (id.equals(IWorkbenchActionConstants.COPY))
-			combo.copy();
-		else if (id.equals(IWorkbenchActionConstants.PASTE))
-			combo.paste();
-		else if (id.equals(IWorkbenchActionConstants.DELETE))
-			doDelete();
-		else if (id.equals(IWorkbenchActionConstants.SELECT_ALL))
-			doSelectAll();
-	}
-
-	private void doDelete() {
-		String text = combo.getText();
-		Point selection = combo.getSelection();
-		if (selection.x == selection.y)
-			return;
-		String left = text.substring(0, selection.x);
-		String right = text.substring(selection.y + 1);
-		combo.setText(left + right);
-	}
-
-	private void doSelectAll() {
-		String text = combo.getText();
-		Point newSelection = new Point(0, text.length());
-		combo.setSelection(newSelection);
-	}
-}
\ No newline at end of file
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/IEmbeddedWebBrowser.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/IEmbeddedWebBrowser.java
deleted file mode 100644
index 7a914b4..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/IEmbeddedWebBrowser.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.welcome.internal.webbrowser;
-
-public interface IEmbeddedWebBrowser {
-	public void openTo(String url);
-	public void setListener(IWebBrowserListener listener);
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/IWebBrowserListener.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/IWebBrowserListener.java
deleted file mode 100644
index 2d34243..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/IWebBrowserListener.java
+++ /dev/null
@@ -1,18 +0,0 @@
-/*
- * Created on Jun 18, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.welcome.internal.webbrowser;
-
-/**
- * @author dejan
- *
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public interface IWebBrowserListener {
-	void stateChanged();
-
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowser.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowser.java
deleted file mode 100644
index 18ec8cf..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowser.java
+++ /dev/null
@@ -1,467 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.welcome.internal.webbrowser;
-import org.eclipse.core.runtime.*;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.ole.win32.*;
-import org.eclipse.swt.widgets.*;
-
-/**
- * ActiveX based web browser control.
- */
-public class WebBrowser implements OleListener {
-	// Generated from typelib filename: shdocvw.dll
-
-	// Constants for WebBrowser CommandStateChange
-
-	public static final short CSC_UPDATECOMMANDS = -1;
-	public static final short CSC_NAVIGATEFORWARD = 1;
-	public static final short CSC_NAVIGATEBACK = 2;
-
-	// Web Browser Control Events 
-	public static final int BeforeNavigate = 100;
-	// Fired when a new hyperlink is being navigated to.
-	public static final int NavigateComplete = 101;
-	// Fired when the document being navigated to becomes visible and enters the navigation stack.
-	public static final int StatusTextChange = 102;
-	// Statusbar text changed.
-	public static final int ProgressChange = 108;
-	// Fired when download progress is updated.
-	public static final int DownloadComplete = 104;
-	// Download of page complete.
-	public static final int CommandStateChange = 105;
-	// The enabled state of a command changed
-	public static final int DownloadBegin = 106;
-	// Download of a page started.
-	public static final int NewWindow = 107;
-	// Fired when a new window should be created.
-	public static final int TitleChange = 113;
-	// Document title changed.
-	public static final int FrameBeforeNavigate = 200;
-	// Fired when a new hyperlink is being navigated to in a frame.
-	public static final int FrameNavigateComplete = 201;
-	// Fired when a new hyperlink is being navigated to in a frame.
-	public static final int FrameNewWindow = 204;
-	// Fired when a new window should be created.
-	public static final int Quit = 103;
-	// Fired when application is quiting.
-	public static final int WindowMove = 109;
-	// Fired when window has been moved.
-	public static final int WindowResize = 110;
-	// Fired when window has been sized.
-	public static final int WindowActivate = 111;
-	// Fired when window has been activated.
-	public static final int PropertyChange = 112;
-	// Fired when the PutProperty method has been called.
-	public static final int BeforeNavigate2 = 250;
-	// Fired when a new hyperlink is being navigated to.
-	public static final int NewWindow2 = 251;
-	// Fired when a new window should be created.
-	public static final int DocumentComplete = 259;
-	// Fired when the document being navigated to reaches ReadyState_Complete.
-
-	// Web Browser properties
-	public static final int DISPID_READYSTATE = -525;
-
-	// Web Browser state
-	public static final int READYSTATE_UNINITIALIZED = 0;
-	public static final int READYSTATE_LOADING = 1;
-	public static final int READYSTATE_LOADED = 2;
-	public static final int READYSTATE_INTERACTIVE = 3;
-	public static final int READYSTATE_COMPLETE = 4;
-
-	// Keep track of the whether it is possible to navigate in the forward and backward directions
-	private boolean backwardEnabled;
-	private boolean forwardEnabled;
-
-	// The automation object and Control associated with the main OLE control
-	private OleAutomation oleObject;
-	private BrowserControlSite controlSite;
-
-	// The OLE frame (there should only be one)
-	private OleFrame controlFrame;
-
-	//private NestedPrintDelegate aPrintDelegate = null;
-
-	/**
-	 */
-	public WebBrowser(Composite parent) {
-
-		// Create the OLE frame. 
-		controlFrame = createOleFrame(parent);
-
-		// Creates the IE5 OLE Control
-		// The constructor also registers all the necessary OLE listeners.
-		// for now, only catch the execption if creating and activating the 
-		// control fails. No checking if the correct version of the OLE control 
-		// is installed.
-		try {
-			controlSite =
-				new BrowserControlSite(
-					controlFrame,
-					SWT.NONE,
-					"Shell.Explorer");
-			controlSite.setBrowser(this);
-			oleObject = new OleAutomation(controlSite);
-
-			backwardEnabled = false;
-			forwardEnabled = false;
-
-			// Listen for changes to the Command States
-			controlSite.addEventListener(CommandStateChange, this);
-
-			// initialize control
-			controlSite.doVerb(OLE.OLEIVERB_SHOW);
-
-			// create print Delegate (has to be done early, here!).
-			//aPrintDelegate = new NestedPrintDelegate(this, oleObject, controlSite);
-
-		} catch (Exception e) {
-			String id = "org.eclipse.update.ui.win32";
-			IStatus status =
-				new Status(IStatus.ERROR, id, IStatus.OK, e.getMessage(), e);
-			Platform.getPlugin("org.eclipse.core.runtime").getLog().log(status);
-		}
-	}
-	/**
-	 */
-	public int back() {
-
-		if (!backwardEnabled)
-			return OLE.S_FALSE;
-		forwardEnabled = true;
-
-		// dispid=100, type=METHOD, name="GoBack"
-
-		// You can hard code the DISPID if you know it before hand - this is of course the fastest way
-		//int dispIdMember = 100;
-
-		// Alternatively, you can look up the DISPID dynamically
-		int[] rgdispid = oleObject.getIDsOfNames(new String[] { "GoBack" });
-		int dispIdMember = rgdispid[0];
-
-		Variant pVarResult = oleObject.invoke(dispIdMember);
-
-		if (pVarResult == null || pVarResult.getType() == OLE.VT_EMPTY)
-			return 0;
-		return pVarResult.getInt();
-	}
-	/**
-	 */
-	public int copy() {
-		int result = controlSite.queryStatus(OLE.OLECMDID_COPY);
-		if ((result & OLE.OLECMDF_ENABLED) == OLE.OLECMDF_ENABLED) {
-			result =
-				controlSite.exec(
-					OLE.OLECMDID_COPY,
-					OLE.OLECMDEXECOPT_DODEFAULT,
-					null,
-					null);
-		}
-		return result;
-	}
-	protected OleFrame createOleFrame(Composite parent) {
-		if (controlFrame == null) {
-			controlFrame = new OleFrame(parent, SWT.NONE);
-			controlFrame.setLayoutData(
-				new GridData(
-					GridData.GRAB_HORIZONTAL
-						| GridData.GRAB_VERTICAL
-						| GridData.HORIZONTAL_ALIGN_FILL
-						| GridData.VERTICAL_ALIGN_FILL));
-		}
-		return controlFrame;
-
-	}
-	/**
-	 * clean up
-	 */
-	public void dispose() {
-		//** clean up
-		if (oleObject != null)
-			oleObject.dispose();
-		oleObject = null;
-
-		if (controlSite != null)
-			controlSite.dispose();
-		controlSite = null;
-
-		if (controlFrame != null)
-			controlFrame.dispose();
-		controlFrame = null;
-
-	}
-	/**
-	 */
-	public int forward() {
-		if (!forwardEnabled)
-			return OLE.S_FALSE;
-		backwardEnabled = true;
-		// dispid=101, type=METHOD, name="GoForward"
-
-		// You can hard code the DISPID if you know it before hand - this is of course the fastest way
-		//int dispIdMember = 101;
-
-		// Alternatively, you can look up the DISPID dynamically
-		int[] rgdispid = oleObject.getIDsOfNames(new String[] { "GoForward" });
-		int dispIdMember = rgdispid[0];
-
-		Variant pVarResult = oleObject.invoke(dispIdMember);
-		if (pVarResult == null || pVarResult.getType() == OLE.VT_EMPTY)
-			return 0;
-		return pVarResult.getInt();
-	}
-	public Control getControl() {
-		return controlFrame;
-	}
-	/**
-	 */
-	public String getLocationName() {
-		// dispid=210, type=PROPGET, name="LocationName"
-
-		// You can hard code the DISPID if you know it before hand - this is of course the fastest way
-		//int dispIdMember = 210;
-
-		// Alternatively, you can look up the DISPID dynamically
-		int[] rgdispid =
-			oleObject.getIDsOfNames(new String[] { "LocationName" });
-		int dispIdMember = rgdispid[0];
-		Variant pVarResult = oleObject.getProperty(dispIdMember);
-		if (pVarResult == null || pVarResult.getType() == OLE.VT_EMPTY)
-			return null;
-		return pVarResult.getString();
-	}
-	/**
-	 */
-	public String getLocationURL() {
-		// dispid=211, type=PROPGET, name="LocationURL"
-		// You can hard code the DISPID if you know it before hand - this is of course the fastest way
-		//int dispIdMember = 211;
-
-		// Alternatively, you can look up the DISPID dynamically
-		int[] rgdispid =
-			oleObject.getIDsOfNames(new String[] { "LocationURL" });
-		int dispIdMember = rgdispid[0];
-
-		Variant pVarResult = oleObject.getProperty(dispIdMember);
-		if (pVarResult == null || pVarResult.getType() == OLE.VT_EMPTY)
-			return null;
-		return pVarResult.getString();
-	}
-	protected OleFrame getOleFrame() {
-		return controlFrame;
-
-	}
-
-	public BrowserControlSite getControlSite() {
-		return controlSite;
-	}
-	/**
-	 */
-	public int getReadyState() {
-		// dispid=4294966771, type=PROPGET, name="ReadyState"
-		// READYSTATE_UNINITIALIZED = 0;
-		// READYSTATE_LOADING = 1;
-		// READYSTATE_LOADED = 2;
-		// READYSTATE_INTERACTIVE = 3;
-		// READYSTATE_COMPLETE = 4;
-
-		// You can hard code the DISPID if you know it before hand - this is of course the fastest way
-		//int dispIdMember = -525;
-
-		// Alternatively, you can look up the DISPID dynamically
-		int[] rgdispid = oleObject.getIDsOfNames(new String[] { "ReadyState" });
-		int dispIdMember = rgdispid[0];
-
-		Variant pVarResult = oleObject.getProperty(dispIdMember);
-		if (pVarResult == null || pVarResult.getType() == OLE.VT_EMPTY)
-			return -1;
-		return pVarResult.getInt();
-	}
-	/**
-	 */
-	public void handleEvent(OleEvent event) {
-		switch (event.type) {
-			case (CommandStateChange) :
-				int command = 0;
-				boolean enabled = false;
-
-				Variant varResult = event.arguments[0];
-				if (varResult != null && varResult.getType() != OLE.VT_EMPTY) {
-					command = varResult.getInt();
-				}
-
-				varResult = event.arguments[1];
-				if (varResult != null && varResult.getType() != OLE.VT_EMPTY) {
-					enabled = varResult.getBoolean();
-				}
-
-				if (command == CSC_NAVIGATEBACK)
-					backwardEnabled = enabled;
-				if (command == CSC_NAVIGATEFORWARD)
-					forwardEnabled = enabled;
-
-				return;
-
-			case (DocumentComplete) :
-				varResult = event.arguments[0];
-				return;
-		}
-		//throw new OleError(OLE.ERROR_NOT_IMPLEMENTED);
-	}
-	/**
-	 */
-	public int home() {
-		// dispid=102, type=METHOD, name="GoHome"
-
-		// You can hard code the DISPID if you know it before hand - this is of course the fastest way
-		//int dispIdMember = 102;
-
-		// Alternatively, you can look up the DISPID dynamically
-		int[] rgdispid = oleObject.getIDsOfNames(new String[] { "GoHome" });
-		int dispIdMember = rgdispid[0];
-
-		Variant pVarResult = oleObject.invoke(dispIdMember);
-		if (pVarResult == null || pVarResult.getType() == OLE.VT_EMPTY)
-			return 0;
-		return pVarResult.getInt();
-	}
-	/**
-	 */
-	public int navigate(String url) {
-		return navigate(oleObject, url);
-	}
-	/**
-	 */
-	protected int navigate(OleAutomation aOleAutomation, String url) {
-		//if (Logger.DEBUG)
-		//Logger.logDebugMessage("WebBrowser", "navigate to: " + url);
-		// dispid=104, type=METHOD, name="Navigate"
-
-		// You can hard code the DISPID if you know it before hand - this is of course the fastest way
-		//int dispIdMember = 104;
-
-		// Alternatively, you can look up the DISPID dynamically
-		// Here we are looking up the id of the argument as well
-		int[] rgdispid =
-			aOleAutomation.getIDsOfNames(new String[] { "Navigate", "URL" });
-		int dispIdMember = rgdispid[0];
-
-		Variant[] rgvarg = new Variant[1];
-		rgvarg[0] = new Variant(url);
-		int[] rgdispidNamedArgs = new int[1];
-		rgdispidNamedArgs[0] = rgdispid[1]; // identifier of argument
-		Variant pVarResult =
-			aOleAutomation.invoke(dispIdMember, rgvarg, rgdispidNamedArgs);
-		if (pVarResult == null || pVarResult.getType() == OLE.VT_EMPTY)
-			return 0;
-		return pVarResult.getInt();
-
-	}
-	/**
-	 */
-	public int print() {
-		return print(controlSite, true);
-	}
-	/**
-	 */
-	protected int print(BrowserControlSite aControlSite, boolean promptuser) {
-
-		int result = aControlSite.queryStatus(OLE.OLECMDID_PRINT);
-
-		if ((result & OLE.OLECMDF_ENABLED) == OLE.OLECMDF_ENABLED) {
-			if (promptuser)
-				result =
-					aControlSite.exec(
-						OLE.OLECMDID_PRINT,
-						OLE.OLECMDEXECOPT_PROMPTUSER,
-						null,
-						null);
-			else
-				result =
-					aControlSite.exec(
-						OLE.OLECMDID_PRINT,
-						OLE.OLECMDEXECOPT_DONTPROMPTUSER,
-						null,
-						null);
-		}
-
-		//if (Logger.DEBUG)
-		//Logger.logDebugMessage("WebBrowser", "exec returns: " + Integer.toString(result));
-		return result;
-	}
-
-	/**
-	 * Refresh the currently viewed page.
-	 */
-	public void refresh() {
-
-		// dispid= 4294966746, type=METHOD, name="Refresh"
-
-		// You can hard code the DISPID if you know it before hand - this is of course the fastest way
-		//int dispIdMember =  4294966746;
-
-		// Alternatively, you can look up the DISPID dynamically
-		int[] rgdispid = oleObject.getIDsOfNames(new String[] { "Refresh" });
-		int dispIdMember = rgdispid[0];
-
-		oleObject.invokeNoReply(dispIdMember);
-	}
-	/**
-	 */
-	public int search() {
-		// dispid=103, type=METHOD, name="GoSearch"
-
-		// You can hard code the DISPID if you know it before hand - this is of course the fastest way
-		//int dispIdMember = 103;
-
-		// Alternatively, you can look up the DISPID dynamically
-		int[] rgdispid = oleObject.getIDsOfNames(new String[] { "GoSearch" });
-		int dispIdMember = rgdispid[0];
-
-		Variant pVarResult = oleObject.invoke(dispIdMember);
-		if (pVarResult == null || pVarResult.getType() == OLE.VT_EMPTY)
-			return 0;
-		return pVarResult.getInt();
-	}
-	/**
-	 */
-	public void stop() {
-		// dispid=106, type=METHOD, name="Stop"
-
-		// You can hard code the DISPID if you know it before hand - this is of course the fastest way
-		//int dispIdMember = 106;
-
-		// Alternatively, you can look up the DISPID dynamically
-		int[] rgdispid = oleObject.getIDsOfNames(new String[] { "Stop" });
-		int dispIdMember = rgdispid[0];
-
-		//Variant pVarResult = oleObject.invoke(dispIdMember);
-		oleObject.invoke(dispIdMember);
-	}
-	/**
-	 * Gets the forwardEnabled
-	 * @return Returns a boolean
-	 */
-	public boolean isForwardEnabled() {
-		return forwardEnabled;
-	}
-
-	/**
-	 * Gets the backwardEnabled
-	 * @return Returns a boolean
-	 */
-	public boolean isBackwardEnabled() {
-		return backwardEnabled;
-	}
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowserEditor.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowserEditor.java
deleted file mode 100644
index 1a7402c..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowserEditor.java
+++ /dev/null
@@ -1,297 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.welcome.internal.webbrowser;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jface.action.*;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.ole.win32.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.ui.*;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.help.WorkbenchHelp;
-import org.eclipse.ui.part.EditorPart;
-import org.eclipse.welcome.internal.*;
-
-public class WebBrowserEditor extends EditorPart implements IEmbeddedWebBrowser {
-	// NL
-	private static final String KEY_NOT_AVAILABLE =
-		"WebBrowserView.notAvailable";
-	private static final String KEY_ADDRESS = "WebBrowserView.address";
-	private static final String KEY_STOP = "WebBrowserView.stop";
-	private static final String KEY_GO = "WebBrowserView.go";
-	private static final String KEY_REFRESH = "WebBrowserView.refresh";
-	private static final String KEY_BACKWARD = "WebBrowserView.backward";
-	private static final String KEY_FORWARD = "WebBrowserView.forward";
-
-	private int ADDRESS_SIZE = 10;
-	private WebBrowser browser;
-	private Control control;
-	private Combo addressCombo;
-	private Object input;
-	private ToolBarManager toolBarManager;
-	private Action refreshAction;
-	private Action stopAction;
-	private Action goAction;
-	private GlobalActionHandler globalActionHandler;
-	private IWebBrowserListener listener;
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.ISaveablePart#doSave(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public void doSave(IProgressMonitor monitor) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.ISaveablePart#doSaveAs()
-	 */
-	public void doSaveAs() {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IEditorPart#gotoMarker(org.eclipse.core.resources.IMarker)
-	 */
-	public void gotoMarker(IMarker marker) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IEditorPart#init(org.eclipse.ui.IEditorSite, org.eclipse.ui.IEditorInput)
-	 */
-	public void init(IEditorSite site, IEditorInput input)
-		throws PartInitException {
-		if (!(input instanceof WebBrowserEditorInput))
-			throw new PartInitException("Invalid Input: Must be WelcomeEditorInput");
-		setSite(site);
-		setInput(input);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.ISaveablePart#isDirty()
-	 */
-	public boolean isDirty() {
-		return false;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.ISaveablePart#isSaveAsAllowed()
-	 */
-	public boolean isSaveAsAllowed() {
-		return false;
-	}
-
-	public WebBrowserEditor() {
-	}
-
-	/**
-	 * @see IFormPage#createControl(Composite)
-	 */
-	public void createPartControl(Composite parent) {
-		Composite container = new Composite(parent, SWT.NULL);
-		control = container;
-		GridLayout layout = new GridLayout();
-		layout.marginWidth = 0;
-		layout.marginHeight = 0;
-		layout.verticalSpacing = 0;
-		container.setLayout(layout);
-
-		Composite navContainer = new Composite(container, SWT.NONE);
-		layout = new GridLayout();
-		layout.numColumns = 3;
-		layout.marginHeight = 1;
-		navContainer.setLayout(layout);
-		createNavBar(navContainer);
-		navContainer.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		final WebBrowser winBrowser = new WebBrowser(container);
-		browser = winBrowser;
-
-		Control c = browser.getControl();
-		c.setLayoutData(new GridData(GridData.FILL_BOTH));
-		final BrowserControlSite site = winBrowser.getControlSite();
-		IStatusLineManager smng =
-			getEditorSite().getActionBars().getStatusLineManager();
-		site.setStatusLineManager(smng);
-
-		site.addEventListener(WebBrowser.DownloadComplete, new OleListener() {
-			public void handleEvent(OleEvent event) {
-				String url = winBrowser.getLocationURL();
-				if (url != null) {
-					addressCombo.setText(url);
-					downloadComplete(url);
-				}
-			}
-		});
-		site.addEventListener(WebBrowser.DownloadBegin, new OleListener() {
-			public void handleEvent(OleEvent event) {
-				stopAction.setEnabled(true);
-				refreshAction.setEnabled(false);
-			}
-		});
-		WorkbenchHelp.setHelp(container, "org.eclipse.update.ui.WebBrowserView");
-		WebBrowserEditorInput input = (WebBrowserEditorInput)getEditorInput();
-		openTo(input.getURL());
-	}
-
-	public void openTo(final String url) {
-		addressCombo.setText(url);
-		control.getDisplay().asyncExec(new Runnable() {
-			public void run() {
-				navigate(url);
-			}
-		});
-	}
-
-	private void downloadComplete(String url) {
-		stopAction.setEnabled(false);
-		refreshAction.setEnabled(true);
-		if (listener!=null)
-			listener.stateChanged();
-	}
-	
-	public void setListener(IWebBrowserListener listener) {
-		this.listener = listener;
-	}
-
-	private void createNavBar(Composite parent) {
-		Label addressLabel = new Label(parent, SWT.NONE);
-		addressLabel.setText(WelcomePortal.getString(KEY_ADDRESS));
-
-		addressCombo = new Combo(parent, SWT.DROP_DOWN | SWT.BORDER);
-		addressCombo.addModifyListener(new ModifyListener() {
-			public void modifyText(ModifyEvent e) {
-				String text = addressCombo.getText();
-				goAction.setEnabled(text.length() > 0);
-			}
-		});
-		addressCombo.addSelectionListener(new SelectionListener() {
-			public void widgetSelected(SelectionEvent e) {
-				String text =
-					addressCombo.getItem(addressCombo.getSelectionIndex());
-				if (text.length() > 0)
-					navigate(text);
-			}
-			public void widgetDefaultSelected(SelectionEvent e) {
-				navigate(addressCombo.getText());
-			}
-		});
-		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
-		addressCombo.setLayoutData(gd);
-		ToolBar toolbar = new ToolBar(parent, SWT.FLAT | SWT.HORIZONTAL);
-		toolBarManager = new ToolBarManager(toolbar);
-		makeActions();
-		IActionBars bars = getEditorSite().getActionBars();
-		globalActionHandler = new GlobalActionHandler(bars, addressCombo);
-	}
-
-	private void navigate(String url) {
-		browser.navigate(url);
-		String[] items = addressCombo.getItems();
-		int loc = -1;
-		String normURL = getNormalizedURL(url);
-		for (int i = 0; i < items.length; i++) {
-			String normItem = getNormalizedURL(items[i]);
-			if (normURL.equals(normItem)) {
-				// match 
-				loc = i;
-				break;
-			}
-		}
-		if (loc != -1) {
-			addressCombo.remove(loc);
-		}
-		addressCombo.add(url, 0);
-		if (addressCombo.getItemCount() > ADDRESS_SIZE) {
-			addressCombo.remove(addressCombo.getItemCount() - 1);
-		}
-		addressCombo.getParent().layout(true);
-	}
-	
-	void back() {
-		browser.back();
-	}
-	void forward() {
-		browser.forward();
-	}
-	boolean isBackwardEnabled() {
-		return browser.isBackwardEnabled();
-	}
-	boolean isForwardEnabled() {
-		return browser.isForwardEnabled();
-	}
-
-	private void makeActions() {
-		goAction = new Action() {
-			public void run() {
-				navigate(addressCombo.getText());
-			}
-		};
-		goAction.setEnabled(false);
-		goAction.setToolTipText(WelcomePortal.getString(KEY_GO));
-		goAction.setImageDescriptor(WelcomePortalImages.DESC_GO_NAV);
-		goAction.setDisabledImageDescriptor(WelcomePortalImages.DESC_GO_NAV_D);
-		goAction.setHoverImageDescriptor(WelcomePortalImages.DESC_GO_NAV_H);
-
-		stopAction = new Action() {
-			public void run() {
-				browser.stop();
-			}
-		};
-		stopAction.setToolTipText(WelcomePortal.getString(KEY_STOP));
-		stopAction.setImageDescriptor(WelcomePortalImages.DESC_STOP_NAV);
-		stopAction.setDisabledImageDescriptor(
-			WelcomePortalImages.DESC_STOP_NAV_D);
-		stopAction.setHoverImageDescriptor(
-			WelcomePortalImages.DESC_STOP_NAV_H);
-		stopAction.setEnabled(false);
-
-		refreshAction = new Action() {
-			public void run() {
-				browser.refresh();
-			}
-		};
-		refreshAction.setToolTipText(
-			WelcomePortal.getString(KEY_REFRESH));
-		refreshAction.setImageDescriptor(WelcomePortalImages.DESC_REFRESH_NAV);
-		refreshAction.setDisabledImageDescriptor(
-			WelcomePortalImages.DESC_REFRESH_NAV_D);
-		refreshAction.setHoverImageDescriptor(
-			WelcomePortalImages.DESC_REFRESH_NAV_H);
-		refreshAction.setEnabled(false);
-
-		toolBarManager.add(goAction);
-		toolBarManager.add(new Separator());
-		toolBarManager.add(stopAction);
-		toolBarManager.add(refreshAction);
-		toolBarManager.update(true);
-	}
-
-	private String getNormalizedURL(String url) {
-		url = url.toLowerCase();
-		if (url.indexOf("://") == -1) {
-			url = "http://" + url;
-		}
-		return url;
-	}
-
-	public void dispose() {
-		if (browser != null)
-			browser.dispose();
-		globalActionHandler.dispose();
-		super.dispose();
-	}
-
-	public void setFocus() {
-		if (control != null)
-			control.setFocus();
-	}
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowserEditorContributor.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowserEditorContributor.java
deleted file mode 100644
index 54b9039..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowserEditorContributor.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Created on Jun 18, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.welcome.internal.webbrowser;
-
-import org.eclipse.jface.action.*;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.part.EditorActionBarContributor;
-import org.eclipse.welcome.internal.*;
-
-/**
- * @author dejan
- *
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class WebBrowserEditorContributor
-	extends EditorActionBarContributor
-	implements IWebBrowserListener {
-	private static final String KEY_NOT_AVAILABLE =
-		"WebBrowserView.notAvailable";
-	private static final String KEY_HOME = "WebBrowserView.home";
-	private static final String KEY_BACKWARD = "WebBrowserView.backward";
-	private static final String KEY_FORWARD = "WebBrowserView.forward";
-
-	private Action homeAction;
-	private Action backwardAction;
-	private Action forwardAction;
-	private WebBrowserEditor editor;
-	
-	public WebBrowserEditorContributor() {
-		makeActions();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.welcome.internal.IWebBrowserListener#stateChanged()
-	 */
-	public void stateChanged() {
-		updateActions();
-	}
-
-	private void makeActions() {
-		homeAction = new Action() {
-			public void run() {
-				WebBrowserEditorInput input = (WebBrowserEditorInput)editor.getEditorInput();
-				editor.openTo(input.getURL());
-			}
-		};
-		homeAction.setEnabled(true);
-		homeAction.setToolTipText(WelcomePortal.getString(KEY_HOME));
-		homeAction.setImageDescriptor(
-			WelcomePortalImages.DESC_HOME_NAV);
-		homeAction.setDisabledImageDescriptor(
-			WelcomePortalImages.DESC_HOME_NAV_D);
-		homeAction.setHoverImageDescriptor(
-			WelcomePortalImages.DESC_HOME_NAV_H);
-
-
-		backwardAction = new Action() {
-			public void run() {
-				editor.back();
-			}
-		};
-		backwardAction.setEnabled(false);
-		backwardAction.setToolTipText(WelcomePortal.getString(KEY_BACKWARD));
-		backwardAction.setImageDescriptor(
-			WelcomePortalImages.DESC_BACKWARD_NAV);
-		backwardAction.setDisabledImageDescriptor(
-			WelcomePortalImages.DESC_BACKWARD_NAV_D);
-		backwardAction.setHoverImageDescriptor(
-			WelcomePortalImages.DESC_BACKWARD_NAV_H);
-
-		forwardAction = new Action() {
-			public void run() {
-				editor.forward();
-			}
-		};
-		forwardAction.setToolTipText(WelcomePortal.getString(KEY_FORWARD));
-		forwardAction.setImageDescriptor(WelcomePortalImages.DESC_FORWARD_NAV);
-		forwardAction.setDisabledImageDescriptor(
-			WelcomePortalImages.DESC_FORWARD_NAV_D);
-		forwardAction.setHoverImageDescriptor(
-			WelcomePortalImages.DESC_FORWARD_NAV_H);
-		forwardAction.setEnabled(false);
-	}
-
-	public void contributeToToolBar(IToolBarManager toolBarManager) {
-		toolBarManager.add(new Separator());
-		toolBarManager.add(homeAction);
-		toolBarManager.add(backwardAction);
-		toolBarManager.add(forwardAction);
-	}
-	public void setActiveEditor(IEditorPart targetEditor) {
-		if (this.editor != null)
-			this.editor.setListener(null);
-		editor = (WebBrowserEditor) targetEditor;
-		if (editor != null) {
-			editor.setListener(this);
-			updateActions();
-		}
-	}
-	private void updateActions() {
-		backwardAction.setEnabled(editor.isBackwardEnabled());
-		forwardAction.setEnabled(editor.isForwardEnabled());
-	}
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowserEditorInput.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowserEditorInput.java
deleted file mode 100644
index a89e087..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowserEditorInput.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2003 IBM Corporation 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 API and implementation
- *******************************************************************************/
-package org.eclipse.welcome.internal.webbrowser;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.*;
-/**
- * A simple editor input for the welcome editor
- */
-public class WebBrowserEditorInput implements IEditorInput {
-	private final static String FACTORY_ID = "org.eclipse.welcome.internal.webbrowser.WebBrowserEditorInputFactory"; //$NON-NLS-1$
-	private String url;
-	private String name;
-	/**
-	 * WelcomeEditorInput constructor comment.
-	 */
-	public WebBrowserEditorInput(String name, String url) {
-		this.name = name;
-		this.url = url;
-	}
-	public boolean exists() {
-		return false;
-	}
-	public Object getAdapter(Class adapter) {
-		return null;
-	}
-	public ImageDescriptor getImageDescriptor() {
-		return null;
-	}
-	public String getName() {
-		return name;
-	}
-	public String getURL() {
-		return url;
-	}
-	public boolean equals(Object obj) {
-		if (obj==null) return false;
-		if (obj == this) return true;
-		if (obj instanceof WebBrowserEditorInput) {
-			WebBrowserEditorInput wobj = (WebBrowserEditorInput)obj;
-			return wobj.getURL().equals(getURL());
-		}
-		return false;
-	}
-	public IPersistableElement getPersistable() {
-		return new IPersistableElement() {
-			public String getFactoryId() {
-				return FACTORY_ID;
-			}
-			public void saveState(IMemento memento) {
-				memento.putString("name", name);
-				memento.putString("url", url);
-			}
-		};
-	}
-	public String getToolTipText() {
-		return name;
-	}
-}
diff --git a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowserEditorInputFactory.java b/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowserEditorInputFactory.java
deleted file mode 100644
index a48055f..0000000
--- a/update/org.eclipse.update.ui.win32/src/org/eclipse/welcome/internal/webbrowser/WebBrowserEditorInputFactory.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package org.eclipse.welcome.internal.webbrowser;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.ui.*;
-import org.eclipse.ui.IElementFactory;
-
-/**
- */
-public class WebBrowserEditorInputFactory implements IElementFactory {
-	/**
-	 */
-	public WebBrowserEditorInputFactory() {
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IElementFactory#createElement(org.eclipse.ui.IMemento)
-	 */
-	public IAdaptable createElement(IMemento memento) {
-		String name = memento.getString("name");
-		String url = memento.getString("url");
-		return new WebBrowserEditorInput(name, url);
-	}
-
-}
diff --git a/update/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/UpdateUIPluginResources.properties b/update/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/UpdateUIPluginResources.properties
index 974bca1..d6749e2 100644
--- a/update/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/UpdateUIPluginResources.properties
+++ b/update/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/UpdateUIPluginResources.properties
@@ -274,10 +274,7 @@
 ModeSelectionPage.title=Feature Updates

 ModeSelectionPage.desc=Choose the way you want to search for features to install

 ModeSelectionPage.updates=Search for &updates of the currently installed features

-ModeSelectionPage.updatesText=Select this option if you want to search for updates of the features you already have installed.

 ModeSelectionPage.newFeatures=&Search for new features to install

-ModeSelectionPage.newFeaturesText=Select this option if you want to install new features from existing or new update sites. \

-Some sites may already be available. You can add new update site URLs to the search. 

 

 MoreInfoGenerator.notInstalled=not installed

 MoreInfoGenerator.all=all

@@ -351,7 +348,7 @@
 InstallWizard.LicensePage.up=&Previous License

 

 InstallWizard.TargetPage.title = Installation

-InstallWizard.TargetPage.desc = The following features will be installed. You can select a feature and change the location where the feature will be installed.

+InstallWizard.TargetPage.desc = The following features will be install. You can select a feature and change the location where the feature will be installed.

 InstallWizard.TargetPage.jobsLabel = Features to &install:

 InstallWizard.TargetPage.siteLabel = A&vailable installation locations:

 InstallWizard.TargetPage.new = &Add Location...

diff --git a/update/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/wizards/ModeSelectionPage.java b/update/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/wizards/ModeSelectionPage.java
index 59c121b..491221c 100644
--- a/update/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/wizards/ModeSelectionPage.java
+++ b/update/org.eclipse.update.ui/src/org/eclipse/update/internal/ui/wizards/ModeSelectionPage.java
@@ -14,13 +14,12 @@
 import org.eclipse.jface.dialogs.Dialog;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.events.*;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.layout.*;
+import org.eclipse.swt.layout.GridLayout;
 import org.eclipse.swt.widgets.*;
-import org.eclipse.ui.help.WorkbenchHelp;
+import org.eclipse.ui.help.*;
 import org.eclipse.update.internal.operations.UpdateUtils;
 import org.eclipse.update.internal.ui.UpdateUI;
-import org.eclipse.update.search.UpdateSearchRequest;
+import org.eclipse.update.search.*;
 
 /**
  */
@@ -69,20 +68,11 @@
 		updatesButton.setText(UpdateUI.getString("ModeSelectionPage.updates")); //$NON-NLS-1$
 		boolean newFeaturesMode = getSettings().getBoolean(P_NEW_FEATURES_MODE);
 		updatesButton.setSelection(!newFeaturesMode);
-		
-		final Label updatesText = new Label(composite, SWT.WRAP);
-		updatesText.setText(UpdateUI.getString("ModeSelectionPage.updatesText"));
-		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.widthHint = 100;
-		updatesText.setLayoutData(gd);
-		
 		updatesButton.addSelectionListener(new SelectionAdapter() {
 			public void widgetSelected(SelectionEvent e) {
 				switchMode();
 			}
 		});
-		// spacer
-		new Label(composite, SWT.NULL);
 		newFeaturesButton = new Button(composite, SWT.RADIO);
 		newFeaturesButton.setSelection(newFeaturesMode);
 		newFeaturesButton.setText(UpdateUI.getString("ModeSelectionPage.newFeatures")); //$NON-NLS-1$
@@ -90,25 +80,7 @@
 			public void widgetSelected(SelectionEvent e) {
 				switchMode();
 			}
-		});
-		final Label newFeaturesText = new Label(composite, SWT.WRAP);
-		newFeaturesText.setText(UpdateUI.getString("ModeSelectionPage.newFeaturesText"));
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.widthHint = 100;
-		newFeaturesText.setLayoutData(gd);
-
-		/*
-		composite.addControlListener(new ControlAdapter() {
-			public void controlResized(ControlEvent e) {
-				Composite parent = (Composite)e.widget;
-				Rectangle carea = parent.getClientArea();
-				GridData gd = (GridData)updatesText.getLayoutData();
-				gd.widthHint = carea.width; 
-				gd = (GridData)newFeaturesText.getLayoutData();
-				gd.widthHint = carea.width; 
-			}
-		});
-		*/
+		});		
 		switchMode();
 		
 		Dialog.applyDialogFont(parent);
diff --git a/update/org.eclipse.update/.classpath b/update/org.eclipse.update/.classpath
deleted file mode 100644
index f12531d..0000000
--- a/update/org.eclipse.update/.classpath
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-    <classpathentry kind="src" path="src"/>
-    <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT" sourcepath="JRE_SRC"/>
-    <classpathentry kind="var"
-        path="ECLIPSE_HOME/plugins/org.eclipse.core.boot/boot.jar" sourcepath="ECLIPSE_HOME/plugins/org.eclipse.core.boot/bootsrc.zip"/>
-    <classpathentry kind="var"
-        path="ECLIPSE_HOME/plugins/org.eclipse.core.runtime/runtime.jar" sourcepath="ECLIPSE_HOME/plugins/org.eclipse.core.runtime/runtimesrc.zip"/>
-    <classpathentry kind="var"
-        path="ECLIPSE_HOME/plugins/org.eclipse.swt/swt.jar" sourcepath="ECLIPSE_HOME/plugins/org.eclipse.swt/swtsrc.zip"/>
-    <classpathentry kind="var"
-        path="ECLIPSE_HOME/plugins/org.eclipse.ui/workbench.jar" sourcepath="ECLIPSE_HOME/plugins/org.eclipse.ui/workbenchsrc.zip"/>
-    <classpathentry kind="var" path="ECLIPSE_HOME/plugins/org.eclipse.webdav/webdav.jar"/>
-    <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/update/org.eclipse.update/.cvsignore b/update/org.eclipse.update/.cvsignore
deleted file mode 100644
index c5e82d7..0000000
--- a/update/org.eclipse.update/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
\ No newline at end of file
diff --git a/update/org.eclipse.update/.project b/update/org.eclipse.update/.project
deleted file mode 100644
index 7560f76..0000000
--- a/update/org.eclipse.update/.project
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.update</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-	</buildSpec>
-	<natures>
-	</natures>
-</projectDescription>
diff --git a/update/org.eclipse.update/.vcm_meta b/update/org.eclipse.update/.vcm_meta
deleted file mode 100644
index 7655f8d..0000000
--- a/update/org.eclipse.update/.vcm_meta
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>

-<project-description>

-	<comment></comment>

-	<nature id="org.eclipse.jdt.core.javanature"/>

-	<builder name="org.eclipse.jdt.core.javabuilder">

-	</builder>

-</project-description>