Moved to Github

Change-Id: Ic17cecc6519532d6a2e6258f0ef2c0fcc8852c49
Reviewed-on: https://git.eclipse.org/r/c/platform/eclipse.platform.releng.buildtools/+/190823
Tested-by: Alexander Kurtakov <akurtako@redhat.com>
Reviewed-by: Alexander Kurtakov <akurtako@redhat.com>
diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/.settings/org.eclipse.core.runtime.prefs b/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/CONTRIBUTING b/CONTRIBUTING
deleted file mode 100644
index 8be8ef1..0000000
--- a/CONTRIBUTING
+++ /dev/null
@@ -1,71 +0,0 @@
-# Contributing to Eclipse Platform
-
-Thanks for your interest in this project.
-
-## Project description
-
-Eclipse Platform defines the set of frameworks and common services that
-collectively make up infrastructure required to support the use of Eclipse as a
-component model, as a Rich Client Platform (RCP) and as a comprehensive tool
-integration platform. These services and frameworks include a standard workbench
-user interface model and portable native widget toolkit, a project model for
-managing resources, automatic resource delta management for incremental
-compilers and builders, language-independent debug infrastructure, and
-infrastructure for distributed multi-user versioned resource management.
-
-* https://projects.eclipse.org/projects/eclipse.platform
-
-## Developer resources
-
-Information regarding source code management, builds, coding standards, and
-more.
-
-* https://projects.eclipse.org/projects/eclipse.platform/developer
-
-The project maintains the following source code repositories
-
-* http://git.eclipse.org/c/platform/eclipse.platform.common.git
-* http://git.eclipse.org/c/platform/eclipse.platform.debug.git
-* http://git.eclipse.org/c/platform/eclipse.platform.git
-* http://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git
-* http://git.eclipse.org/c/platform/eclipse.platform.releng.buildtools.git
-* http://git.eclipse.org/c/platform/eclipse.platform.releng.git
-* http://git.eclipse.org/c/platform/eclipse.platform.resources.git
-* http://git.eclipse.org/c/platform/eclipse.platform.runtime.git
-* http://git.eclipse.org/c/platform/eclipse.platform.swt.git
-* http://git.eclipse.org/c/platform/eclipse.platform.swt.binaries.git
-* http://git.eclipse.org/c/platform/eclipse.platform.team.git
-* http://git.eclipse.org/c/platform/eclipse.platform.text.git
-* http://git.eclipse.org/c/platform/eclipse.platform.ua.git
-* http://git.eclipse.org/c/platform/eclipse.platform.ui.git
-* http://git.eclipse.org/c/platform/eclipse.platform.ui.tools.git
-
-This project uses Bugzilla to track ongoing development and issues.
-
-* Search for issues: https://eclipse.org/bugs/buglist.cgi?product=Platform
-* Create a new report: https://eclipse.org/bugs/enter_bug.cgi?product=Platform
-
-Be sure to search for existing bugs before you create another one. Remember that
-contributions are always welcome!
-
-## Eclipse Contributor Agreement
-
-Before your contribution can be accepted by the project team contributors must
-electronically sign the Eclipse Contributor Agreement (ECA).
-
-* http://www.eclipse.org/legal/ECA.php
-
-Commits that are provided by non-committers must have a Signed-off-by field in
-the footer indicating that the author is aware of the terms by which the
-contribution has been provided to the project. The non-committer must
-additionally have an Eclipse Foundation account and must have a signed Eclipse
-Contributor Agreement (ECA) on file.
-
-For more information, please see the Eclipse Committer Handbook:
-https://www.eclipse.org/projects/handbook/#resources-commit
-
-## Contact
-
-Contact the project developers via the project's "dev" list.
-
-* https://dev.eclipse.org/mailman/listinfo/platform-dev
\ No newline at end of file
diff --git a/Jenkinsfile b/Jenkinsfile
deleted file mode 100644
index bcc9b10..0000000
--- a/Jenkinsfile
+++ /dev/null
@@ -1,71 +0,0 @@
-pipeline {
-	options {
-		timeout(time: 40, unit: 'MINUTES')
-		buildDiscarder(logRotator(numToKeepStr:'5'))
-	}
-	agent {
-		label "centos-latest"
-	}
-	tools {
-		maven 'apache-maven-latest'
-		jdk 'openjdk-jdk11-latest'
-	}
-	stages {
-		stage('initialize Gerrit review') {
-			steps {
-				gerritReview labels: [Verified: 0], message: "Build started $BUILD_URL"
-			}
-		}
-		stage('Build') {
-			steps {
-				wrap([$class: 'Xvnc', useXauthority: true]) {
-					sh """
-					mvn clean verify --batch-mode --fail-at-end -Dmaven.repo.local=$WORKSPACE/.m2/repository \
-						-Pbuild-individual-bundles -Pbree-libs -Papi-check \
-						-DskipTests=false -Dcompare-version-with-baselines.skip=false \
-						-Dmaven.test.error.ignore=true -Dmaven.test.failure.ignore=true \
-						-Dproject.build.sourceEncoding=UTF-8  \
-						-Dbuild.sysclasspath=ignore -Dincludeantruntime=false -Dslf4j=false
-					"""
-				}
-			}
-			post {
-				always {
-					archiveArtifacts artifacts: '*.log,*/target/work/data/.metadata/*.log,*/tests/target/work/data/.metadata/*.log,apiAnalyzer-workspace/.metadata/*.log', allowEmptyArchive: true
-					junit '**/target/surefire-reports/TEST-*.xml'
-					publishIssues issues:[scanForIssues(tool: java()), scanForIssues(tool: mavenConsole())]
-				}
-				unstable {
-					gerritReview labels: [Verified: -1], message: "Build UNSTABLE (test failures) $BUILD_URL"
-				}
-				failure {
-					gerritReview labels: [Verified: -1], message: "Build FAILED $BUILD_URL"
-				}
-			}
-		}
-		stage('Check freeze period') {
-			when {
-				not {
-					branch 'master'
-				}
-			}
-			steps {
-				sh "wget https://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git/plain/scripts/verifyFreezePeriod.sh"
-				sh "chmod +x verifyFreezePeriod.sh"
-				withCredentials([string(credentialsId: 'google-api-key', variable: 'GOOGLE_API_KEY')]) {
-					sh './verifyFreezePeriod.sh'
-				}
-			}
-			post {
-				failure {
-					gerritReview labels: [Verified: -1], message: "Build and test are OK, but Eclipse project is currently in a code freeze period.\nPlease wait for end of code freeze period before merging.\n $BUILD_URL"
-				}
-			}
-		}
-	}
-	post {
-		success {
-			gerritReview labels: [Verified: 1], message: "Build Succcess $BUILD_URL"
-		}
-	}
-}
diff --git a/LICENSE b/LICENSE
deleted file mode 100644
index e23ece2..0000000
--- a/LICENSE
+++ /dev/null
@@ -1,277 +0,0 @@
-Eclipse Public License - v 2.0
-
-    THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
-    PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION
-    OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
-
-1. DEFINITIONS
-
-"Contribution" means:
-
-  a) in the case of the initial Contributor, the initial content
-     Distributed under this Agreement, and
-
-  b) in the case of each subsequent Contributor:
-     i) changes to the Program, and
-     ii) additions to the Program;
-  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 changes or additions to the Program that
-  are not Modified Works.
-
-"Contributor" means any person or entity that Distributes the Program.
-
-"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.
-
-"Program" means the Contributions Distributed in accordance with this
-Agreement.
-
-"Recipient" means anyone who receives the Program under this Agreement
-or any Secondary License (as applicable), including Contributors.
-
-"Derivative Works" shall mean any work, whether in Source Code or other
-form, that is based on (or derived from) the Program and for which the
-editorial revisions, annotations, elaborations, or other modifications
-represent, as a whole, an original work of authorship.
-
-"Modified Works" shall mean any work in Source Code or other form that
-results from an addition to, deletion from, or modification of the
-contents of the Program, including, for purposes of clarity any new file
-in Source Code form that contains any contents of the Program. Modified
-Works shall not include works that contain only declarations,
-interfaces, types, classes, structures, or files of the Program solely
-in each case in order to link to, bind by name, or subclass the Program
-or Modified Works thereof.
-
-"Distribute" means the acts of a) distributing or b) making available
-in any manner that enables the transfer of a copy.
-
-"Source Code" means the form of a Program preferred for making
-modifications, including but not limited to software source code,
-documentation source, and configuration files.
-
-"Secondary License" means either the GNU General Public License,
-Version 2.0, or any later versions of that license, including any
-exceptions or additional permissions as identified by the initial
-Contributor.
-
-2. GRANT OF RIGHTS
-
-  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.
-
-  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 or other 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.
-
-  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.
-
-  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.
-
-  e) Notwithstanding the terms of any Secondary License, no
-  Contributor makes additional grants to any Recipient (other than
-  those set forth in this Agreement) as a result of such Recipient's
-  receipt of the Program under the terms of a Secondary License
-  (if permitted under the terms of Section 3).
-
-3. REQUIREMENTS
-
-3.1 If a Contributor Distributes the Program in any form, then:
-
-  a) the Program must also be made available as Source Code, in
-  accordance with section 3.2, and the Contributor must accompany
-  the Program with a statement that the Source Code for the Program
-  is available under this Agreement, and informs Recipients how to
-  obtain it in a reasonable manner on or through a medium customarily
-  used for software exchange; and
-
-  b) the Contributor may Distribute the Program under a license
-  different than this Agreement, provided that such license:
-     i) effectively disclaims on behalf of all other 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;
-
-     ii) effectively excludes on behalf of all other Contributors all
-     liability for damages, including direct, indirect, special,
-     incidental and consequential damages, such as lost profits;
-
-     iii) does not attempt to limit or alter the recipients' rights
-     in the Source Code under section 3.2; and
-
-     iv) requires any subsequent distribution of the Program by any
-     party to be under a license that satisfies the requirements
-     of this section 3.
-
-3.2 When the Program is Distributed as Source Code:
-
-  a) it must be made available under this Agreement, or if the
-  Program (i) is combined with other material in a separate file or
-  files made available under a Secondary License, and (ii) the initial
-  Contributor attached to the Source Code the notice described in
-  Exhibit A of this Agreement, then the Program may be made available
-  under the terms of such Secondary Licenses, and
-
-  b) a copy of this Agreement must be included with each copy of
-  the Program.
-
-3.3 Contributors may not remove or alter any copyright, patent,
-trademark, attribution notices, disclaimers of warranty, or limitations
-of liability ("notices") contained within the Program from any copy of
-the Program which they Distribute, provided that Contributors may add
-their own appropriate notices.
-
-4. COMMERCIAL DISTRIBUTION
-
-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.
-
-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.
-
-5. NO WARRANTY
-
-EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT
-PERMITTED BY APPLICABLE LAW, 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.
-
-6. DISCLAIMER OF LIABILITY
-
-EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT
-PERMITTED BY APPLICABLE LAW, 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.
-
-7. GENERAL
-
-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.
-
-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.
-
-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.
-
-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. The Eclipse Foundation
-is the initial Agreement Steward. The Eclipse Foundation 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. Nothing in this Agreement is intended
-to be enforceable by any entity that is not a Contributor or Recipient.
-No third-party beneficiary rights are created under this Agreement.
-
-Exhibit A - Form of Secondary Licenses Notice
-
-"This Source Code may also be made available under the following 
-Secondary Licenses when the conditions for such availability set forth 
-in the Eclipse Public License, v. 2.0 are satisfied: {name license(s),
-version(s), and exceptions or additional permissions here}."
-
-  Simply including a copy of this Agreement, including this Exhibit A
-  is not sufficient to license the Source Code under Secondary Licenses.
-
-  If it is not possible or desirable to put the notice in a particular
-  file, then You may include the notice in a location (such as a LICENSE
-  file in a relevant directory) where a recipient would be likely to
-  look for such a notice.
-
-  You may add additional accurate notices of copyright ownership.
\ No newline at end of file
diff --git a/MOVED_TO_GITHUB.md b/MOVED_TO_GITHUB.md
new file mode 100644
index 0000000..bcda747
--- /dev/null
+++ b/MOVED_TO_GITHUB.md
@@ -0,0 +1 @@
+This repository is now moved to GitHub: https://github.com/eclipse-platform/eclipse.platform.releng.buildtools
diff --git a/NOTICE b/NOTICE
deleted file mode 100644
index f906f8b..0000000
--- a/NOTICE
+++ /dev/null
@@ -1,43 +0,0 @@
-# Notices for Eclipse Platform
-
-This content is produced and maintained by the Eclipse Platform project.
-
-* Project home: https://projects.eclipse.org/projects/eclipse.platform
-
-## Trademarks
-
-Eclipse Platform is a trademark of the Eclipse Foundation.
-
-## Copyright
-
-All content is the property of the respective authors or their employers. For
-more information regarding authorship of content, please consult the listed
-source code repository logs.
-
-## Declared Project Licenses
-
-This program and the accompanying materials are made available under the terms
-of the Eclipse Public License v. 2.0 which is available at
-http://www.eclipse.org/legal/epl-2.0.
-
-SPDX-License-Identifier: EPL-2.0
-
-## Source Code
-
-The project maintains the following source code repositories:
-
-* http://git.eclipse.org/c/platform/eclipse.platform.common.git
-* http://git.eclipse.org/c/platform/eclipse.platform.debug.git
-* http://git.eclipse.org/c/platform/eclipse.platform.git
-* http://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git
-* http://git.eclipse.org/c/platform/eclipse.platform.releng.buildtools.git
-* http://git.eclipse.org/c/platform/eclipse.platform.releng.git
-* http://git.eclipse.org/c/platform/eclipse.platform.resources.git
-* http://git.eclipse.org/c/platform/eclipse.platform.runtime.git
-* http://git.eclipse.org/c/platform/eclipse.platform.swt.git
-* http://git.eclipse.org/c/platform/eclipse.platform.swt.binaries.git
-* http://git.eclipse.org/c/platform/eclipse.platform.team.git
-* http://git.eclipse.org/c/platform/eclipse.platform.text.git
-* http://git.eclipse.org/c/platform/eclipse.platform.ua.git
-* http://git.eclipse.org/c/platform/eclipse.platform.ui.git
-* http://git.eclipse.org/c/platform/eclipse.platform.ui.tools.git
\ No newline at end of file
diff --git a/bundles/org.eclipse.build.tools/.classpath b/bundles/org.eclipse.build.tools/.classpath
deleted file mode 100644
index e801ebf..0000000
--- a/bundles/org.eclipse.build.tools/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.build.tools/.gitignore b/bundles/org.eclipse.build.tools/.gitignore
deleted file mode 100644
index 7dc19ae..0000000
--- a/bundles/org.eclipse.build.tools/.gitignore
+++ /dev/null
@@ -1,4 +0,0 @@
-/bin
-/logs
-/target
-buildTools.jar
\ No newline at end of file
diff --git a/bundles/org.eclipse.build.tools/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.build.tools/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/bundles/org.eclipse.build.tools/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.build.tools/.settings/org.eclipse.core.runtime.prefs b/bundles/org.eclipse.build.tools/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/bundles/org.eclipse.build.tools/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/bundles/org.eclipse.build.tools/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.build.tools/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 1a188da..0000000
--- a/bundles/org.eclipse.build.tools/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,453 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.builder.cleanOutputFolder=clean
-org.eclipse.jdt.core.builder.duplicateResourceTask=warning
-org.eclipse.jdt.core.builder.invalidClasspath=abort
-org.eclipse.jdt.core.builder.recreateModifiedClassFileInOutputFolder=ignore
-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=
-org.eclipse.jdt.core.circularClasspath=error
-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.classpath.outputOverlappingAnotherSource=error
-org.eclipse.jdt.core.codeComplete.argumentPrefixes=
-org.eclipse.jdt.core.codeComplete.argumentSuffixes=
-org.eclipse.jdt.core.codeComplete.fieldPrefixes=
-org.eclipse.jdt.core.codeComplete.fieldSuffixes=
-org.eclipse.jdt.core.codeComplete.localPrefixes=
-org.eclipse.jdt.core.codeComplete.localSuffixes=
-org.eclipse.jdt.core.codeComplete.staticFieldPrefixes=
-org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
-org.eclipse.jdt.core.codeComplete.staticFinalFieldPrefixes=
-org.eclipse.jdt.core.codeComplete.staticFinalFieldSuffixes=
-org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
-org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
-org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
-org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
-org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=11
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=warning
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=warning
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
-org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
-org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
-org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
-org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
-org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=disabled
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.release=enabled
-org.eclipse.jdt.core.compiler.source=11
-org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=true
-org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=1
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
-org.eclipse.jdt.core.formatter.alignment_for_logical_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_string_concatenation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
-org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
-org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=17
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=1
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=1
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=next_line_on_wrap
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=true
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=true
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
-org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
-org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
-org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_after_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
-org.eclipse.jdt.core.formatter.insert_space_after_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_before_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.join_lines_in_comments=true
-org.eclipse.jdt.core.formatter.join_wrapped_lines=true
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=132
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=space
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_on_off_tags=false
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=true
-org.eclipse.jdt.core.formatter.wrap_before_additive_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
-org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=false
-org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
-org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
-org.eclipse.jdt.core.incompatibleJDKLevel=warning
-org.eclipse.jdt.core.incompleteClasspath=error
-org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/bundles/org.eclipse.build.tools/.settings/org.eclipse.jdt.launching.prefs b/bundles/org.eclipse.build.tools/.settings/org.eclipse.jdt.launching.prefs
deleted file mode 100644
index d211d32..0000000
--- a/bundles/org.eclipse.build.tools/.settings/org.eclipse.jdt.launching.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.launching.PREF_STRICTLY_COMPATIBLE_JRE_NOT_AVAILABLE=warning
diff --git a/bundles/org.eclipse.build.tools/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.build.tools/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 44091f5..0000000
--- a/bundles/org.eclipse.build.tools/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,64 +0,0 @@
-cleanup.add_default_serial_version_id=false
-cleanup.add_generated_serial_version_id=true
-cleanup.add_missing_annotations=true
-cleanup.add_missing_deprecated_annotations=true
-cleanup.add_missing_methods=true
-cleanup.add_missing_nls_tags=false
-cleanup.add_missing_override_annotations=true
-cleanup.add_missing_override_annotations_interface_methods=true
-cleanup.add_serial_version_id=true
-cleanup.always_use_blocks=true
-cleanup.always_use_parentheses_in_expressions=true
-cleanup.always_use_this_for_non_static_field_access=false
-cleanup.always_use_this_for_non_static_method_access=false
-cleanup.convert_to_enhanced_for_loop=false
-cleanup.correct_indentation=true
-cleanup.format_source_code=true
-cleanup.format_source_code_changes_only=false
-cleanup.make_local_variable_final=true
-cleanup.make_parameters_final=true
-cleanup.make_private_fields_final=true
-cleanup.make_type_abstract_if_missing_method=false
-cleanup.make_variable_declarations_final=true
-cleanup.never_use_blocks=false
-cleanup.never_use_parentheses_in_expressions=false
-cleanup.organize_imports=true
-cleanup.qualify_static_field_accesses_with_declaring_class=false
-cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-cleanup.qualify_static_member_accesses_with_declaring_class=true
-cleanup.qualify_static_method_accesses_with_declaring_class=false
-cleanup.remove_private_constructors=true
-cleanup.remove_trailing_whitespaces=true
-cleanup.remove_trailing_whitespaces_all=true
-cleanup.remove_trailing_whitespaces_ignore_empty=false
-cleanup.remove_unnecessary_casts=true
-cleanup.remove_unnecessary_nls_tags=true
-cleanup.remove_unused_imports=true
-cleanup.remove_unused_local_variables=false
-cleanup.remove_unused_private_fields=false
-cleanup.remove_unused_private_members=true
-cleanup.remove_unused_private_methods=false
-cleanup.remove_unused_private_types=true
-cleanup.sort_members=true
-cleanup.sort_members_all=false
-cleanup.use_blocks=true
-cleanup.use_blocks_only_for_return_and_throw=false
-cleanup.use_parentheses_in_expressions=true
-cleanup.use_this_for_non_static_field_access=true
-cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-cleanup.use_this_for_non_static_method_access=true
-cleanup.use_this_for_non_static_method_access_only_if_necessary=true
-cleanup_profile=_Eclipse Releng
-cleanup_settings_version=2
-eclipse.preferences.version=1
-formatter_profile=org.eclipse.jdt.ui.default.eclipse_profile
-formatter_settings_version=19
-org.eclipse.jdt.ui.exception.name=e
-org.eclipse.jdt.ui.gettersetter.use.is=true
-org.eclipse.jdt.ui.ignorelowercasenames=true
-org.eclipse.jdt.ui.importorder=java;javax;org;com;
-org.eclipse.jdt.ui.keywordthis=false
-org.eclipse.jdt.ui.ondemandthreshold=99
-org.eclipse.jdt.ui.overrideannotation=true
-org.eclipse.jdt.ui.staticondemandthreshold=99
diff --git a/bundles/org.eclipse.build.tools/META-INF/MANIFEST.MF b/bundles/org.eclipse.build.tools/META-INF/MANIFEST.MF
deleted file mode 100644
index e3681fa..0000000
--- a/bundles/org.eclipse.build.tools/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,13 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %Bundle-Name
-Bundle-SymbolicName: org.eclipse.build.tools; singleton:=true
-Bundle-Version: 1.1.0.qualifier
-Bundle-Localization: plugin
-Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-11
-Require-Bundle: org.apache.ant,
- org.eclipse.osgi
-Bundle-ClassPath: buildTools.jar
-Bundle-Vendor: %Bundle-Vendor
-Automatic-Module-Name: org.eclipse.build.tools
diff --git a/bundles/org.eclipse.build.tools/about.html b/bundles/org.eclipse.build.tools/about.html
deleted file mode 100644
index 9db411a..0000000
--- a/bundles/org.eclipse.build.tools/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/bundles/org.eclipse.build.tools/build.properties b/bundles/org.eclipse.build.tools/build.properties
deleted file mode 100644
index a5979d9..0000000
--- a/bundles/org.eclipse.build.tools/build.properties
+++ /dev/null
@@ -1,7 +0,0 @@
-bin.includes = plugin.properties,\
-               META-INF/,\
-               plugin.xml,\
-               buildTools.jar,\
-               about.html
-source.buildTools.jar = src/
-src.includes = about.html
diff --git a/bundles/org.eclipse.build.tools/buildTools.jar.MANIFEST.MF b/bundles/org.eclipse.build.tools/buildTools.jar.MANIFEST.MF
deleted file mode 100644
index 59499bc..0000000
--- a/bundles/org.eclipse.build.tools/buildTools.jar.MANIFEST.MF
+++ /dev/null
@@ -1,2 +0,0 @@
-Manifest-Version: 1.0
-
diff --git a/bundles/org.eclipse.build.tools/buildTools.jar.jardesc b/bundles/org.eclipse.build.tools/buildTools.jar.jardesc
deleted file mode 100644
index ca65b42..0000000
--- a/bundles/org.eclipse.build.tools/buildTools.jar.jardesc
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<jardesc>
-    <jar path="org.eclipse.build.tools/buildTools.jar"/>
-    <options buildIfNeeded="true" compress="true" descriptionLocation="/org.eclipse.build.tools/buildTools.jar.jardesc" exportErrors="true" exportWarnings="true" includeDirectoryEntries="false" overwrite="false" saveDescription="true" storeRefactorings="false" useSourceFolders="false"/>
-    <storedRefactorings deprecationInfo="true" structuralOnly="false"/>
-    <selectedProjects/>
-    <manifest generateManifest="false" manifestLocation="/org.eclipse.build.tools/buildTools.jar.MANIFEST.MF" manifestVersion="1.0" reuseManifest="true" saveManifest="true" usesManifest="true">
-        <sealing sealJar="false">
-            <packagesToSeal/>
-            <packagesToUnSeal/>
-        </sealing>
-    </manifest>
-    <selectedElements exportClassFiles="true" exportJavaFiles="true" exportOutputFolder="false">
-        <file path="/org.eclipse.build.tools/about.html"/>
-        <file path="/org.eclipse.build.tools/plugin.properties"/>
-        <javaElement handleIdentifier="=org.eclipse.build.tools/src"/>
-        <file path="/org.eclipse.build.tools/plugin.xml"/>
-        <folder path="/org.eclipse.build.tools/META-INF"/>
-    </selectedElements>
-</jardesc>
diff --git a/bundles/org.eclipse.build.tools/plugin.properties b/bundles/org.eclipse.build.tools/plugin.properties
deleted file mode 100644
index ff85ea7..0000000
--- a/bundles/org.eclipse.build.tools/plugin.properties
+++ /dev/null
@@ -1,3 +0,0 @@
-
-Bundle-Name = Ant tasks used during platform builds
-Bundle-Vendor = Eclipse Platform Releng
\ No newline at end of file
diff --git a/bundles/org.eclipse.build.tools/plugin.xml b/bundles/org.eclipse.build.tools/plugin.xml
deleted file mode 100644
index 66c3c83..0000000
--- a/bundles/org.eclipse.build.tools/plugin.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-    <extension
-         point="org.eclipse.ant.core.extraClasspathEntries">
-      <extraClasspathEntry
-            library="buildTools.jar">
-      </extraClasspathEntry>
-   </extension>
-	<!-- Tasks -->
-   <extension point="org.eclipse.ant.core.antTasks">
-
-
-      <antTask
-            library="buildTools.jar"
-            name="unpackUpdateJars"
-            class="org.eclipse.releng.UnpackUpdateJars">
-      </antTask>
-
-    </extension>
-</plugin>
diff --git a/bundles/org.eclipse.build.tools/pom.xml b/bundles/org.eclipse.build.tools/pom.xml
deleted file mode 100644
index 8028e08..0000000
--- a/bundles/org.eclipse.build.tools/pom.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <groupId>org.eclipse.platform</groupId>
-        <artifactId>bundles</artifactId>
-        <version>1.0.101-SNAPSHOT</version>
-
-    </parent>
-    <artifactId>org.eclipse.build.tools</artifactId>
-    <version>1.1.0-SNAPSHOT</version>
-    <packaging>eclipse-plugin</packaging>
-</project>
diff --git a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/BuildProperties.java b/bundles/org.eclipse.build.tools/src/org/eclipse/releng/BuildProperties.java
deleted file mode 100644
index fa96eda..0000000
--- a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/BuildProperties.java
+++ /dev/null
@@ -1,361 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.util.Properties;
-
-/**
- * Class that stores build identification information taken from monitor.
- * properties as String objects
- */
-public class BuildProperties {
-
-    public static void main(final String args[]) {
-        new BuildProperties();
-    }
-
-    // recipients key value setting. Comma separated list of email addresses of
-    // those who should
-    // receive build information
-    private String           toRecipientList    = "";
-
-    // text message notification list
-    private String           textRecipientList  = "";
-    // email address of the sender
-    private String           sender             = "";
-
-    // mail server name
-    private String           host               = "";
-
-    // default name of the build log file used with listener
-    private String           logFile            = "index.php";
-
-    // the prefix prepended to the subject of build related emails
-    private String           buildSubjectPrefix = "[build]";
-    // the build id, typically <buildType><build date>
-    private String           buildid;
-    // the date and time of the build
-    private String           timestamp;
-
-    // the name of the directory containing the builds, typically
-    // <buildType>-<buildType><build date>-<timestamp>
-    private String           buildLabel;
-
-    // the ftp download URL
-    // private String ftpUrl;
-
-    // the http download URL
-    private String           httpUrl;
-
-    // the Object that holds the key value pairs in monitor.properties
-    private final Properties buildProperties;
-
-    public BuildProperties() {
-        this("monitor.properties");
-    }
-
-    public BuildProperties(final String monitorProperties) {
-        buildProperties = new Properties();
-        // retrieve information from monitor.properties file.
-        // This file should reside in the same directory as the startup.jar at
-        // build time.
-        try {
-            buildProperties.load(new FileInputStream(new File(monitorProperties)));
-
-            try {
-                buildSubjectPrefix = buildProperties.get("buildSubjectPrefix").toString();
-            }
-            catch (final NullPointerException e) {
-                System.out.println("Value for buildSubjectPrefix not found in monitor.properties");
-                System.out.println("Default value, buildSubjectPrefix=[build] will be used.");
-
-            }
-
-            try {
-                httpUrl = buildProperties.get("httpUrl").toString();
-            }
-            catch (final NullPointerException e) {
-                System.out.println("Value for httpUrl not found in monitor.properties");
-            }
-
-            /*
-             * try { ftpUrl = buildProperties.get("ftpUrl").toString(); } catch
-             * (NullPointerException e) { System.out.println(
-             * "Value for ftpUrl not found in monitor.properties"); }
-             */
-
-            try {
-                buildid = buildProperties.get("buildId").toString();
-            }
-            catch (final NullPointerException e) {
-                System.out.println("Value for buildId not found in monitor.properties");
-            }
-
-            try {
-                buildLabel = buildProperties.get("buildLabel").toString();
-            }
-            catch (final NullPointerException e) {
-                System.out.println("Value for buildLabel not found in monitor.properties");
-            }
-            try {
-                timestamp = buildProperties.get("timestamp").toString();
-            }
-            catch (final NullPointerException e) {
-                System.out.println("Value for timestamp not found in monitor.properties");
-            }
-
-            try {
-                toRecipientList = buildProperties.get("recipients").toString();
-            }
-            catch (final NullPointerException e) {
-                System.out.println("Value for recipients not found in monitor.properties");
-
-            }
-
-            try {
-                textRecipientList = buildProperties.get("textRecipients").toString();
-            }
-            catch (final NullPointerException e) {
-                System.out.println("Value for textRecipients not found in monitor.properties");
-
-            }
-
-            try {
-                sender = buildProperties.get("sender").toString();
-            }
-            catch (final NullPointerException e) {
-                System.out.println("Value for sender not found in monitor.properties");
-            }
-
-            try {
-                host = buildProperties.get("host").toString();
-            }
-            catch (final NullPointerException e) {
-                System.out.println("Value for host not found in monitor.properties");
-            }
-
-            try {
-                logFile = buildProperties.get("log").toString();
-            }
-            catch (final NullPointerException e) {
-                System.out.println("Value for log not found in monitor.properties");
-                System.out.println("Default value, log=index.php will be used.");
-
-            }
-
-        }
-        catch (final IOException e) {
-            e.printStackTrace();
-        }
-
-    }
-
-    /**
-     * Returns the buildid.
-     * 
-     * @return String
-     */
-    public String getBuildid() {
-        return buildid;
-    }
-
-    /**
-     * Returns the buildLabel.
-     * 
-     * @return String
-     */
-    public String getBuildLabel() {
-        return buildLabel;
-    }
-
-    /**
-     * Returns the buildSubjectPrefix.
-     * 
-     * @return String
-     */
-    public String getBuildSubjectPrefix() {
-        return buildSubjectPrefix;
-    }
-
-    /**
-     * Returns the host.
-     * 
-     * @return String
-     */
-    public String getHost() {
-        return host;
-    }
-
-    /**
-     * Returns the httpUrl.
-     * 
-     * @return String
-     */
-    public String getHttpUrl() {
-        return httpUrl;
-    }
-
-    /**
-     * Returns the logFile.
-     * 
-     * @return String
-     */
-    public String getLogFile() {
-        return logFile;
-    }
-
-    /**
-     * Returns the sender.
-     * 
-     * @return String
-     */
-    public String getSender() {
-        return sender;
-    }
-
-    /**
-     * Sets the ftpUrl.
-     * 
-     * @param ftpUrl
-     *            The httpUrl to set
-     */
-    /*
-     * public void setftpUrl(String downloadUrl) { this.ftpUrl = downloadUrl; }
-     */
-
-    public String getTextRecipientList() {
-        return textRecipientList;
-    }
-
-    /**
-     * Returns the timestamp.
-     * 
-     * @return String
-     */
-    public String getTimestamp() {
-        return timestamp;
-    }
-
-    /**
-     * Returns the recipientList.
-     * 
-     * @return String
-     */
-    public String getToRecipientList() {
-        return toRecipientList;
-    }
-
-    /**
-     * Sets the buildid.
-     * 
-     * @param buildid
-     *            The buildid to set
-     */
-    public void setBuildid(final String buildid) {
-        this.buildid = buildid;
-    }
-
-    /**
-     * Sets the buildLabel.
-     * 
-     * @param buildLabel
-     *            The buildLabel to set
-     */
-    public void setBuildLabel(final String buildLabel) {
-        this.buildLabel = buildLabel;
-    }
-
-    /**
-     * Sets the buildSubjectPrefix.
-     * 
-     * @param buildSubjectPrefix
-     *            The buildSubjectPrefix to set
-     */
-    public void setBuildSubjectPrefix(final String buildSubjectPrefix) {
-        this.buildSubjectPrefix = buildSubjectPrefix;
-    }
-
-    /**
-     * Sets the host.
-     * 
-     * @param host
-     *            The host to set
-     */
-    public void setHost(final String host) {
-        this.host = host;
-    }
-
-    /**
-     * Sets the httpUrl.
-     * 
-     * @param httpUrl
-     *            The httpUrl to set
-     */
-    public void setHttpUrl(final String downloadUrl) {
-        httpUrl = downloadUrl;
-    }
-
-    /**
-     * Sets the logFile.
-     * 
-     * @param logFile
-     *            The logFile to set
-     */
-    public void setLogFile(final String logFile) {
-        this.logFile = logFile;
-    }
-
-    /**
-     * Sets the recipientList.
-     * 
-     * @param recipientList
-     *            The recipientList to set
-     */
-    public void setRecipientList(final String recipientList) {
-        toRecipientList = recipientList;
-    }
-
-    /**
-     * Sets the sender.
-     * 
-     * @param sender
-     *            The sender to set
-     */
-    public void setSender(final String sender) {
-        this.sender = sender;
-    }
-
-    /**
-     * Returns the ftpUrl.
-     * 
-     * @return String
-     */
-    /*
-     * public String getftpUrl() { return ftpUrl; }
-     */
-
-    public void setTextRecipientList(final String textRecipientList) {
-        this.textRecipientList = textRecipientList;
-    }
-
-    /**
-     * Sets the timestamp.
-     * 
-     * @param timestamp
-     *            The timestamp to set
-     */
-    public void setTimestamp(final String timestamp) {
-        this.timestamp = timestamp;
-    }
-
-}
diff --git a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/ElementParser.java b/bundles/org.eclipse.build.tools/src/org/eclipse/releng/ElementParser.java
deleted file mode 100644
index 003620c..0000000
--- a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/ElementParser.java
+++ /dev/null
@@ -1,148 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-/**
- * Parses feature.xml, plugin.xml, and fragment.xml files
- * 
- */
-
-package org.eclipse.releng;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.Vector;
-
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.parsers.SAXParser;
-import javax.xml.parsers.SAXParserFactory;
-
-import org.apache.tools.ant.BuildException;
-import org.xml.sax.Attributes;
-import org.xml.sax.SAXException;
-import org.xml.sax.helpers.DefaultHandler;
-
-public class ElementParser extends DefaultHandler {
-
-    // Test
-    public static void main(final String[] args) {
-        final ElementParser xmlParser = new ElementParser();
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.platform-feature");
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.platform.win32-feature");
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.platform.linux.motif-feature");
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.platform.linux.gtk-feature");
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.platform.solaris.motif-feature");
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.platform.aix.motif-feature");
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.platform.qnx.photon-feature");
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.jdt-feature");
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.pde-feature");
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.sdk.examples-feature");
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.sdk.tests-feature");
-
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.platform.source-feature");
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.platform.win32.source-feature");
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.platform.linux.motif.source-feature");
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.platform.linux.gtk.source-feature");
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.platform.solaris.motif.source-feature");
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.platform.aix.motif.source-feature");
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.platform.qnx.photon.source-feature");
-        xmlParser.parse("l:/vabase/team/sonia", "feature", "org.eclipse.jdt.source-feature");
-
-        System.out.println(xmlParser.plugins);
-        System.out.println(xmlParser.features);
-
-        System.out.println(xmlParser.plugins.size() + " plugins expected");
-        System.out.println(xmlParser.features.size() + " features expected");
-    }
-
-    private SAXParser    parser;
-    private final Vector<String> plugins;
-
-    private final Vector<String> features;
-
-    public ElementParser() {
-        // Create a Xerces SAX Parser
-        final SAXParserFactory saxParserFactory = SAXParserFactory.newInstance();
-
-        try {
-            parser = saxParserFactory.newSAXParser();
-        }
-        catch (final ParserConfigurationException e) {
-            e.printStackTrace();
-        }
-        catch (final SAXException e) {
-            e.printStackTrace();
-        }
-
-        // instantiate vectors that will hold lists of plugins and features read
-        // from feature.xml
-        plugins = new Vector<>();
-        features = new Vector<>();
-    }
-
-    public void add(final String element, final Vector<String> v) {
-        if (!v.contains(element)) {
-            v.add(element);
-        }
-    }
-
-    public Vector<String> getFeatures() {
-        return features;
-    }
-
-    public Vector<String> getPlugins() {
-        return plugins;
-    }
-
-    public void parse(final String xmlFile) {
-
-        // Parse the Document
-        try {
-            parser.parse(xmlFile, this);
-        }
-        catch (final SAXException e) {
-            System.err.println(e);
-        }
-        catch (final IOException e) {
-            System.err.println(e);
-
-        }
-    }
-
-    public void parse(final String install, final String type, final String id) {
-
-        String xmlFile = null;
-
-        if (type.equals("feature")) {
-            xmlFile = install + "/features/" + id + "/" + "feature.xml";
-        }
-        if (type.equals("plugin")) {
-            xmlFile = install + "/plugins/" + id + "/" + "plugin.xml";
-        }
-        if (type.equals("fragment")) {
-            xmlFile = install + "/plugins/" + "/" + id + "/" + "fragment.xml";
-        }
-
-        if (new File(xmlFile).exists()) {
-            parse(xmlFile);
-        } else {
-            throw new BuildException("The following " + type + " " + id + " did not get fetched.");
-        }
-
-    }
-
-    // Start Element Event Handler
-    @Override
-    public void startElement(final String uri, final String local, final String qName, final Attributes atts) {
-        if (local.equals("plugin") || local.equals("fragment")) {
-            add(atts.getValue("id"), plugins);
-        }
-        if (local.equals("feature")) {
-            add(atts.getValue("id") + "-feature", features);
-        }
-    }
-}
diff --git a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/FetchValidator.java b/bundles/org.eclipse.build.tools/src/org/eclipse/releng/FetchValidator.java
deleted file mode 100644
index a45cfdd..0000000
--- a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/FetchValidator.java
+++ /dev/null
@@ -1,173 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng;
-
-import java.io.File;
-import java.util.Enumeration;
-import java.util.StringTokenizer;
-import java.util.Vector;
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.Task;
-
-/**
- * Uses an ElementParser to read a list of feature.xml files and to determine if
- * all plugins defined in the features are present.
- */
-
-public class FetchValidator extends Task {
-
-    // test
-    public static void main(final String args[]) {
-        final FetchValidator validator = new FetchValidator();
-        validator.install = "l:/vabase/team/sonia";
-        validator.list = "org.eclipse.platform-feature,org.eclipse.platform.win32-feature,org.eclipse.platform.linux.motif-feature";
-        validator.getListOfFeatures(validator.list);
-
-        validator.execute();
-    }
-
-    // directory containing of build source, parent of features and plugins
-    private String       install = "";
-
-    // Comma separated list of features to parse
-    private String       list;
-    // Elements to check for post fetch (use name of project in dev.eclipse.org)
-    private Vector<String>       features;
-
-    private Vector<String>       plugins;
-    // keeps track of missing elements
-    private final Vector<String> missingPlugins;
-
-    private final Vector<String> missingFeatures;
-
-    // parser
-    ElementParser        parser;
-
-    public FetchValidator() {
-        parser = new ElementParser();
-        missingPlugins = new Vector<>();
-        missingFeatures = new Vector<>();
-    }
-
-    private boolean allPresent() {
-        // verify presence of all source projects for the build.
-        // collect a list of missing plugins (or fragments), and features
-
-        boolean allPresent = true;
-        Enumeration<String> enumeration = plugins.elements();
-
-        while (enumeration.hasMoreElements()) {
-            final String plugin = enumeration.nextElement();
-            if (new File(install + "/plugins/" + plugin).exists()) {
-                continue;
-            } else {
-                missingPlugins.add(plugin);
-                allPresent = false;
-            }
-        }
-
-        enumeration = features.elements();
-
-        while (enumeration.hasMoreElements()) {
-            final String feature = enumeration.nextElement();
-            if (new File(install + "/features/" + feature).exists()) {
-                continue;
-            } else {
-                missingFeatures.add(feature);
-                allPresent = false;
-            }
-        }
-
-        return allPresent;
-    }
-
-    // entry point
-    @Override
-    public void execute() throws BuildException {
-        getListOfFeatures(list);
-
-        if (!allPresent()) {
-            String missingFeaturesDesc = "";
-            String missingPluginsDesc = "";
-
-            if (missingFeatures.size() > 0) {
-                for (int i = 0; i < missingFeatures.size(); i++) {
-                    missingFeaturesDesc += "\n\r" + missingFeatures.get(i).toString();
-                }
-            }
-
-            if (missingPlugins.size() > 0) {
-                for (int i = 0; i < missingPlugins.size(); i++) {
-                    missingPluginsDesc += "\n\t" + missingPlugins.get(i).toString();
-                }
-            }
-            throw new BuildException(
-                    "The following projects did not get fetched: \n"
-                            + missingFeaturesDesc
-                            + missingPluginsDesc
-                            + "\n"
-                            + "\n\nPossible causes of missing source files include an incorrect Tag entry in a .map file or problems with CVS repositories.");
-        }
-
-        System.out.println("Fetch Complete.");
-    }
-
-    /**
-     * Gets the install.
-     * 
-     * @return Returns a String
-     */
-    public String getInstall() {
-        return install;
-    }
-
-    /**
-     * Gets the list.
-     * 
-     * @return Returns a String
-     */
-    public String getList() {
-        return list;
-    }
-
-    private void getListOfFeatures(final String list) {
-
-        final StringTokenizer tokenizer = new StringTokenizer(list, ",");
-
-        while (tokenizer.hasMoreTokens()) {
-            parser.parse(install, "feature", tokenizer.nextToken().trim());
-        }
-
-        features = parser.getFeatures();
-        plugins = parser.getPlugins();
-    }
-
-    /**
-     * Sets the install.
-     * 
-     * @param install
-     *            The install to set
-     */
-    public void setInstall(final String install) {
-        this.install = install;
-    }
-
-    /**
-     * Sets the list.
-     * 
-     * @param list
-     *            The list to set
-     */
-    public void setList(final String list) {
-        this.list = list;
-    }
-
-}
diff --git a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/UnpackUpdateJars.java b/bundles/org.eclipse.build.tools/src/org/eclipse/releng/UnpackUpdateJars.java
deleted file mode 100644
index 8f8fd2d..0000000
--- a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/UnpackUpdateJars.java
+++ /dev/null
@@ -1,237 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005, 2016 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng;
-
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.FileReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.util.ArrayList;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-
-import org.apache.tools.ant.Task;
-import org.w3c.dom.Document;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-
-public class UnpackUpdateJars extends Task {
-
-    class StreamHandler extends Thread {
-
-        InputStream is;
-
-        String      type;
-
-        StreamHandler(final InputStream is, final String type) {
-            this.is = is;
-            this.type = type;
-        }
-
-        @Override
-        public void run() {
-            try {
-                final InputStreamReader isr = new InputStreamReader(is);
-                final BufferedReader br = new BufferedReader(isr);
-                String line = null;
-                while ((line = br.readLine()) != null) {
-                    System.out.println(type + ">" + line);
-                }
-            }
-            catch (final IOException ioe) {
-                ioe.printStackTrace();
-            }
-        }
-    }
-
-    public static void main(final String[] args) {
-        // TODO Auto-generated method stub
-        final UnpackUpdateJars up = new UnpackUpdateJars();
-        up.site = "/home/davidw/builds/workspaces/davidwrepos2/compare/4.4";
-        up.output = "/home/davidw/builds/workspaces/davidwrepos2/compare/4.4";
-        up.execute();
-    }
-
-    /**
-     * @param args
-     */
-    // parent to plugins and features directory which contains update jars
-    private String site;
-
-    private String output;
-
-    ArrayList<String> unpackedPlugins = new ArrayList<>();
-
-    public UnpackUpdateJars() {
-    }
-
-    // unpack features, then unpack plug-ins which are not set to unpack="false"
-    @Override
-    public void execute() {
-        new File(output).mkdirs();
-        new File(output + "/features").mkdirs();
-        new File(output + "/plugins").mkdirs();
-
-        // extract features
-        final File featureDir = new File(site, "features");
-        if (!featureDir.exists()) {
-            return;
-        }
-        final File[] features = featureDir.listFiles();
-        for (int i = 0; i < features.length; i++) {
-            final File feature = features[i];
-            if (feature.getName().endsWith(".jar")) {
-                final String fileName = feature.getName();
-                final String unpackedFeatureName = fileName.substring(0, fileName.length() - 4);
-                final File unPackedFeature = new File(output + "/features/" + unpackedFeatureName);
-                unzip(feature, unPackedFeature);
-                getUnpackedPluginList(new File(unPackedFeature, "feature.xml"));
-            }
-        }
-
-        // unpack plug-ins
-        for (int i = 0; i < unpackedPlugins.size(); i++) {
-            final File unpackedPluginDirName = new File(output + "/plugins/" + unpackedPlugins.get(i));
-            final File jardPlugin = new File(site, "plugins/" + unpackedPlugins.get(i) + ".jar");
-            if (jardPlugin.exists()) {
-                unzip(jardPlugin, unpackedPluginDirName);
-            }
-        }
-    }
-
-    public String getOutput() {
-        return output;
-    }
-
-    public String getSite() {
-        return site;
-    }
-
-    private void getUnpackedPluginList(final File featureXml) {
-        Document aDocument = null;
-        BufferedReader reader = null;
-        try {
-            reader = new BufferedReader(new FileReader(featureXml));
-        }
-        catch (final FileNotFoundException e) {
-            e.printStackTrace();
-        }
-
-        final InputSource inputSource = new InputSource(reader);
-        final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
-        DocumentBuilder builder = null;
-
-        try {
-            builder = factory.newDocumentBuilder();
-        }
-        catch (final ParserConfigurationException e) {
-            e.printStackTrace();
-        }
-
-        try {
-            aDocument = builder.parse(inputSource);
-        }
-        catch (final SAXException e) {
-            e.printStackTrace();
-        }
-        catch (final IOException e) {
-            e.printStackTrace();
-        }
-        // Get feature attributes
-        final NodeList nodeList = aDocument.getElementsByTagName("plugin");
-        if (nodeList == null) {
-            return;
-        }
-
-        for (int i = 0; i < nodeList.getLength(); i++) {
-            final Node pluginNode = nodeList.item(i);
-            final NamedNodeMap aNamedNodeMap = pluginNode.getAttributes();
-            final Node idNode = aNamedNodeMap.getNamedItem("id");
-            final Node versionNode = aNamedNodeMap.getNamedItem("version");
-            final String pluginDirName = idNode.getNodeValue() + "_" + versionNode.getNodeValue();
-            final Node unpackNode = aNamedNodeMap.getNamedItem("unpack");
-            if (unpackNode == null) {
-                if (!unpackedPlugins.contains(pluginDirName)) {
-                    unpackedPlugins.add(pluginDirName);
-                }
-                continue;
-            }
-
-            if (unpackNode.getNodeValue().toString().trim().toLowerCase().equals("true")) {
-                if (!unpackedPlugins.contains(pluginDirName)) {
-                    System.out.println(pluginDirName);
-                    unpackedPlugins.add(pluginDirName);
-                }
-                continue;
-            }
-            // copy file to new location
-            final File jardPlugin = new File(site, "plugins/" + pluginDirName + ".jar");
-            if (jardPlugin.exists()) {
-                if (!jardPlugin.renameTo(new File(output, "plugins/" + pluginDirName + ".jar"))) {
-                    System.out.println("Failed to move " + jardPlugin.getAbsolutePath() + " to " + output + "plugins/"
-                            + pluginDirName + ".jar");
-                }
-            }
-        }
-    }
-
-    public void setOutput(final String output) {
-        this.output = output;
-    }
-
-    public void setSite(final String site) {
-        this.site = site;
-    }
-
-    public void unzip(final File src, final File dest) {
-        final Runtime rt = Runtime.getRuntime();
-        final String command = "unzip -qo " + src.getPath() + " -d " + dest.getPath();
-        System.out.println("[exec] " + command);
-        Process proc = null;
-        try {
-            proc = rt.exec(command);
-        }
-        catch (final IOException e) {
-            // TODO Auto-generated catch block
-            e.printStackTrace();
-        }
-        // pick up error messages
-        final StreamHandler errorHandler = new StreamHandler(proc.getErrorStream(), "ERROR");
-
-        // pick up output
-        final StreamHandler outputHandler = new StreamHandler(proc.getInputStream(), "OUTPUT");
-
-        // kick them off
-        errorHandler.start();
-        outputHandler.start();
-
-        // capture return code
-        int returnCode = 0;
-        try {
-            returnCode = proc.waitFor();
-        }
-        catch (final InterruptedException e) {
-            // TODO Auto-generated catch block
-            e.printStackTrace();
-        }
-        if (returnCode != 0) {
-            System.out.println("returnCode: " + returnCode);
-        }
-
-    }
-}
diff --git a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/VersionNumberStripper.java b/bundles/org.eclipse.build.tools/src/org/eclipse/releng/VersionNumberStripper.java
deleted file mode 100644
index dbaebf6..0000000
--- a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/VersionNumberStripper.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2006 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng;
-
-import java.io.File;
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.Task;
-
-/*
- * A class that strips version numbers off built plugin directory names. This is
- * helpful when prebuilt plugins are used in generating javadoc (on the
- * classpath).
- */
-
-public class VersionNumberStripper extends Task {
-
-    public static void main(final String[] args) {
-        new VersionNumberStripper().execute();
-    }
-
-    // the directory containing the directories and files from which to remove
-    // version information
-    private String directory="/home/davidw/temp/4.4/R-4.4-201406061215/features";
-
-    public VersionNumberStripper() {
-    }
-
-    @Override
-    public void execute() throws BuildException {
-        setDirectory(directory);
-        stripVersions();
-    }
-
-    public String getDirectory() {
-        return directory;
-    }
-
-    public void setDirectory(final String dir) {
-        directory = dir;
-    }
-
-    private void stripVersions() {
-        /*
-         * rename directories by removing anything from an underscore onward,
-         * assuming that anything following the first occurence of an underscore
-         * is a version number
-         */
-
-        final File file = new File(directory);
-
-        final File[] files = file.listFiles();
-
-        for (int i = 0; i < files.length; i++) {
-            final String absolutePath = files[i].getAbsolutePath();
-            final String path = absolutePath.substring(0, absolutePath.length() - files[i].getName().length());
-
-            final int underScorePos = files[i].getName().indexOf("_");
-            final int jarExtPos = files[i].getName().indexOf(".jar");
-            if (underScorePos != -1) {
-                String targetPath;
-                if (jarExtPos != -1) {
-                    targetPath = path + files[i].getName().substring(0, underScorePos) + ".jar";
-                } else {
-                    targetPath = path + files[i].getName().substring(0, underScorePos);
-                }
-                files[i].renameTo(new File(targetPath));
-            }
-
-        }
-    }
-}
diff --git a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/generators/ErrorTracker.java b/bundles/org.eclipse.build.tools/src/org/eclipse/releng/generators/ErrorTracker.java
deleted file mode 100644
index c151d32..0000000
--- a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/generators/ErrorTracker.java
+++ /dev/null
@@ -1,225 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng.generators;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Enumeration;
-import java.util.Hashtable;
-import java.util.List;
-import java.util.Set;
-import java.util.TreeSet;
-import java.util.Vector;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.SAXException;
-
-/**
- * @version 1.0
- */
-public class ErrorTracker {
-
-    public static void main(final String[] args) {
-
-        // For testing only. Should not be invoked
-
-        final ErrorTracker anInstance = new ErrorTracker();
-        anInstance.loadFile("C:\\junk\\testManifest.xml");
-        final String[] theTypes = anInstance.getTypes();
-        for (int i = 0; i < theTypes.length; i++) {
-            // System.out.println("Type: " + theTypes[i]);
-            final PlatformStatus[] thePlatforms = anInstance.getPlatforms(theTypes[i]);
-            for (int j = 0; j < thePlatforms.length; j++) {
-                // System.out.println("Out ID: " + thePlatforms[j].getId());
-            }
-        }
-    }
-
-
-    private Set<String> testLogsSet = Collections.checkedSortedSet(new TreeSet<>(),String.class);
-    // Platforms keyed on
-    private final Hashtable<String, PlatformStatus> platforms = new Hashtable<>();
-    private final Hashtable<String, Vector<PlatformStatus>> logFiles  = new Hashtable<>();
-    private final Hashtable<String, Vector<String>> typesMap  = new Hashtable<>();
-
-    private final Vector<String> typesList = new Vector<>();
-    private String convertPathDelimiters(final String path) {
-        return new File(path).getPath();
-    }
-
-    public PlatformStatus[] getPlatforms(final String type) {
-        final Vector<String> platformIDs = typesMap.get(type);
-        final PlatformStatus[] result = new PlatformStatus[platformIDs.size()];
-        for (int i = 0; i < platformIDs.size(); i++) {
-            result[i] = platforms.get(platformIDs.elementAt(i));
-        }
-        return result;
-    }
-
-    /**
-     * Returns the testLogs.
-     * 
-     * @return Vector
-     */
-    public List<String> getTestLogs(ArrayList<String> foundConfigs) {
-        // List of test logs expected at end of build
-        // We depend on both test logs and configs being sorted
-        ArrayList<String> testLogs  = new ArrayList<>();
-        for (String initialLogName : testLogsSet) {
-            for (String config : foundConfigs) {
-                testLogs.add(initialLogName + "_" + config + ".xml");
-            }
-        }
-        return testLogs;
-    }
-
-    // Answer a string array of the zip type names in the order they appear in
-    // the .xml file.
-    public String[] getTypes() {
-        return typesList.toArray(new String[typesList.size()]);
-    }
-
-    // Answer an array of PlatformStatus objects for a given type.
-
-    public boolean hasErrors(final String id) {
-        return platforms.get(id).hasErrors();
-    }
-
-    public void loadFile(final String fileName) {
-        final DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance();
-        DocumentBuilder parser = null;
-        try {
-            parser = docBuilderFactory.newDocumentBuilder();
-        }
-        catch (final ParserConfigurationException e1) {
-            e1.printStackTrace();
-        }
-        try {
-
-            final Document document = parser.parse(fileName);
-            final NodeList elements = document.getElementsByTagName("platform");
-            final int elementCount = elements.getLength();
-            for (int i = 0; i < elementCount; i++) {
-                final PlatformStatus aPlatform = new PlatformStatus((Element) elements.item(i));
-                // System.out.println("ID: " + aPlatform.getId());
-                platforms.put(aPlatform.getId(), aPlatform);
-
-                final Node zipType = elements.item(i).getParentNode();
-                final String zipTypeName = zipType.getAttributes().getNamedItem("name").getNodeValue();
-
-                Vector<String> aVector = typesMap.get(zipTypeName);
-                if (aVector == null) {
-                    typesList.add(zipTypeName);
-                    aVector = new Vector<>();
-                    typesMap.put(zipTypeName, aVector);
-                }
-                aVector.add(aPlatform.getId());
-
-            }
-
-            final NodeList effectedFiles = document.getElementsByTagName("effectedFile");
-            final int effectedFilesCount = effectedFiles.getLength();
-            for (int i = 0; i < effectedFilesCount; i++) {
-                final Node anEffectedFile = effectedFiles.item(i);
-                final Node logFile = anEffectedFile.getParentNode();
-                String logFileName = logFile.getAttributes().getNamedItem("name").getNodeValue();
-                logFileName = convertPathDelimiters(logFileName);
-                final String effectedFileID = anEffectedFile.getAttributes().getNamedItem("id").getNodeValue();
-                // System.out.println(logFileName);
-                Vector<PlatformStatus> aVector = logFiles.get(logFileName);
-                if (aVector == null) {
-                    aVector = new Vector<>();
-                    logFiles.put(logFileName, aVector);
-
-                }
-                final PlatformStatus ps = platforms.get(effectedFileID);
-                if (ps != null) {
-                    aVector.addElement(ps);
-                }
-            }
-            
-            // store a list of the test logs expected after testing
-            final NodeList testLogList = document.getElementsByTagName("logFile");
-            final int testLogCount = testLogList.getLength();
-            for (int i = 0; i < testLogCount; i++) {
-
-                final Node testLog = testLogList.item(i);
-                final String testLogName = testLog.getAttributes().getNamedItem("name").getNodeValue();
-                final Node typeNode = testLog.getAttributes().getNamedItem("type");
-                //String type = "test";
-                //if (typeNode != null) {
-                //    type = typeNode.getNodeValue();
-                //}
-                //if (testLogName.endsWith(".xml") && type.equals("test")) {
-                // above is how it used to be checked, prior to 4/4/2016, but 
-                // test logs are only log file in testManifest.xml without a "type" attribute
-                // -- I test for either/or, so that new versions of testManifest.xml 
-                // can more correctly use "test" attribute, if desired.
-                if (typeNode == null || typeNode.getNodeValue().equals("test")) {
-                    int firstUnderscore = testLogName.indexOf('_');
-                    String initialTestName = null;
-                    if (firstUnderscore == -1) {
-                        // no underscore found. Assume testManifest xml has been updated
-                        // to mention minimal name.
-                        initialTestName = testLogName;
-                    } else {
-                        initialTestName = testLogName.substring(0, firstUnderscore);
-                    }
-                    testLogsSet.add(initialTestName);
-                    //System.out.println("Debug: initialTestName: " + initialTestName);
-                }
-                
-            }
-
-        }
-        catch (final IOException e) {
-            System.out.println("IOException: " + fileName);
-            // e.printStackTrace();
-
-        }
-        catch (final SAXException e) {
-            System.out.println("SAXException: " + fileName);
-            e.printStackTrace();
-
-        }
-    }
-
-    public void registerError(final String fileName) {
-        // System.out.println("Found an error in: " + fileName);
-        if (logFiles.containsKey(fileName)) {
-            final Vector<PlatformStatus> aVector = logFiles.get(fileName);
-            for (int i = 0; i < aVector.size(); i++) {
-                aVector.elementAt(i).registerError();
-            }
-        } else {
-
-            // If a log file is not specified explicitly it effects
-            // all "platforms" except JDT
-
-            final Enumeration<PlatformStatus> values = platforms.elements();
-            while (values.hasMoreElements()) {
-                final PlatformStatus aValue = values.nextElement();
-                if (!aValue.getId().equals("JA") && !aValue.getId().equals("EW") && !aValue.getId().equals("EA")) {
-                    aValue.registerError();
-                }
-            }
-        }
-    }
-
-}
diff --git a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/generators/PlatformStatus.java b/bundles/org.eclipse.build.tools/src/org/eclipse/releng/generators/PlatformStatus.java
deleted file mode 100644
index 9678f59..0000000
--- a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/generators/PlatformStatus.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng.generators;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-
-public class PlatformStatus {
-
-    private static List<String> listFromString(final String value) {
-        final List<String> result = new ArrayList<>();
-        for (final StringTokenizer tokenizer = new StringTokenizer(value, ","); tokenizer.hasMoreTokens(); result.add(tokenizer
-                .nextToken())) {
-        }
-        return result;
-    }
-
-    private final String id;
-    private final String name;
-    private final String fileName;
-    private String       format;
-    private List<String>         images;
-
-    private boolean      hasErrors = false;
-
-    PlatformStatus(final Element anElement) {
-        final NamedNodeMap attributes = anElement.getAttributes();
-        id = attributes.getNamedItem("id").getNodeValue();
-        Node node = attributes.getNamedItem("name");
-        name = node == null ? "" : node.getNodeValue();
-        fileName = attributes.getNamedItem("fileName").getNodeValue();
-        node = attributes.getNamedItem("format");
-        if (node != null) {
-            format = node.getNodeValue();
-        }
-        node = attributes.getNamedItem("images");
-        if (node != null) {
-            images = listFromString(node.getNodeValue());
-        }
-    }
-
-    public String getFileName() {
-        return fileName;
-    }
-
-    public String getFormat() {
-        return format;
-    }
-
-    public String getId() {
-        return id;
-    }
-
-    public List<String> getImages() {
-        return images;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public boolean hasErrors() {
-        return hasErrors;
-    }
-
-    public void registerError() {
-        hasErrors = true;
-    }
-
-    @Override
-    public String toString() {
-        final StringBuilder buffer = new StringBuilder();
-        buffer.append("PlatformStatus(");
-        buffer.append("id=" + id);
-        buffer.append(", name=" + name);
-        buffer.append(", filename=" + fileName);
-        buffer.append(")");
-        return buffer.toString();
-    }
-}
diff --git a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/generators/TestResultsGenerator.java b/bundles/org.eclipse.build.tools/src/org/eclipse/releng/generators/TestResultsGenerator.java
deleted file mode 100644
index 6ae320d..0000000
--- a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/generators/TestResultsGenerator.java
+++ /dev/null
@@ -1,1705 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2018 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng.generators;
-
-import java.io.BufferedInputStream;
-import java.io.BufferedOutputStream;
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.FileReader;
-import java.io.FileWriter;
-import java.io.FilenameFilter;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.io.Writer;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.StringTokenizer;
-import java.util.TreeMap;
-import java.util.TreeSet;
-import java.util.Vector;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.Task;
-import org.eclipse.releng.generators.TestResultsGenerator.ResultsTable.Cell;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-
-/**
- * @version 1.0
- * @author Dean Roberts (circa 2000!) and David Williams (circa 2016)
- */
-public class TestResultsGenerator extends Task {
-
-    public class ResultsTable implements Iterable<String> {
-
-        private Map<String, Row> rows    = new TreeMap<>();
-        private List<String>     columns = new ArrayList<>();
-
-        public ResultsTable(ArrayList<String> columns) {
-            this.columns = columns;
-        }
-
-        public class Cell {
-
-            private Integer errorCount  = null;
-            private File    resultsFile = null;
-
-            public Cell(int errorCount, File resultsFile) {
-                this.errorCount = errorCount;
-                this.resultsFile = resultsFile;
-            }
-
-            public Integer getErrorCount() {
-                return errorCount;
-            }
-
-            public File getResultsFile() {
-                return resultsFile;
-            }
-        }
-
-        private class Row {
-
-            Map<String, Cell> row = new TreeMap<>();
-
-            public Row(List<String> columns) {
-                for (String column : columns) {
-                    row.put(column, null);
-                }
-            }
-
-            public Cell getCell(String column) {
-                Cell cell = row.get(column);
-                return cell;
-            }
-
-            public void putCell(String columnName, Integer cellValue, File file) {
-                row.put(columnName, new Cell(cellValue, file));
-            }
-        }
-
-        private Row getRow(String rowname) {
-            Row row = rows.get(rowname);
-            if (row == null) {
-                row = new Row(columns);
-                rows.put(rowname, row);
-            }
-            return row;
-        }
-
-        public Cell getCell(String rowName, String columnName) {
-            Cell result = getRow(rowName).getCell(columnName);
-            return result;
-        }
-
-        public int getCellErrorCount(String rowName, String columnName) {
-            int result = -1;
-            Cell cell = getRow(rowName).getCell(columnName);
-            result = cell.getErrorCount();
-            return result;
-        }
-
-        public File getCellResultsFile(String rowName, String columnName) {
-            File result = null;
-            Cell cell = getRow(rowName).getCell(columnName);
-            result = cell.getResultsFile();
-            return result;
-        }
-
-        public void putCell(String rowName, String columnName, Integer cellValue, File file) {
-            getRow(rowName).putCell(columnName, cellValue, file);
-        }
-
-        List<String> getColumns() {
-            return columns;
-        }
-
-        public void setColumns(List<String> columns) {
-            if (this.columns != null) {
-                throw new RuntimeException("The columns for the table were already defined");
-            }
-            this.columns = columns;
-        }
-
-        @Override
-        public Iterator<String> iterator() {
-            return rows.keySet().iterator();
-        }
-    }
-
-    private static final String HTML_EXTENSION                         = ".html";
-    private static final String XML_EXTENSION                          = ".xml";
-    private static final String WARNING_SEVERITY                       = "WARNING";
-    private static final String ERROR_SEVERITY                         = "ERROR";
-    private static final String INFO_SEVERITY                          = "INFO";
-    private static final String ForbiddenReferenceID                   = "ForbiddenReference";
-    private static final String DiscouragedReferenceID                 = "DiscouragedReference";
-
-    private static final int    DEFAULT_READING_SIZE                   = 8192;
-
-    private static final String elementName                            = "testsuite";
-
-    private ArrayList<String>   expectedConfigs                        = null;
-    private static final String EOL                                    = System.lineSeparator();
-    private static boolean      DEBUG                                  = false;
-    private static String       FOUND_TEST_CONFIGS_FILENAME_DEFAULT    = "testConfigsFound.php";
-
-    private static String       EXPECTED_TEST_CONFIGS_FILENAME_DEFAULT = "testConfigs.php";
-    private String              expected_config_type                   = "expected";
-    private String              expectedConfigFilename;
-    private String              foundConfigFilename;
-    private Vector<String>              dropTokens;
-
-    private String              testResultsWithProblems                = EOL;
-    private String              testResultsXmlUrls                     = EOL;
-
-    private DocumentBuilder     parser                                 = null;
-    private ErrorTracker        anErrorTracker;
-
-    private String              dropTemplateString                     = "";
-
-    // Parameters
-    // build runs JUnit automated tests
-    private boolean             isBuildTested;
-
-    // buildType, I, N
-    private String              buildType;
-
-    // Comma separated list of drop tokens
-    private String              dropTokenList;
-
-    // Location of the xml files
-    private String              xmlDirectoryName;
-
-    // Location of the html files
-    private String              htmlDirectoryName;
-
-    // Location of the resulting index.php file.
-    private String              dropDirectoryName;
-
-    // Location and name of the template drop index.php file.
-    private String              dropTemplateFileName;
-
-    // Name of the HTML fragment file that any testResults.php file will
-    // "include".
-    // setting to common default.
-    private String              testResultsHtmlFileName                = "testResultsTables.html";
-
-    // Name of the generated drop index php file;
-    private String              dropHtmlFileName;
-
-    // Arbitrary path used in the index.php page to href the
-    // generated .html files.
-    private String              hrefTestResultsTargetPath;
-    // Arbitrary path used in the index.php page to reference the compileLogs
-    private String              hrefCompileLogsTargetPath;
-    // Location of compile logs base directory
-    private String              compileLogsDirectoryName;
-    // Location and name of test manifest file
-    private String              testManifestFileName;
-    // private static String testsConstant = ".tests";
-    // private static int testsConstantLength = testsConstant.length();
-    // temporary way to force "missing" list not to be printed (until complete
-    // solution found)
-    private boolean             doMissingList                          = true;
-
-    private Set<String>         missingManifestFiles                   = Collections.checkedSortedSet(new TreeSet<>(), String.class);
-
-    class ExpectedConfigFiler implements FilenameFilter {
-
-        String configEnding;
-
-        public ExpectedConfigFiler(String expectedConfigEnding) {
-            configEnding = expectedConfigEnding;
-        }
-
-        @Override
-        public boolean accept(File dir, String name) {
-            return (name.endsWith(configEnding));
-        }
-
-    }
-
-    private String extractXmlRelativeFileName(final String rootCanonicalPath, final File xmlFile) {
-        if (rootCanonicalPath != null) {
-            String xmlFileCanonicalPath = null;
-            try {
-                xmlFileCanonicalPath = xmlFile.getCanonicalPath();
-            }
-            catch (final IOException e) {
-                logException(e);
-            }
-            if (xmlFileCanonicalPath != null) {
-                // + 1 to remove the '\'
-                return xmlFileCanonicalPath.substring(rootCanonicalPath.length() + 1).replace('\\', '/');
-            }
-        }
-        return "";
-    }
-
-    private void logException(final Throwable e) {
-        log(EOL + "ERROR: " + e.getMessage());
-        StackTraceElement[] stackTrace = e.getStackTrace();
-        for (StackTraceElement stackTraceElement : stackTrace) {
-            log(stackTraceElement.toString());
-        }
-    }
-
-    private static byte[] getFileByteContent(final String fileName) throws IOException {
-        final File file = new File(fileName);
-        try (InputStream stream = new BufferedInputStream(new FileInputStream(file))) {
-            return getInputStreamAsByteArray(stream, (int) file.length());
-        }
-    }
-
-    /**
-     * Returns the given input stream's contents as a byte array. If a length is
-     * specified (ie. if length != -1), only length bytes are returned.
-     * Otherwise all bytes in the stream are returned. Note this doesn't close
-     * the stream.
-     *
-     * @throws IOException
-     *             if a problem occurred reading the stream.
-     */
-    private static byte[] getInputStreamAsByteArray(final InputStream stream, final int length) throws IOException {
-        byte[] contents;
-        if (length == -1) {
-            contents = new byte[0];
-            int contentsLength = 0;
-            int amountRead = -1;
-            do {
-                final int amountRequested = Math.max(stream.available(), DEFAULT_READING_SIZE);
-
-                // resize contents if needed
-                if ((contentsLength + amountRequested) > contents.length) {
-                    System.arraycopy(contents, 0, contents = new byte[contentsLength + amountRequested], 0, contentsLength);
-                }
-
-                // read as many bytes as possible
-                amountRead = stream.read(contents, contentsLength, amountRequested);
-
-                if (amountRead > 0) {
-                    // remember length of contents
-                    contentsLength += amountRead;
-                }
-            }
-            while (amountRead != -1);
-
-            // resize contents if necessary
-            if (contentsLength < contents.length) {
-                System.arraycopy(contents, 0, contents = new byte[contentsLength], 0, contentsLength);
-            }
-        } else {
-            contents = new byte[length];
-            int len = 0;
-            int readSize = 0;
-            while ((readSize != -1) && (len != length)) {
-                // See PR 1FMS89U
-                // We record first the read size. In this case len is the actual
-                // read size.
-                len += readSize;
-                readSize = stream.read(contents, len, length - len);
-            }
-        }
-
-        return contents;
-    }
-
-    public static void main(final String[] args) {
-        final TestResultsGenerator test = new TestResultsGenerator();
-        if (Boolean.FALSE) {
-            test.setTestsConfigExpected(
-                    "ep46I-unit-cen64-gtk2_linux.gtk.x86_64_8.0, ep46I-unit-cen64-gtk3_linux.gtk.x86_64_8.0 ,ep46I-unit-mac64_macosx.cocoa.x86_64_8.0 ,ep46I-unit-win32_win32.win32.x86_8.0");
-            DEBUG = true;
-            try {
-                test.getTestsConfig();
-            }
-            catch (IOException e) {
-                e.printStackTrace();
-            }
-
-        } else {
-            test.setTestsConfigExpected(
-                    "ep46I-unit-cen64-gtk2_linux.gtk.x86_64_8.0 ,ep46I-unit-mac64_macosx.cocoa.x86_64_8.0 ,ep46I-unit-win32_win32.win32.x86_8.0, ep46I-unit-cen64-gtk3_linux.gtk.x86_64_8.0");
-            // "%equinox%,%framework%,%extrabundles%,%other%,%incubator%,%provisioning%,%launchers%,%osgistarterkits%");
-            test.setDropTokenList(
-                    "%sdk%,%tests%,%example%,%rcpruntime%,%rcpsdk%,%runtime%,%jdt%,%jdtsdk%,%jdtc%,%pde%,%pdesdk%,%cvs%,%cvssdk%,%swt%,%relengtools%");
-            test.getDropTokensFromList(test.dropTokenList);
-            test.setIsBuildTested(false);
-            test.setXmlDirectoryName(
-                    "/data/shared/eclipse/buildsmirror/4I/siteDir/eclipse/downloads/drops4/N20160614-2120/testresults/xml");
-            test.setHtmlDirectoryName(
-                    "/data/shared/eclipse/buildsmirror/4I/siteDir/eclipse/downloads/drops4/N20160614-2120/testresults/html");
-            test.setDropDirectoryName("/shared/eclipse/buildsmirror/4N/siteDir/eclipse/downloads/drops4/N20160614-2120");
-
-            test.setDropTemplateFileName(
-                    "/home/davidw/gitNeon/eclipse.platform.releng.aggregator/eclipse.platform.releng.tychoeclipsebuilder/eclipse/publishingFiles/templateFiles/index.template.php");
-            test.setTestResultsHtmlFileName("testResultsTables.html");
-            test.setDropHtmlFileName("index.php");
-
-            test.setHrefTestResultsTargetPath("testresults");
-            test.setCompileLogsDirectoryName(
-                    "/data/shared/eclipse/buildsmirror/4I/siteDir/eclipse/downloads/drops4/N20160614-2120/compilelogs/plugins");
-            test.setHrefCompileLogsTargetPath("compilelogs/plugins/");
-            test.setTestManifestFileName(
-                    "/home/davidw/gitNeon/eclipse.platform.releng.aggregator/eclipse.platform.releng.tychoeclipsebuilder/eclipse/publishingFiles/testManifest.xml");
-            test.execute();
-        }
-    }
-
-    // Configuration of test machines.
-    // Add or change new configurations here
-    // and update titles in testResults.template.php.
-    // These are the suffixes used for JUnit's XML output files.
-    // On each invocation, all files in results directory are
-    // scanned, to see if they end with suffixes, and if so,
-    // are processed for summary row. The column order is determined by
-    // the order listed here.
-    // This suffix is determined, at test time, when the files junit files are
-    // generated, by the setting of a variable named "platform" in test.xml
-    // and associated property files.
-
-    // no defaults set since adds to confusion or errors
-    // private String[] testsConfigDefaults = { "ep4" + getTestedBuildType() +
-    // "-unit-cen64-gtk2_linux.gtk.x86_64_8.0.xml",
-    // "ep4" + getTestedBuildType() + "-unit-mac64_macosx.cocoa.x86_64_8.0.xml",
-    // "ep4" + getTestedBuildType() + "-unit-win32_win32.win32.x86_8.0.xml",
-    // "ep4" + getTestedBuildType() + "-unit-cen64-gtk3_linux.gtk.x86_64_8.0.xml" };
-    private String  testsConfigExpected;
-    private boolean testRan;
-    private String  compilerSummaryFilename = "compilerSummary.html";
-    /*
-     * Default for "regenerate" is FALSE, but during development, is handy to
-     * set to TRUE. If TRUE, the "index.php" file and "compilerSummary.html"
-     * files are regenerated. In production that should seldom be required. The
-     * testResultsTables.html file, however, is regenerated each call (when
-     * 'isTested" is set) since the purpose is usually to include an additional
-     * tested platform.
-     */
-    private boolean regenerate              = Boolean.FALSE;
-
-    private int countCompileErrors(final String aString) {
-        return extractNumber(aString, "error");
-    }
-
-    private int countCompileWarnings(final String aString) {
-        return extractNumber(aString, "warning");
-    }
-
-    private int countDiscouragedWarnings(final String aString) {
-        return extractNumber(aString, "Discouraged access:");
-    }
-
-    private int countInfos(final String aString) {
-        return extractNumber(aString, "info");
-    }
-
-    /*
-     * returns number of errors plus number of failures. returns a negative
-     * number if the file is missing or something is wrong with the file (such
-     * as is incomplete).
-     */
-    private int countErrors(final String fileName) {
-        int errorCount = -99;
-        // File should exists, since we are "driving" this based on file list
-        // ... but, just in case.
-        if (!new File(fileName).exists()) {
-            errorCount = -1;
-        } else {
-
-            if (new File(fileName).length() == 0) {
-                errorCount = -2;
-            } else {
-
-                try {
-                    final DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance();
-                    parser = docBuilderFactory.newDocumentBuilder();
-
-                    final Document document = parser.parse(fileName);
-                    final NodeList elements = document.getElementsByTagName(elementName);
-
-                    final int elementCount = elements.getLength();
-                    if (elementCount == 0) {
-                        errorCount = -3;
-                    } else {
-                        // There can be multiple "testSuites" per file so we
-                        // need to
-                        // loop through each to count all errors and failures.
-                        errorCount = 0;
-                        for (int i = 0; i < elementCount; i++) {
-                            final Element element = (Element) elements.item(i);
-                            final NamedNodeMap attributes = element.getAttributes();
-                            Node aNode = attributes.getNamedItem("errors");
-                            if (aNode != null) {
-                                errorCount = errorCount + Integer.parseInt(aNode.getNodeValue());
-                            }
-                            aNode = attributes.getNamedItem("failures");
-                            errorCount = errorCount + Integer.parseInt(aNode.getNodeValue());
-                        }
-                    }
-
-                }
-                catch (final IOException e) {
-                    log(EOL + "ERROR: IOException: " + fileName);
-                    logException(e);
-                    errorCount = -4;
-                }
-                catch (final SAXException e) {
-                    log(EOL + "ERROR: SAXException: " + fileName);
-                    logException(e);
-                    errorCount = -5;
-                }
-                catch (final ParserConfigurationException e) {
-                    logException(e);
-                    errorCount = -6;
-                }
-            }
-        }
-        return errorCount;
-    }
-
-    private int countForbiddenWarnings(final String aString) {
-        return extractNumber(aString, "Access restriction:");
-    }
-
-    @Override
-    public void execute() {
-
-        log(EOL + "INFO: Processing test and build results for ");
-        log("\t" + getDropDirectoryName());
-        anErrorTracker = new ErrorTracker();
-        anErrorTracker.loadFile(getTestManifestFileName());
-        getDropTokensFromList(getDropTokenList());
-        dropTemplateString = readFile(getDropTemplateFileName());
-
-        writeDropIndexFile();
-
-        try {
-            parseCompileLogs();
-        }
-        catch (IOException e) {
-            throw new BuildException("Error while parsing Compiler Results File ", e);
-        }
-
-        if (isBuildTested()) {
-
-            try {
-                parseJUnitTestsXml();
-
-            }
-            catch (IOException e) {
-                throw new BuildException("Error while parsing JUnit Tests Results Files", e);
-            }
-
-        } else {
-            log(EOL + "INFO: isBuildTested value was not true, so did no processing for test files");
-        }
-        log(EOL + "INFO: Completed processing test and build results");
-    }
-
-    private int extractNumber(final String aString, final String endToken) {
-        final int endIndex = aString.lastIndexOf(endToken);
-        if (endIndex == -1) {
-            return 0;
-        }
-
-        int startIndex = endIndex;
-        while ((startIndex >= 0) && (aString.charAt(startIndex) != '(') && (aString.charAt(startIndex) != ',')) {
-            startIndex--;
-        }
-
-        final String count = aString.substring(startIndex + 1, endIndex).trim();
-        try {
-            return Integer.parseInt(count);
-        }
-        catch (final NumberFormatException e) {
-            return 0;
-        }
-
-    }
-
-    private void formatAccessesErrorRow(final String fileName, final int forbiddenAccessesWarningsCount,
-            final int discouragedAccessesWarningsCount, final int infoCount, final StringBuilder buffer) {
-
-        if ((forbiddenAccessesWarningsCount == 0) && (discouragedAccessesWarningsCount == 0) && (infoCount == 0)) {
-            return;
-        }
-
-        String relativeName = computeRelativeName(fileName);
-        String shortName = computeShortName(relativeName);
-
-        buffer.append("<tr>").append(EOL).append("<td class='namecell'>").append(EOL).append("<a href=").append("\"")
-        .append(relativeName).append("\">").append(shortName).append("</a>").append("</td>\n")
-        .append("<td class=\"cell\" >").append("<a href=").append("\"").append(relativeName).append("#FORBIDDEN_WARNINGS")
-        .append("\">").append(forbiddenAccessesWarningsCount).append("</a>").append("</td>").append(EOL)
-        .append("<td class=\"cell\" >").append("<a href=").append("\"").append(relativeName).append("#DISCOURAGED_WARNINGS")
-        .append("\">").append(discouragedAccessesWarningsCount).append("</a>").append("</td>").append(EOL)
-        .append("<td class=\"cell\" >").append("<a href=").append("\"").append(relativeName).append("#INFO_WARNINGS")
-        .append("\">").append(infoCount).append("</a>").append("</td>").append(EOL).append("</tr>")
-        .append(EOL);
-    }
-
-    private String computeRelativeName(final String fileName) {
-        String relativeName;
-        final int i = fileName.indexOf(getHrefCompileLogsTargetPath());
-        relativeName = fileName.substring(i);
-        return relativeName;
-    }
-
-    private String computeShortName(final String relativeName) {
-        String shortName;
-
-        int start = getHrefCompileLogsTargetPath().length();
-        int last = relativeName.lastIndexOf("/");
-        // if there is no "last slash", that's a pretty weird case, but we'll
-        // just
-        // take the whole rest of string in that case.
-        if (last == -1) {
-            shortName = relativeName.substring(start);
-        } else {
-            shortName = relativeName.substring(start, last);
-        }
-        // further shortening (may need to "back out", so left as separate step)
-        // we always expect the name to start with "org.eclipse." .. but, just
-        // in case that changes, we'll check and handle if not.
-        String commonnamespace = "org.eclipse.";
-        if (shortName.startsWith(commonnamespace)) {
-            start = commonnamespace.length();
-        } else {
-            start = 0;
-        }
-        // Similarly, we alwasy expect the name to end with '_version', but just
-        // in case not.
-        last = shortName.indexOf('_');
-        if (last == -1) {
-            shortName = shortName.substring(start);
-        } else {
-            shortName = shortName.substring(start, last);
-        }
-        return shortName;
-    }
-
-    private void formatCompileErrorRow(final String fileName, final int errorCount, final int warningCount,
-            final StringBuilder buffer) {
-
-        if ((errorCount == 0) && (warningCount == 0)) {
-            return;
-        }
-
-        String relativeName = computeRelativeName(fileName);
-        String shortName = computeShortName(relativeName);
-
-        buffer.append("<tr>" + EOL + "<td class='cellname'>" + EOL).append("<a href=").append("\"").append(relativeName)
-        .append("\">").append(shortName).append("</a>").append("</td>\n").append("<td class=\"cell\" >").append("<a href=")
-        .append("\"").append(relativeName).append("#ERRORS").append("\">").append(errorCount).append("</a>")
-        .append("</td>\n").append("<td class=\"cell\" >").append("<a href=").append("\"").append(relativeName)
-        .append("#OTHER_WARNINGS").append("\">").append(warningCount).append("</a>").append("</td>\n").append("</tr>\n");
-    }
-
-    public String getBuildType() {
-        return buildType;
-    }
-
-    /**
-     * Gets the compileLogsDirectoryName.
-     *
-     * @return Returns a String
-     */
-    public String getCompileLogsDirectoryName() {
-        return compileLogsDirectoryName;
-    }
-
-    public String getDropDirectoryName() {
-        return dropDirectoryName;
-    }
-
-    /**
-     * Gets the dropHtmlFileName.
-     *
-     * @return Returns a String
-     */
-    public String getDropHtmlFileName() {
-        return dropHtmlFileName;
-    }
-
-    /**
-     * Gets the dropTemplateFileName.
-     *
-     * @return Returns a String
-     */
-    public String getDropTemplateFileName() {
-        return dropTemplateFileName;
-    }
-
-    public String getDropTokenList() {
-        return dropTokenList;
-    }
-
-    /**
-     * @return
-     */
-    public Vector<String> getDropTokens() {
-        return dropTokens;
-    }
-
-    private void getDropTokensFromList(final String list) {
-        final StringTokenizer tokenizer = new StringTokenizer(list, ",");
-        dropTokens = new Vector<>();
-
-        while (tokenizer.hasMoreTokens()) {
-            dropTokens.add(tokenizer.nextToken());
-        }
-    }
-
-    /**
-     * Gets the hrefCompileLogsTargetPath.
-     *
-     * @return Returns a String
-     */
-    public String getHrefCompileLogsTargetPath() {
-        return hrefCompileLogsTargetPath;
-    }
-
-    /**
-     * Gets the hrefTestResultsTargetPath.
-     *
-     * @return Returns a String
-     */
-    public String getHrefTestResultsTargetPath() {
-        return hrefTestResultsTargetPath;
-    }
-
-    public String getHtmlDirectoryName() {
-        return htmlDirectoryName;
-    }
-
-    /**
-     * Gets the testManifestFileName.
-     *
-     * @return Returns a String
-     */
-    public String getTestManifestFileName() {
-        return testManifestFileName;
-    }
-
-    public String getTestResultsHtmlFileName() {
-        return testResultsHtmlFileName;
-    }
-
-    /**
-     * @return
-     */
-    public String getTestResultsWithProblems() {
-        return testResultsWithProblems;
-    }
-
-    /**
-     * @return
-     */
-    public String getTestResultsXmlUrls() {
-        return testResultsXmlUrls;
-    }
-
-    public String getXmlDirectoryName() {
-        return xmlDirectoryName;
-    }
-
-    public boolean isBuildTested() {
-        return isBuildTested;
-    }
-
-    private void parseCompileLog(final String log, final StringBuilder compilerLog, final StringBuilder accessesLog) {
-        int errorCount = 0;
-        int warningCount = 0;
-        int forbiddenWarningCount = 0;
-        int discouragedWarningCount = 0;
-        int infoCount = 0;
-
-        final File file = new File(log);
-        Document aDocument = null;
-        try (BufferedReader reader = new BufferedReader(new FileReader(file))){
-            final InputSource inputSource = new InputSource(reader);
-            final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
-            final DocumentBuilder builder = factory.newDocumentBuilder();
-            aDocument = builder.parse(inputSource);
-        }
-        catch (final SAXException e) {
-            logException(e);
-        }
-        catch (final IOException e) {
-            logException(e);
-        }
-        catch (final ParserConfigurationException e) {
-            logException(e);
-        }
-
-        if (aDocument == null) {
-            return;
-        }
-        // Get summary of problems
-        final NodeList nodeList = aDocument.getElementsByTagName("problem");
-        if ((nodeList == null) || (nodeList.getLength() == 0)) {
-            return;
-        }
-
-        final int length = nodeList.getLength();
-        for (int i = 0; i < length; i++) {
-            final Node problemNode = nodeList.item(i);
-            final NamedNodeMap aNamedNodeMap = problemNode.getAttributes();
-            final Node severityNode = aNamedNodeMap.getNamedItem("severity");
-            final Node idNode = aNamedNodeMap.getNamedItem("id");
-            if (severityNode != null) {
-                final String severityNodeValue = severityNode.getNodeValue();
-                if (WARNING_SEVERITY.equals(severityNodeValue)) {
-                    // this is a warning
-                    // need to check the id
-                    final String nodeValue = idNode.getNodeValue();
-                    if (ForbiddenReferenceID.equals(nodeValue)) {
-                        forbiddenWarningCount++;
-                    } else if (DiscouragedReferenceID.equals(nodeValue)) {
-                        discouragedWarningCount++;
-                    } else {
-                        warningCount++;
-                    }
-                } else if (ERROR_SEVERITY.equals(severityNodeValue)) {
-                    // this is an error
-                    errorCount++;
-                } else if (INFO_SEVERITY.equals(severityNodeValue)) {
-                    // this is an info warning
-                    infoCount++;
-                }
-            }
-        }
-        if (errorCount != 0) {
-            // use wildcard in place of version number on directory names
-            // log(log + "/n");
-            String logName = log.substring(getCompileLogsDirectoryName().length() + 1);
-            final StringBuilder buffer = new StringBuilder(logName);
-            buffer.replace(logName.indexOf("_") + 1, logName.indexOf(File.separator, logName.indexOf("_") + 1), "*");
-            logName = new String(buffer);
-
-            anErrorTracker.registerError(logName);
-        }
-        // make sure '.xml' extension is "last thing" in string. (bug 490320)
-        final String logName = log.replaceAll(XML_EXTENSION + "$", HTML_EXTENSION);
-        formatCompileErrorRow(logName, errorCount, warningCount, compilerLog);
-        formatAccessesErrorRow(logName, forbiddenWarningCount, discouragedWarningCount, infoCount, accessesLog);
-    }
-
-    private void parseCompileLogs() throws IOException {
-        File sourceDirectory = new File(getCompileLogsDirectoryName());
-        File mainDir = new File(getDropDirectoryName());
-        File compilerSummaryFile = new File(mainDir, compilerSummaryFilename);
-        // we do not recompute compiler summary each time, since it is
-        // fairly time consuming -- and no reason it would not be "complete",
-        // if it exists.
-        if (compilerSummaryFile.exists() && !isRegenerate()) {
-            log(EOL + "INFO: Compile logs summary page, " + compilerSummaryFilename
-                    + ", was found to exist already and not regenerated.");
-        } else {
-            if (compilerSummaryFile.exists()) {
-                log(EOL + "INFO: Compile logs summary page, " + compilerSummaryFilename
-                        + ", was found to exist already and is being regenerated.");
-            }
-            log("DEBUG: BEGIN: Parsing compile logs and generating summary table.");
-            String compileLogResults = "";
-            final StringBuilder compilerString = new StringBuilder();
-            final StringBuilder accessesString = new StringBuilder();
-            processCompileLogsDirectory(getCompileLogsDirectoryName(), compilerString, accessesString);
-            if (compilerString.length() == 0) {
-                compilerString.append(
-                        "<tr><td class='namecell'>None</td><td class='cell'>&nbsp;</td><td class='cell'>&nbsp;</td></tr>" + EOL);
-            }
-            if (accessesString.length() == 0) {
-                accessesString.append(
-                        "<tr><td class='namecell'>None</td><td class='cell'>&nbsp;</td><td class='cell'>&nbsp;</td></tr>" + EOL);
-            }
-
-            compileLogResults = EOL + EOL + "<h3 id=\"PluginsErrors\">Plugins containing compile errors or warnings</h3>" + EOL
-                    + EOL
-                    + "<p>The table below shows the plugins in which errors or warnings were encountered. Click on the jar file link to view its"
-                    + EOL + "detailed report.</p>" + EOL + EOL + "<table>" + EOL + "  <tr>" + EOL
-                    + "    <th class='cell'>Compile Logs (Jar Files)</th>" + EOL + "    <th class='cell'>Errors</th>" + EOL
-                    + "<th class='cell'>Warnings</th>" + EOL + "  </tr>" + EOL;
-
-            compileLogResults = compileLogResults + compilerString.toString();
-
-            compileLogResults = compileLogResults + "          </table>" + EOL + EOL
-                    + "<h3 id=\"AcessErrors\">Plugins containing access errors or warnings</h3>" + EOL + "<table>" + EOL + " <tr>"
-                    + EOL + "<th class='cell'>Compile Logs (Jar Files)</th>" + EOL + "   <th class='cell'>Forbidden Access</th>"
-                    + EOL + "   <th class='cell'>Discouraged Access</th>" + EOL + "   <th class='cell'>Info Warnings</th>" + EOL + "</tr>" + EOL;
-
-            compileLogResults = compileLogResults + accessesString.toString();
-            compileLogResults = compileLogResults + "</table>" + EOL;
-            // write the include file. The name of this file must match what is
-            // in testResults.template.php
-            writePhpIncludeCompilerResultsFile(sourceDirectory, compileLogResults);
-            log("DEBUG: End: Parsing compile logs and generating summary table.");
-        }
-    }
-
-    private void parseJUnitTestsXml() throws IOException {
-        log("DEBUG: Begin: Parsing XML JUnit results files");
-        ArrayList<String> foundConfigs = new ArrayList<>();
-        final File xmlResultsDirectory = new File(getXmlDirectoryName());
-        ResultsTable resultsTable = new ResultsTable(getTestsConfig());
-        if (xmlResultsDirectory.exists()) {
-            // reinitialize each time.
-            // We currently "re do" all of tests, but can improve in the future
-            // where the "found configs" are remembered, but then have to keep
-            // track of original order (not "found" order which has to with when
-            // tests completed).
-            foundConfigs.clear();
-
-            ArrayList<File> allFileNames = new ArrayList<>();
-
-            for (String expectedConfig : getTestsConfig()) {
-
-                FilenameFilter configfilter = new ExpectedConfigFiler("_" + expectedConfig + XML_EXTENSION);
-                // we end with "full" list of files, sorted by configfilter, and
-                // then alphabetical.
-                File[] xmlFileNamesForConfig = xmlResultsDirectory.listFiles(configfilter);
-
-                if (xmlFileNamesForConfig.length > 0) {
-                    // log("DEBUG: For " + expectedConfig + " found " +
-                    // xmlFileNamesForConfig.length + " XML results files");
-                    foundConfigs.add(expectedConfig);
-                    // sort by name, for each 'config' found.
-                    Arrays.sort(xmlFileNamesForConfig);
-                    for (File file : xmlFileNamesForConfig) {
-                        allFileNames.add(file);
-                    }
-                }
-            }
-            File[] xmlFileNames = new File[allFileNames.size()];
-            allFileNames.toArray(xmlFileNames);
-            // files MUST be alphabetical, for now?
-            Arrays.sort(xmlFileNames);
-            String sourceDirectoryCanonicalPath = getDropDirectoryName();
-            for (int i = 0; i < xmlFileNames.length; i++) {
-                File junitResultsFile = xmlFileNames[i];
-                checkIfMissingFromTestManifestFile(junitResultsFile, foundConfigs);
-                String fullName = junitResultsFile.getPath();
-                int errorCount = countErrors(fullName);
-                resultsTable.putCell(computeCoreName(junitResultsFile), computeConfig(junitResultsFile), errorCount,
-                        junitResultsFile);
-                if (errorCount != 0) {
-                    trackDataForMail(sourceDirectoryCanonicalPath, junitResultsFile, fullName);
-                }
-            }
-        } else {
-            // error? Or, just too early?
-            log(EOL + "WARNING: sourceDirectory did not exist at \n\t" + xmlResultsDirectory);
-            log("     either incorrect call to 'generate index' or called too early (tests not done yet)?");
-        }
-        log("DEBUG: End: Parsing XML JUnit results files");
-        // above is all "compute data". Now it is time to "display" it.
-        if (foundConfigs.size() > 0) {
-            log("DEBUG: Begin: Generating test results index tables in " + getTestResultsHtmlFileName());
-            setTestsRan(true);
-            writeHTMLResultsTable(foundConfigs, resultsTable);
-            log("DEBUG: End: Generating test results index tables");
-        } else {
-            setTestsRan(false);
-            log(EOL + "WARNING: Test results not found in " + xmlResultsDirectory.getAbsolutePath());
-        }
-
-    }
-
-    private void writeHTMLResultsTable(ArrayList<String> foundConfigs, ResultsTable resultsTable) throws IOException {
-        // These first files reflect what we expected, and what we found.
-        String found_config_type = "found";
-        writePhpConfigFile(found_config_type, foundConfigs, getFoundConfigFilename());
-        // write the table to main output directory in testResultsTables.html,
-        // which
-        // in turn is included by the testResults.php file.
-
-        String htmlString = "";
-        // first we right a bit of "static" part. That comes before the table.
-        htmlString = htmlString + EOL + "<h3 id=\"UnitTest\">Unit Test Results</h3>" + EOL;
-
-        htmlString = htmlString
-                + "<p>The unit tests are run on the <a href=\"https://ci.eclipse.org/releng/view/Automated%20tests/\">releng ci instance</a>.</p>"
-                + EOL;
-
-        htmlString = htmlString + "<p>The table shows the unit test results for this build on the platforms" + EOL;
-        htmlString = htmlString + "tested. You may access the test results page specific to each" + EOL;
-        htmlString = htmlString + "component on a specific platform by clicking the cell link." + EOL;
-        htmlString = htmlString + "Normally, the number of errors is indicated in the cell.</p>" + EOL;
-        htmlString = htmlString + "<p>A negative number or \"DNF\" means the test \"Did Not Finish\" for unknown reasons" + EOL;
-        htmlString = htmlString + "and hence no results page is available. In that case," + EOL;
-        htmlString = htmlString + "more information can sometimes be found in" + EOL;
-        htmlString = htmlString + "the <a href=\"logs.php#console\">console logs</a>.</p>" + EOL;
-        htmlString = htmlString + "<?php" + EOL;
-        htmlString = htmlString + "if (file_exists(\"testNotes.html\")) {" + EOL;
-        htmlString = htmlString + "  $my_file = file_get_contents(\"testNotes.html\");" + EOL;
-        htmlString = htmlString + "  echo $my_file;" + EOL;
-        htmlString = htmlString + "}" + EOL;
-        htmlString = htmlString + "?>" + EOL;
-
-        htmlString = htmlString + startTableOfUnitResults();
-        for (String row : resultsTable) {
-            htmlString = htmlString + formatJUnitRow(row, resultsTable, foundConfigs);
-        }
-        // Once we are done with the Unit tests rows, we must add end table
-        // tag, since the following methods may or may not add a table of
-        // their own.
-        htmlString = htmlString + EOL + "</table>" + EOL;
-        // check for missing test logs
-        // TODO put styling on these tables
-        htmlString = htmlString + verifyAllTestsRan(xmlDirectoryName, foundConfigs);
-        htmlString = htmlString + listMissingManifestFiles();
-        writeTestResultsFile(htmlString);
-    }
-
-    private String startTableOfUnitResults() throws IOException {
-        String result = "";
-        int ncolumns = getTestsConfig().size();
-        result = result + "<table>" + EOL;
-        // table header
-        result = result + "<tr>" + EOL;
-        result = result + "<th class='cell' " + " rowspan='2' > org.eclipse <br /> Test Bundles </th>" + EOL;
-        result = result + "<th class='cell' colspan='" + ncolumns + "'> Test Configurations (Hudson Job/os.ws.arch/VM) </th>" + EOL;
-        result = result + "</tr>\n";
-
-        result = result + "<tr>" + EOL;
-
-        for (String column : getTestsConfig()) {
-            result = result + "<th class='cell'>" + computeDisplayConfig(column) + "</th>\n";
-        }
-        result = result + "</tr>" + EOL;
-        // end table header
-        return result;
-    }
-
-    /*
-     * This function "breaks" the full config string at meaningful underscores,
-     * for improved display in tables and similar. Remember, some config values
-     * can have more than two underscores, such as
-     * ep46I-unit-lin64_linux.gtk.x86_64_8.0, which should be split as
-     * ep46I-unit-lin64 lin64_linux.gtk.x86_64 8.0
-     */
-    private String computeDisplayConfig(String config) {
-        int lastUnderscore = config.lastIndexOf("_");
-        int firstUnderscore = config.indexOf('_');
-        // echo "<br/>DEBUG: config: config firstUnderscore: firstUnderscore
-        // lastUnderscore: lastUnderscore lastMinusFirst: platformLength"
-        String jobname = config.substring(0, firstUnderscore);
-        String platformconfig = config.substring(firstUnderscore + 1, lastUnderscore);
-        String vmused = config.substring(lastUnderscore + 1);
-        // echo "DEBUG: jobname: ".jobname."<br/>";
-        // echo "DEBUG: platformconfig: ".platformconfig."<br/>";
-        // echo "DEBUG: vmused: ".vmused."<br/>";
-        return jobname + "<br/>" + platformconfig + "<br/>" + vmused;
-
-    }
-
-    private void setTestsRan(boolean b) {
-        testRan = b;
-    }
-
-    /*
-     * As far as I know, this "work" was done to track data send out in an
-     * email.
-     */
-    private void trackDataForMail(String sourceDirectoryCanonicalPath, File junitResultsFile, final String fullName) {
-        final String testName = junitResultsFile.getName().substring(0,
-                junitResultsFile.getName().length() - XML_EXTENSION.length());
-        testResultsWithProblems = testResultsWithProblems.concat(EOL + testName);
-        testResultsXmlUrls = testResultsXmlUrls
-                .concat(EOL + extractXmlRelativeFileName(sourceDirectoryCanonicalPath, junitResultsFile));
-        anErrorTracker.registerError(fullName.substring(getXmlDirectoryName().length() + 1));
-    }
-
-    /*
-     * This is the "reverse" of checking for "missing test results". It is
-     * simple sanity check to see if all "known" test results are listed in in
-     * the testManifest.xml file. We only do this check if we also are checking
-     * for missing logs which depends on an accurate testManifest.xml file.
-     */
-    private void checkIfMissingFromTestManifestFile(File junitResultsFile, ArrayList<String> foundConfigs) {
-        if (getDoMissingList()) {
-            if (!verifyLogInManifest(junitResultsFile.getName(), foundConfigs)) {
-                String corename = computeCoreName(junitResultsFile);
-                missingManifestFiles.add(corename);
-            }
-        }
-    }
-
-    private String computeCoreName(File junitResultsFile) {
-        String fname = junitResultsFile.getName();
-        // corename is all that needs to be listed in testManifest.xml
-        String corename = null;
-        int firstUnderscorepos = fname.indexOf('_');
-        if (firstUnderscorepos == -1) {
-            // should not occur, but if it does, we will take whole name
-            corename = fname;
-        } else {
-            corename = fname.substring(0, firstUnderscorepos);
-        }
-        return corename;
-    }
-
-    private String computeConfig(File junitResultsFile) {
-        String fname = junitResultsFile.getName();
-        String configName = null;
-        int firstUnderscorepos = fname.indexOf('_');
-        if (firstUnderscorepos == -1) {
-            // should not occur, but if it does, we will set to null
-            // and let calling program decide what to do.
-            configName = null;
-        } else {
-            int lastPos = fname.lastIndexOf(XML_EXTENSION);
-            if (lastPos == -1) {
-                configName = null;
-            } else {
-                configName = fname.substring(firstUnderscorepos + 1, lastPos);
-            }
-        }
-        return configName;
-    }
-
-    private void writePhpConfigFile(String config_type, ArrayList<String> configs, String phpfilename) throws IOException {
-        File mainDir = new File(getDropDirectoryName());
-        File testConfigsFile = new File(mainDir, phpfilename);
-        try (Writer testconfigsPHP = new FileWriter(testConfigsFile)) {
-            testconfigsPHP.write("<?php" + EOL);
-            testconfigsPHP.write("//This file created by 'generateIndex' ant task, while parsing test results" + EOL);
-            testconfigsPHP.write("// It is based on " + config_type + " testConfigs" + EOL);
-            String phpArrayVariableName = "$" + config_type + "TestConfigs";
-            testconfigsPHP.write(phpArrayVariableName + " = array();" + EOL);
-            for (String fConfig : configs) {
-                testconfigsPHP.write(phpArrayVariableName + "[]=\"" + fConfig + "\";" + EOL);
-            }
-        }
-    }
-
-    private void writePhpIncludeCompilerResultsFile(final File sourceDirectory, String compilerSummary) throws IOException {
-        File mainDir = new File(getDropDirectoryName());
-        File compilerSummaryFile = new File(mainDir, compilerSummaryFilename);
-        try (Writer compilerSummaryPHP = new FileWriter(compilerSummaryFile)) {
-            compilerSummaryPHP.write("<!--" + EOL);
-            compilerSummaryPHP
-            .write("  This file created by 'generateIndex' ant task, while parsing build and tests results" + EOL);
-            compilerSummaryPHP.write("-->" + EOL);
-            compilerSummaryPHP.write(compilerSummary);
-        }
-    }
-
-    private void processCompileLogsDirectory(final String directoryName, final StringBuilder compilerLog,
-            final StringBuilder accessesLog) {
-        final File sourceDirectory = new File(directoryName);
-        if (sourceDirectory.isFile()) {
-            if (sourceDirectory.getName().endsWith(".log")) {
-                readCompileLog(sourceDirectory.getAbsolutePath(), compilerLog, accessesLog);
-            }
-            if (sourceDirectory.getName().endsWith(XML_EXTENSION)) {
-                parseCompileLog(sourceDirectory.getAbsolutePath(), compilerLog, accessesLog);
-            }
-        }
-        if (sourceDirectory.isDirectory()) {
-            final File[] logFiles = sourceDirectory.listFiles();
-            Arrays.sort(logFiles);
-            for (int j = 0; j < logFiles.length; j++) {
-                processCompileLogsDirectory(logFiles[j].getAbsolutePath(), compilerLog, accessesLog);
-            }
-        }
-    }
-
-    private String processDropRow(final PlatformStatus aPlatform) {
-        if ("equinox".equalsIgnoreCase(aPlatform.getFormat())) {
-            return processEquinoxDropRow(aPlatform);
-        } else {
-            return processEclipseDropRow(aPlatform);
-        }
-
-    }
-
-    private String processEclipseDropRow(PlatformStatus aPlatform) {
-        String result = "<tr>\n<td>" + aPlatform.getName() + "</td>\n";
-        // generate file link, size and checksums in the php template
-        result = result + "<?php genLinks(\"" + aPlatform.getFileName() + "\"); ?>\n";
-        result = result + "</tr>\n";
-        return result;
-    }
-
-    private String processDropRows(final PlatformStatus[] platforms) {
-        String result = "";
-        for (int i = 0; i < platforms.length; i++) {
-            result = result + processDropRow(platforms[i]);
-        }
-        return result;
-    }
-
-    /*
-     * Generate and return the HTML mark-up for a single row for an Equinox JAR
-     * on the downloads page.
-     */
-    private String processEquinoxDropRow(final PlatformStatus aPlatform) {
-        String result = "<tr>";
-        result = result + "<td>";
-        final String filename = aPlatform.getFileName();
-        // if there are images, put them in the same table column as the name of
-        // the file
-        final List<String> images = aPlatform.getImages();
-        if ((images != null) && !images.isEmpty()) {
-            for (final Iterator<String> iter = images.iterator(); iter.hasNext();) {
-                result = result + "<img src=\"" + iter.next() + "\"/>&nbsp;";
-            }
-        }
-        result = result + "<a href=\"download.php?dropFile=" + filename + "\">" + filename + "</a></td>\n";
-        result = result + "{$generateDropSize(\"" + filename + "\")}\n";
-        result = result + "{$generateChecksumLinks(\"" + filename + "\", $buildlabel)}\n";
-        result = result + "</tr>\n";
-        return result;
-    }
-
-    private void readCompileLog(final String log, final StringBuilder compilerLog, final StringBuilder accessesLog) {
-        final String fileContents = readFile(log);
-
-        final int errorCount = countCompileErrors(fileContents);
-        final int warningCount = countCompileWarnings(fileContents);
-        final int forbiddenWarningCount = countForbiddenWarnings(fileContents);
-        final int discouragedWarningCount = countDiscouragedWarnings(fileContents);
-        final int infoCount = countInfos(fileContents);
-        if (errorCount != 0) {
-            // use wildcard in place of version number on directory names
-            String logName = log.substring(getCompileLogsDirectoryName().length() + 1);
-            final StringBuilder stringBuilder = new StringBuilder(logName);
-            stringBuilder.replace(logName.indexOf("_") + 1, logName.indexOf(File.separator, logName.indexOf("_") + 1), "*");
-            logName = new String(stringBuilder);
-
-            anErrorTracker.registerError(logName);
-        }
-        formatCompileErrorRow(log, errorCount, warningCount, compilerLog);
-        formatAccessesErrorRow(log, forbiddenWarningCount, discouragedWarningCount, infoCount, accessesLog);
-    }
-
-    private String readFile(final String fileName) {
-        byte[] aByteArray = null;
-        try {
-            aByteArray = getFileByteContent(fileName);
-        }
-        catch (final IOException e) {
-            logException(e);
-        }
-        if (aByteArray == null) {
-            return "";
-        }
-        return new String(aByteArray);
-    }
-
-    private String replace(final String source, final String original, final String replacement) {
-
-        final int replaceIndex = source.indexOf(original);
-        if (replaceIndex > -1) {
-            String resultString = source.substring(0, replaceIndex);
-            resultString = resultString + replacement;
-            resultString = resultString + source.substring(replaceIndex + original.length());
-            return resultString;
-        } else {
-            log(EOL + "WARNING: Could not find token: " + original);
-            return source;
-        }
-
-    }
-
-    public void setBuildType(final String buildType) {
-        this.buildType = buildType;
-    }
-
-    /**
-     * Sets the compileLogsDirectoryName.
-     *
-     * @param compileLogsDirectoryName
-     *            The compileLogsDirectoryName to set
-     */
-    public void setCompileLogsDirectoryName(final String compileLogsDirectoryName) {
-        this.compileLogsDirectoryName = compileLogsDirectoryName;
-    }
-
-    public void setDropDirectoryName(final String aString) {
-        dropDirectoryName = aString;
-    }
-
-    /**
-     * Sets the dropHtmlFileName.
-     *
-     * @param dropHtmlFileName
-     *            The dropHtmlFileName to set
-     */
-    public void setDropHtmlFileName(final String dropHtmlFileName) {
-        this.dropHtmlFileName = dropHtmlFileName;
-    }
-
-    /**
-     * Sets the dropTemplateFileName.
-     *
-     * @param dropTemplateFileName
-     *            The dropTemplateFileName to set
-     */
-    public void setDropTemplateFileName(final String dropTemplateFileName) {
-        this.dropTemplateFileName = dropTemplateFileName;
-    }
-
-    public void setDropTokenList(final String dropTokenList) {
-        this.dropTokenList = dropTokenList;
-    }
-
-    /**
-     * @param vector
-     */
-    public void setDropTokens(final Vector<String> vector) {
-        dropTokens = vector;
-    }
-
-    /**
-     * Sets the hrefCompileLogsTargetPath.
-     *
-     * @param hrefCompileLogsTargetPath
-     *            The hrefCompileLogsTargetPath to set
-     */
-    public void setHrefCompileLogsTargetPath(final String hrefCompileLogsTargetPath) {
-        this.hrefCompileLogsTargetPath = hrefCompileLogsTargetPath;
-    }
-
-    /**
-     * Sets the hrefTestResultsTargetPath.
-     *
-     * @param hrefTestResultsTargetPath
-     *            The hrefTestResultsTargetPath to set
-     */
-    public void setHrefTestResultsTargetPath(final String htmlTargetPath) {
-        hrefTestResultsTargetPath = htmlTargetPath;
-    }
-
-    public void setHtmlDirectoryName(final String aString) {
-        htmlDirectoryName = aString;
-    }
-
-    public void setIsBuildTested(final boolean isBuildTested) {
-        this.isBuildTested = isBuildTested;
-    }
-
-    /**
-     * Sets the testManifestFileName.
-     *
-     * @param testManifestFileName
-     *            The testManifestFileName to set
-     */
-    public void setTestManifestFileName(final String testManifestFileName) {
-        this.testManifestFileName = testManifestFileName;
-    }
-
-    public void setTestResultsHtmlFileName(final String aString) {
-        testResultsHtmlFileName = aString;
-    }
-
-    /**
-     * @param string
-     */
-    public void setTestResultsWithProblems(final String string) {
-        testResultsWithProblems = string;
-    }
-
-    public void setXmlDirectoryName(final String aString) {
-        xmlDirectoryName = aString;
-    }
-
-    private String verifyAllTestsRan(final String directory, ArrayList<String> foundConfigs) {
-        String replaceString = "";
-        ArrayList<String> missingFiles = new ArrayList<>();
-        if (getDoMissingList()) {
-            for (String testLogName : anErrorTracker.getTestLogs(foundConfigs)) {
-
-                if (new File(directory + File.separator + testLogName).exists()) {
-                    // log("DEBUG: found log existed: " + testLogName);
-                    continue;
-                }
-                // log("DEBUG: found log DID NOT exist: " + testLogName);
-                anErrorTracker.registerError(testLogName);
-                // replaceString = replaceString + tmp;
-                // testResultsWithProblems appears to be for email, or similar?
-                testResultsWithProblems = testResultsWithProblems
-                        .concat(EOL + testLogName.substring(0, testLogName.length() - XML_EXTENSION.length()) + " (file missing)");
-                missingFiles.add(testLogName);
-            }
-        } else {
-            // Note: we intentionally do not deal with missing file for perf.
-            // tests yet.
-            // (though, probably could, once fixed with "expected configs").
-            replaceString = replaceString + "<tbody>\n" + "<tr><td colspan=\"0\"><p><span class=\"footnote\">NOTE: </span>\n"
-                    + "Remember that for performance unit test tables, there are never any \"missing files\" listed, if there are any. \n"
-                    + "This is expected to be a temporary solution, until an exact fix can be implemented. For more details, see \n"
-                    + "<a href=\"https://bugs.eclipse.org/bugs/show_bug.cgi?id=451890\">bug 451890</a>.</p>\n" + "</td></tr>\n"
-                    + "</tbody>\n";
-        }
-        // TODO: we need lots more of separating "data" from "formating"
-        if (getDoMissingList() && missingFiles.size() > 0) {
-            String ordinalWord = "File";
-            if (missingFiles.size() > 1) {
-                ordinalWord = "Files";
-            }
-
-            replaceString = replaceString + "</table>" + EOL + "<table>" + "<tr> <th class='cell'>Missing " + ordinalWord
-                    + "</th></tr>";
-            for (String testLogName : missingFiles) {
-                replaceString = replaceString + EOL + "<tr><td class='namecell'>" + testLogName + "</td></tr>";
-            }
-            replaceString = replaceString + EOL + "</table>";
-        }
-        return replaceString;
-    }
-
-    private void writeDropIndexFile() {
-        final String outputFileName = getDropDirectoryName() + File.separator + getDropHtmlFileName();
-        File outputIndexFile = new File(outputFileName);
-        // we assume if "eclipse" has been done, then "equinox" has been as
-        // well.
-        if (outputIndexFile.exists() && !isRegenerate()) {
-            log(EOL + "INFO: The drop index file, " + getDropHtmlFileName() + ", was found to exist already and not regenerated.");
-        } else {
-            if (outputIndexFile.exists()) {
-                log(EOL + "INFO: The drop index file, " + getDropHtmlFileName()
-                + ", was found to exist already and is being regenerated.");
-            }
-            log("DEBUG: Begin: Generating drop index page");
-            final String[] types = anErrorTracker.getTypes();
-            for (int i = 0; i < types.length; i++) {
-                final PlatformStatus[] platforms = anErrorTracker.getPlatforms(types[i]);
-                final String replaceString = processDropRows(platforms);
-                dropTemplateString = replace(dropTemplateString, dropTokens.get(i).toString(), replaceString);
-            }
-            writeFile(outputIndexFile, dropTemplateString);
-            log("DEBUG: End: Generating drop index page");
-        }
-    }
-
-    private void writeFile(File outputFile, final String contents) {
-        try (OutputStream outputStream = new BufferedOutputStream(new FileOutputStream(outputFile))){
-            outputStream.write(contents.getBytes());
-        }
-        catch (final FileNotFoundException e) {
-            log(EOL + "ERROR: File not found exception while writing: " + outputFile.getPath());
-        }
-        catch (final IOException e) {
-            log(EOL + "ERROR: IOException writing: " + outputFile.getPath());
-        }
-    }
-
-    /*
-     * This method writes the computed HTML to the file specified by caller in
-     * testResultsHtmlFileName. There must be an appropriate file on Download
-     * site that "includes" the file.
-     *
-     * @param contents
-     */
-    private void writeTestResultsFile(String contents) {
-        final String outputFileName = dropDirectoryName + File.separator + testResultsHtmlFileName;
-        File outputFile = new File(outputFileName);
-        writeFile(outputFile, contents);
-
-    }
-
-    public String getTestsConfigExpected() {
-
-        return testsConfigExpected;
-    }
-
-    public void setTestsConfigExpected(String testsConfigExpected) {
-        this.testsConfigExpected = testsConfigExpected;
-        // log("DEBUG: testsConfigExpected: " + testsConfigExpected);
-    }
-
-    private ArrayList<String> getTestsConfig() throws IOException {
-        if (expectedConfigs == null) {
-            expectedConfigs = new ArrayList<>();
-            String expectedConfigParam = getTestsConfigExpected();
-            if (expectedConfigParam != null) {
-                StringTokenizer tokenizer = new StringTokenizer(expectedConfigParam, " ,\t");
-                while (tokenizer.hasMoreTokens()) {
-                    expectedConfigs.add(tokenizer.nextToken());
-                }
-            } else {
-                throw new BuildException("test configurations were not found. One or more must be set.");
-            }
-            if (DEBUG) {
-                // log("DEBUG: testsConfig array ");
-                for (String expected : expectedConfigs) {
-                    log("\tDEBUG: expectedTestConfig: " + expected);
-                }
-            }
-            // write expected test config file here. This file is later used by
-            // the PHP file so the name passed in must match what was put in PHP
-            // file.
-            writePhpConfigFile(expected_config_type, expectedConfigs, getExpectedConfigFilename());
-        }
-        return expectedConfigs;
-    }
-
-    public boolean getDoMissingList() {
-        return doMissingList;
-    }
-
-    public void setDoMissingList(boolean doMissingList) {
-        this.doMissingList = doMissingList;
-    }
-
-    /*
-     * This is the reverse of checking that all expected logs were found. If
-     * logs were found that are NOT in the test manifest, we write the list
-     * below missing files, so that they can be added to testManifest.xml. This
-     * allows them to be detected as missing, in future. We only do this check
-     * if "doMissingList" is true.
-     */
-    private boolean verifyLogInManifest(String filename, ArrayList<String> foundConfigs) {
-        boolean result = false;
-        if (getDoMissingList()) {
-            for (String testLogName : anErrorTracker.getTestLogs(foundConfigs)) {
-                if (filename.equals(testLogName)) {
-                    result = true;
-                    break;
-                }
-            }
-        }
-        return result;
-    }
-
-    private String listMissingManifestFiles() throws IOException {
-        String results = "";
-        if (getDoMissingList()) {
-            String xmlFragment = "<?xml version=\"1.0\" encoding=\"UTF-8\"?> " + EOL + "<topLevel>" + EOL;
-
-            if (getDoMissingList() && missingManifestFiles.size() > 0) {
-                String ordinalWord = "File";
-                if (missingManifestFiles.size() > 1) {
-                    ordinalWord = "Files";
-                }
-
-                results = results + EOL + "<table>"
-                        + "<tr> <th class='cell'>Releng: <a href=\"addToTestManifest.xml\">Missing testManifest.xml " + ordinalWord
-                        + "</a></th></tr>";
-                for (String testLogName : missingManifestFiles) {
-                    results = results + EOL + "<tr><td class='namecell'>" + testLogName + "</td></tr>";
-                    xmlFragment = xmlFragment + "<logFile " + EOL + "  name=\"" + testLogName + "\"" + EOL + "  type=\"test\" />"
-                            + EOL;
-                }
-                results = results + EOL + "</table>";
-                xmlFragment = xmlFragment + "</topLevel>";
-                try (FileWriter xmlOutput = new FileWriter(getDropDirectoryName() + "/addToTestManifest.xml")) {
-                    xmlOutput.write(xmlFragment);
-                }
-            }
-        }
-        return results;
-    }
-
-    // Specific to the RelEng test results page
-    private String formatJUnitRow(String corename, ResultsTable resultsTable, ArrayList<String> foundConfigs) throws IOException {
-
-        String results = "";
-        int orgEclipseLength = "org.eclipse.".length();
-        // indexOf('_') assumes never part of file name?
-        final String displayName = corename.substring(orgEclipseLength);
-
-        results = results + EOL + "<tr><td class=\"namecell\">" + displayName + "</td>";
-
-        for (String config : getTestsConfig()) {
-            Cell cell = resultsTable.getCell(corename, config);
-            if (cell == null && foundConfigs.contains(config)) {
-                cell = resultsTable.new Cell(-1, null);
-            }
-            results = results + printCell(cell);
-        }
-        results = results + "</tr>" + EOL;
-        return results;
-    }
-
-    private String printCell(Cell cell) {
-        String result = null;
-        String displayName = null;
-        if (cell == null) {
-            displayName = "<td class=\"cell\">&nbsp;</td>";
-            result = displayName;
-        } else {
-            int cellErrorCount = cell.getErrorCount();
-            File cellResultsFile = cell.getResultsFile();
-            String filename = null;
-            int beginFilename = 0;
-            String rawfilename = null;
-            if (cellResultsFile != null) {
-                filename = cellResultsFile.getName();
-                beginFilename = filename.lastIndexOf(File.separatorChar);
-                rawfilename = filename.substring(beginFilename + 1, filename.length() - XML_EXTENSION.length());
-            }
-            String startCell = null;
-            if (cellErrorCount == -999) {
-                displayName = "<td class=\"cell\">&nbsp;</td>";
-                result = displayName;
-            } else if (cellErrorCount == 0) {
-                startCell = "<td class=\"cell\">";
-                displayName = "(0)";
-                result = addLinks(startCell, displayName, rawfilename);
-            } else if (cellErrorCount < 0) {
-                startCell = "<td class=\"errorcell\">";
-                displayName = "(" + Integer.toString(cellErrorCount) + ") DNF ";
-                result = startCell + displayName + "</td>";
-            } else if (cellErrorCount > 0) {
-                startCell = "<td class=\"errorcell\">";
-                displayName = "(" + Integer.toString(cellErrorCount) + ")";
-                result = addLinks(startCell, displayName, rawfilename);
-            } else {
-                // should never occur
-                displayName = "<td class='errorcell'>?" + Integer.toString(cellErrorCount) + "?</td>";
-                result = displayName;
-            }
-        }
-        return result;
-
-    }
-
-    private String addLinks(String startCell, String displayName, String rawfilename) {
-        String result = startCell;
-        result = result + "<a style=\"color:inherit\" title=\"Detailed Unit Test Results Table\" href=" + "\""
-                + getHrefTestResultsTargetPath() + "/html/" + rawfilename + HTML_EXTENSION + "\">" + displayName + "</a>";
-        result = result
-                + "<a style=\"color:#555555\" title=\"XML Test Result (e.g. for importing into the Eclipse JUnit view)\" href=\""
-                + getHrefTestResultsTargetPath() + "/xml/" + rawfilename + XML_EXTENSION + "\">&nbsp;(XML)</a>";
-        return result + "</td>";
-    }
-
-    // Totally non-functional method. restored from history for investigation.
-    // I restored this 'mailResults' method from history. It was removed about
-    // 3.8 M3. It was commented out
-    // at that time. Not sure for how long. I am not sure where "Mailer" class
-    // was coming from.
-    // Needs more research or re-invention. (Compare with CBI aggregator
-    // method?)
-
-    void mailResults() {
-        Mailer mailer = null;
-        // send a different message for the following cases:
-        // build is not tested at all // build is tested, tests have not run
-        // build is tested, tests have run with error and or failures
-        // build is tested, tests have run with no errors or failures
-        try {
-            mailer = new Mailer();
-        }
-        catch (NoClassDefFoundError e) {
-            return;
-        }
-        String buildLabel = mailer.getBuildLabel();
-        String httpUrl = mailer.getHttpUrl() + "/" + buildLabel; //
-
-        String subject = "Build is complete.  ";
-
-        String downloadLinks = "\n\nHTTP Download:\n\n\t" + httpUrl + " \n\n"; //
-
-        // provide http links
-        String message = "The build is complete." + downloadLinks;
-
-        if (testsRan()) {
-            subject = "Automated JUnit testing complete.  ";
-            message = "Automated JUnit testing is complete.  ";
-            subject = subject
-                    .concat((getTestResultsWithProblems().endsWith("\n")) ? "All tests pass." : "Test failures/errors occurred.");
-            message = message.concat((getTestResultsWithProblems().endsWith("\n")) ? "All tests pass."
-                    : "Test failures/errors occurred in the following:  " + getTestResultsWithProblems()) + downloadLinks;
-        } else if (isBuildTested() && (!getBuildType().equals("N"))) {
-            subject = subject.concat("Automated JUnit testing is starting.");
-            message = "The " + subject + downloadLinks;
-        }
-
-        if (subject.endsWith("Test failures/errors occurred.")) {
-            mailer.sendMessage(subject, message);
-        } else if (!getBuildType().equals("N")) {
-            mailer.sendMessage(subject, message);
-        }
-    }
-
-    private boolean testsRan() {
-        return testRan;
-    }
-
-    public boolean isRegenerate() {
-        return regenerate;
-    }
-
-    public void setRegenerate(boolean regenerate) {
-        this.regenerate = regenerate;
-    }
-
-    /* purely a place holder */
-    class Mailer {
-
-        public Object getBuildProperties() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        public String getBuildLabel() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        public String getHttpUrl() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        public void sendMessage(String subject, String message) {
-            // TODO Auto-generated method stub
-
-        }
-
-    }
-
-    public String getExpectedConfigFilename() {
-        if (expectedConfigFilename == null) {
-            expectedConfigFilename = EXPECTED_TEST_CONFIGS_FILENAME_DEFAULT;
-        }
-        return expectedConfigFilename;
-    }
-
-    public void setExpectedConfigFilename(String expectedConfigFilename) {
-        this.expectedConfigFilename = expectedConfigFilename;
-    }
-
-    public String getFoundConfigFilename() {
-        if (foundConfigFilename == null) {
-            foundConfigFilename = FOUND_TEST_CONFIGS_FILENAME_DEFAULT;
-        }
-        return foundConfigFilename;
-    }
-
-    public void setFoundConfigFilename(String foundConfigFilename) {
-        this.foundConfigFilename = foundConfigFilename;
-    }
-
-}
diff --git a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/generators/VersionTrackerTask.java b/bundles/org.eclipse.build.tools/src/org/eclipse/releng/generators/VersionTrackerTask.java
deleted file mode 100644
index cc55992..0000000
--- a/bundles/org.eclipse.build.tools/src/org/eclipse/releng/generators/VersionTrackerTask.java
+++ /dev/null
@@ -1,210 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-/**
- * This class finds the version of a plug-in, or fragment listed in a feature
- * and writes <element>=<element>_<version> for each in a properties file. The
- * file produced from this task can be loaded by an Ant script to find files in
- * the binary versions of plugins and fragments.
- */
-
-package org.eclipse.releng.generators;
-
-import java.io.File;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.util.Enumeration;
-import java.util.Hashtable;
-import java.util.Vector;
-
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.parsers.SAXParser;
-import javax.xml.parsers.SAXParserFactory;
-
-import org.apache.tools.ant.Task;
-import org.xml.sax.Attributes;
-import org.xml.sax.SAXException;
-import org.xml.sax.helpers.DefaultHandler;
-
-public class VersionTrackerTask extends Task {
-
-    private class FeatureHandler extends DefaultHandler {
-
-        // Start Element Event Handler
-        @Override
-        public void startElement(final String uri, final String local, final String qName, final Attributes atts) {
-
-            final String element = atts.getValue("id");
-            // need to parse the plugin.xml or fragment.xml for the correct
-            // version value since the 3.0 features may list these as "0.0.0"
-            if (qName.equals("plugin")) {
-                try {
-                    allElements.add(getBuildDirectory() + File.separator + "plugins" + File.separator + element + File.separator
-                            + "plugin.xml");
-                }
-                catch (final Exception e) {
-                    e.printStackTrace();
-
-                }
-            } else if (qName.equals("fragment")) {
-                allElements.add(getBuildDirectory() + File.separator + "plugins" + File.separator + element + File.separator
-                        + "fragment.xml");
-            }
-        }
-    }
-
-    private class PluginHandler extends DefaultHandler {
-
-        // Start Element Event Handler
-        @Override
-        public void startElement(final String uri, final String local, final String qName, final Attributes atts) {
-
-            final String element = atts.getValue("id");
-            final String version = atts.getValue("version");
-            System.out.println("Examining " + element);
-
-            if (qName.equals("plugin") || qName.equals("fragment")) {
-                System.out.println("Found plugin " + element);
-                elements.put(element, element + "_" + version);
-            }
-        }
-    }
-
-    // test
-    public static void main(final String[] args) {
-        final VersionTrackerTask Tracker = new VersionTrackerTask(args[1]);
-        Tracker.parse(args[0], Tracker.new FeatureHandler());
-        Tracker.parse(Tracker.new PluginHandler());
-        Tracker.writeProperties(args[2], true);
-    }
-
-    private String    buildDirectory;
-
-    private Hashtable<String, String> elements;
-
-    private SAXParser parser;
-
-    private Vector<String>    allElements;
-
-    // the feature to from which to collect version information
-    private String    featurePath;
-
-    // the path to the file in which to write the results
-    private String    outputFilePath;
-
-    public VersionTrackerTask() {
-    }
-
-    public VersionTrackerTask(final String install) {
-        elements = new Hashtable<>();
-        allElements = new Vector<>();
-
-        final SAXParserFactory saxParserFactory = SAXParserFactory.newInstance();
-        try {
-            parser = saxParserFactory.newSAXParser();
-        }
-        catch (final ParserConfigurationException e) {
-            e.printStackTrace();
-        }
-        catch (final SAXException e) {
-            e.printStackTrace();
-        }
-
-        // directory containing the source for a given build
-        buildDirectory = install;
-    }
-
-    @Override
-    public void execute() {
-        final VersionTrackerTask tracker = new VersionTrackerTask(getBuildDirectory());
-        tracker.parse(getFeaturePath(), new FeatureHandler());
-        tracker.parse(new PluginHandler());
-        tracker.writeProperties(getOutputFilePath(), true);
-    }
-
-    /**
-     * @return Returns the installDirectory.
-     */
-    public String getBuildDirectory() {
-        return buildDirectory;
-    }
-
-    /**
-     * @return Returns the featurePath.
-     */
-    public String getFeaturePath() {
-        return featurePath;
-    }
-
-    /**
-     * @return Returns the outputFilePath.
-     */
-    public String getOutputFilePath() {
-        return outputFilePath;
-    }
-
-    private void parse(final DefaultHandler handler) {
-        for (int i = 0; i < allElements.size(); i++) {
-            parse(allElements.elementAt(i).toString(), handler);
-        }
-    }
-
-    public void parse(final String xmlFile, final DefaultHandler handler) {
-        try {
-            parser.parse(xmlFile, handler);
-        }
-        catch (final SAXException e) {
-            System.err.println(e);
-        }
-        catch (final IOException e) {
-            System.err.println(e);
-        }
-    }
-
-    /**
-     * @param installDirectory
-     *            The installDirectory to set.
-     */
-    public void setBuildDirectory(final String buildDirectory) {
-        this.buildDirectory = buildDirectory;
-    }
-
-    /**
-     * @param featurePath
-     *            The featurePath to set.
-     */
-    public void setFeaturePath(final String featurePath) {
-        this.featurePath = featurePath;
-    }
-
-    /**
-     * @param outputFilePath
-     *            The outputFilePath to set.
-     */
-    public void setOutputFilePath(final String outputFilePath) {
-        this.outputFilePath = outputFilePath;
-    }
-
-    public void writeProperties(final String propertiesFile, final boolean append) {
-        try (final PrintWriter writer = new PrintWriter(new FileWriter(propertiesFile, append))){
-            final Enumeration<String> keys = elements.keys();
-
-            while (keys.hasMoreElements()) {
-                final String key = keys.nextElement();
-                writer.println(key + "=" + elements.get(key).toString());
-                writer.flush();
-            }
-        }
-        catch (final IOException e) {
-            System.out.println("Unable to write to file " + propertiesFile);
-        }
-
-    }
-
-}
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/.classpath b/bundles/org.eclipse.releng.build.tools.comparator/.classpath
deleted file mode 100644
index e801ebf..0000000
--- a/bundles/org.eclipse.releng.build.tools.comparator/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/.gitignore b/bundles/org.eclipse.releng.build.tools.comparator/.gitignore
deleted file mode 100644
index 86a1d36..0000000
--- a/bundles/org.eclipse.releng.build.tools.comparator/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/bin
-comparatorSummary.jar
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.releng.build.tools.comparator/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/bundles/org.eclipse.releng.build.tools.comparator/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/.settings/org.eclipse.core.runtime.prefs b/bundles/org.eclipse.releng.build.tools.comparator/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/bundles/org.eclipse.releng.build.tools.comparator/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.releng.build.tools.comparator/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index e5bba3c..0000000
--- a/bundles/org.eclipse.releng.build.tools.comparator/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,510 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.codeComplete.argumentPrefixes=
-org.eclipse.jdt.core.codeComplete.argumentSuffixes=
-org.eclipse.jdt.core.codeComplete.fieldPrefixes=
-org.eclipse.jdt.core.codeComplete.fieldSuffixes=
-org.eclipse.jdt.core.codeComplete.localPrefixes=
-org.eclipse.jdt.core.codeComplete.localSuffixes=
-org.eclipse.jdt.core.codeComplete.staticFieldPrefixes=
-org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
-org.eclipse.jdt.core.codeComplete.staticFinalFieldPrefixes=
-org.eclipse.jdt.core.codeComplete.staticFinalFieldSuffixes=
-org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
-org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
-org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
-org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
-org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=11
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.APILeak=warning
-org.eclipse.jdt.core.compiler.problem.annotatedTypeArgumentToUnannotated=info
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=warning
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=warning
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
-org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
-org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
-org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
-org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
-org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.suppressWarningsNotFullyAnalysed=info
-org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.terminalDeprecation=warning
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=disabled
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentType=warning
-org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentTypeStrict=disabled
-org.eclipse.jdt.core.compiler.problem.unlikelyEqualsArgumentType=info
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unstableAutoModuleName=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.release=enabled
-org.eclipse.jdt.core.compiler.source=11
-org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false
-org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.align_variable_declarations_on_columns=false
-org.eclipse.jdt.core.formatter.align_with_spaces=false
-org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_loops=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression_chain=0
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
-org.eclipse.jdt.core.formatter.alignment_for_logical_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
-org.eclipse.jdt.core.formatter.alignment_for_module_statements=16
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_record_components=16
-org.eclipse.jdt.core.formatter.alignment_for_relational_operator=0
-org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_shift_operator=0
-org.eclipse.jdt.core.formatter.alignment_for_string_concatenation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_record_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
-org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
-org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_last_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_abstract_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=0
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_statement_group_in_switch=0
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_record_constructor=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_record_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.align_tags_descriptions_grouped=true
-org.eclipse.jdt.core.formatter.comment.align_tags_names_descriptions=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=true
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=true
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=false
-org.eclipse.jdt.core.formatter.comment.indent_tag_description=false
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_between_different_tags=do not insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
-org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
-org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
-org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=false
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_record_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_default=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_record_components=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_switch_case_expressions=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_after_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_not_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_record_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
-org.eclipse.jdt.core.formatter.insert_space_after_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_case=insert
-org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_default=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_record_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_record_components=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_switch_case_expressions=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_before_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_constructor=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_record_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.join_lines_in_comments=true
-org.eclipse.jdt.core.formatter.join_wrapped_lines=true
-org.eclipse.jdt.core.formatter.keep_annotation_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_anonymous_type_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_code_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_enum_constant_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_enum_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_if_then_body_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_lambda_body_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_loop_body_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_method_body_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_record_constructor_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_record_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_simple_do_while_body_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_simple_for_body_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_simple_getter_setter_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_simple_while_body_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_type_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.lineSplit=120
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_after_code_block=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_code_block=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_code_block=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_before_code_block=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_record_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=tab
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.text_block_indentation=0
-org.eclipse.jdt.core.formatter.use_on_off_tags=false
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_additive_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
-org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
-org.eclipse.jdt.core.formatter.wrap_before_relational_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_shift_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
-org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
-org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.releng.build.tools.comparator/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index aced389..0000000
--- a/bundles/org.eclipse.releng.build.tools.comparator/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,66 +0,0 @@
-cleanup.add_default_serial_version_id=false
-cleanup.add_generated_serial_version_id=true
-cleanup.add_missing_annotations=true
-cleanup.add_missing_deprecated_annotations=true
-cleanup.add_missing_methods=true
-cleanup.add_missing_nls_tags=false
-cleanup.add_missing_override_annotations=true
-cleanup.add_missing_override_annotations_interface_methods=true
-cleanup.add_serial_version_id=true
-cleanup.always_use_blocks=true
-cleanup.always_use_parentheses_in_expressions=true
-cleanup.always_use_this_for_non_static_field_access=false
-cleanup.always_use_this_for_non_static_method_access=false
-cleanup.convert_to_enhanced_for_loop=false
-cleanup.correct_indentation=true
-cleanup.format_source_code=true
-cleanup.format_source_code_changes_only=false
-cleanup.make_local_variable_final=true
-cleanup.make_parameters_final=true
-cleanup.make_private_fields_final=true
-cleanup.make_type_abstract_if_missing_method=false
-cleanup.make_variable_declarations_final=true
-cleanup.never_use_blocks=false
-cleanup.never_use_parentheses_in_expressions=false
-cleanup.organize_imports=true
-cleanup.qualify_static_field_accesses_with_declaring_class=false
-cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-cleanup.qualify_static_member_accesses_with_declaring_class=true
-cleanup.qualify_static_method_accesses_with_declaring_class=false
-cleanup.remove_private_constructors=true
-cleanup.remove_trailing_whitespaces=true
-cleanup.remove_trailing_whitespaces_all=true
-cleanup.remove_trailing_whitespaces_ignore_empty=false
-cleanup.remove_unnecessary_casts=true
-cleanup.remove_unnecessary_nls_tags=true
-cleanup.remove_unused_imports=true
-cleanup.remove_unused_local_variables=false
-cleanup.remove_unused_private_fields=false
-cleanup.remove_unused_private_members=true
-cleanup.remove_unused_private_methods=false
-cleanup.remove_unused_private_types=true
-cleanup.sort_members=true
-cleanup.sort_members_all=false
-cleanup.use_blocks=true
-cleanup.use_blocks_only_for_return_and_throw=false
-cleanup.use_parentheses_in_expressions=true
-cleanup.use_this_for_non_static_field_access=true
-cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-cleanup.use_this_for_non_static_method_access=true
-cleanup.use_this_for_non_static_method_access_only_if_necessary=true
-cleanup_profile=_Eclipse Releng
-cleanup_settings_version=2
-eclipse.preferences.version=1
-formatter_profile=org.eclipse.jdt.ui.default.eclipse_profile
-formatter_settings_version=19
-org.eclipse.jdt.ui.exception.name=e
-org.eclipse.jdt.ui.gettersetter.use.is=true
-org.eclipse.jdt.ui.ignorelowercasenames=true
-org.eclipse.jdt.ui.importorder=java;javax;org;com;
-org.eclipse.jdt.ui.javadoc=false
-org.eclipse.jdt.ui.keywordthis=false
-org.eclipse.jdt.ui.ondemandthreshold=99
-org.eclipse.jdt.ui.overrideannotation=true
-org.eclipse.jdt.ui.staticondemandthreshold=99
-org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\n * \n */</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="true" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/* (non-Javadoc)\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/META-INF/MANIFEST.MF b/bundles/org.eclipse.releng.build.tools.comparator/META-INF/MANIFEST.MF
deleted file mode 100644
index 8b99e8d..0000000
--- a/bundles/org.eclipse.releng.build.tools.comparator/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,13 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %Bundle-Name
-Bundle-SymbolicName: org.eclipse.releng.build.tools.comparator;singleton:=true
-Bundle-Version: 1.1.0.qualifier
-Bundle-Vendor: %Bundle-Vendor
-Bundle-RequiredExecutionEnvironment: JavaSE-11
-Require-Bundle: org.apache.ant,
- org.eclipse.equinox.app
-Bundle-ClassPath: comparatorSummary.jar
-Export-Package: org.eclipse.releng.build.tools.comparator,
- org.eclipse.releng.build.tools.comparator.ant
-Automatic-Module-Name: org.eclipse.releng.build.tools.comparator
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/about.html b/bundles/org.eclipse.releng.build.tools.comparator/about.html
deleted file mode 100644
index 915bc6c..0000000
--- a/bundles/org.eclipse.releng.build.tools.comparator/about.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>April 18, 2013</p>	
-<h3>License</h3>
-
-<p>The Eclipse Foundation 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
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available 
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
-being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content.  Check the Redistributor's license that was 
-provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org">http://www.eclipse.org</a>.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/bin/.project b/bundles/org.eclipse.releng.build.tools.comparator/bin/.project
new file mode 100644
index 0000000..4580ba8
--- /dev/null
+++ b/bundles/org.eclipse.releng.build.tools.comparator/bin/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.releng.build.tools.comparator</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/build.properties b/bundles/org.eclipse.releng.build.tools.comparator/build.properties
deleted file mode 100644
index a3e53c8..0000000
--- a/bundles/org.eclipse.releng.build.tools.comparator/build.properties
+++ /dev/null
@@ -1,7 +0,0 @@
-bin.includes = META-INF/,\
-               comparatorSummary.jar,\
-               plugin.xml,\
-               about.html,\
-               plugin.properties,\
-               src/
-source.comparatorSummary.jar = src/
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/comparatorSummary.jardesc b/bundles/org.eclipse.releng.build.tools.comparator/comparatorSummary.jardesc
deleted file mode 100644
index f47930b..0000000
--- a/bundles/org.eclipse.releng.build.tools.comparator/comparatorSummary.jardesc
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<jardesc>
-    <jar path="org.eclipse.releng.build.tools.comparator/comparatorSummary.jar"/>
-    <options buildIfNeeded="true" compress="true" descriptionLocation="/org.eclipse.releng.build.tools.comparator/comparatorSummary.jardesc" exportErrors="true" exportWarnings="true" includeDirectoryEntries="true" overwrite="true" saveDescription="true" storeRefactorings="false" useSourceFolders="false"/>
-    <storedRefactorings deprecationInfo="true" structuralOnly="false"/>
-    <selectedProjects/>
-    <manifest generateManifest="true" manifestLocation="/org.eclipse.releng.build.tools.comparator/META-INF/MANIFEST.MF" manifestVersion="1.0" reuseManifest="false" saveManifest="false" usesManifest="true">
-        <sealing sealJar="false">
-            <packagesToSeal/>
-            <packagesToUnSeal/>
-        </sealing>
-    </manifest>
-    <selectedElements exportClassFiles="false" exportJavaFiles="true" exportOutputFolder="true">
-        <folder path="/org.eclipse.releng.build.tools.comparator/META-INF"/>
-        <file path="/org.eclipse.releng.build.tools.comparator/about.html"/>
-        <file path="/org.eclipse.releng.build.tools.comparator/plugin.properties"/>
-        <javaElement handleIdentifier="=org.eclipse.releng.build.tools.comparator/src"/>
-        <file path="/org.eclipse.releng.build.tools.comparator/plugin.xml"/>
-    </selectedElements>
-</jardesc>
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/exampleTest.xml b/bundles/org.eclipse.releng.build.tools.comparator/exampleTest.xml
deleted file mode 100644
index 32c0fad..0000000
--- a/bundles/org.eclipse.releng.build.tools.comparator/exampleTest.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<project
-    name="Eclipse Test Comparator"
-    default="testSummary"
-    basedir=".">
-
-    <!--
-        Ant properties buildDirectory must be set for this script, typically
-        by caller, but we set here for quick test from workspace..
-    -->
-
-    <property
-        name="buildDirectory"
-        value="/home/davidw/temp/I20130417-1102/" />
-
-    <target name="testSummary">
-
-        <comparatorSummary builddirectory="${buildDirectory}"/>
-
-    </target>
-</project>
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/plugin.properties b/bundles/org.eclipse.releng.build.tools.comparator/plugin.properties
deleted file mode 100644
index 7dc9d35..0000000
--- a/bundles/org.eclipse.releng.build.tools.comparator/plugin.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-Bundle-Vendor = Eclipse Platform Releng
-Bundle-Name = Comparator Summary Build Tool
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/plugin.xml b/bundles/org.eclipse.releng.build.tools.comparator/plugin.xml
deleted file mode 100644
index 890c283..0000000
--- a/bundles/org.eclipse.releng.build.tools.comparator/plugin.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-
-    <extension point="org.eclipse.ant.core.extraClasspathEntries">
-        <extraClasspathEntry
-              library="comparatorSummary.jar">
-        </extraClasspathEntry>
-    </extension>
-
-    <extension point="org.eclipse.ant.core.antTasks">
-        <antTask
-              class="org.eclipse.releng.build.tools.comparator.ant.ComparatorSummaryReport"
-              library="comparatorSummary.jar"
-              name="comparatorSummary">
-        </antTask>
-    </extension>
-
-
-</plugin>
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/pom.xml b/bundles/org.eclipse.releng.build.tools.comparator/pom.xml
deleted file mode 100644
index 207a8c4..0000000
--- a/bundles/org.eclipse.releng.build.tools.comparator/pom.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <groupId>org.eclipse.platform</groupId>
-        <artifactId>bundles</artifactId>
-        <version>1.0.101-SNAPSHOT</version>
-
-    </parent>
-    <artifactId>org.eclipse.releng.build.tools.comparator</artifactId>
-    <version>1.1.0-SNAPSHOT</version>
-    <packaging>eclipse-plugin</packaging>
-</project>
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/src/org/eclipse/releng/build/tools/comparator/Extractor.java b/bundles/org.eclipse.releng.build.tools.comparator/src/org/eclipse/releng/build/tools/comparator/Extractor.java
deleted file mode 100644
index 5351c94..0000000
--- a/bundles/org.eclipse.releng.build.tools.comparator/src/org/eclipse/releng/build/tools/comparator/Extractor.java
+++ /dev/null
@@ -1,353 +0,0 @@
-
-package org.eclipse.releng.build.tools.comparator;
-
-import java.io.BufferedReader;
-import java.io.BufferedWriter;
-import java.io.File;
-import java.io.FileReader;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.io.Reader;
-import java.io.Writer;
-import java.util.List;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-/**
- * This class is responsible for extracting the relevent "Debug" messages from
- * the huge maven debug log.
- * 
- * @author davidw
- * 
- */
-public class Extractor {
-
-	public final static String BUILD_DIRECTORY_PROPERTY = "builddirectory";
-	public final static String COMPARATOR_REPO_PROPERTY = "comparatorRepo";
-	private static final String EOL = System.lineSeparator();
-
-	public static void main(final String[] args) {
-		final Extractor extractor = new Extractor();
-		if (args.length > 0) {
-			extractor.setBuildDirectory(args[0]);
-		} else {
-			// can set explicitly for local test
-			// does not have to be a full "download", only
-			// I20130910-0800/buildlogs/mb060_run-maven-build_output.txt
-			extractor.setBuildDirectory("/home/davidw/temp/I20130910-0800");
-		}
-		try {
-			extractor.processBuildfile();
-		} catch (final IOException e) {
-			e.printStackTrace();
-		}
-	}
-
-	private final String debugFilename = "mb060_run-maven-build_output.txt";
-	private final String outputFilenameFull = "buildtimeComparatorFull.log.txt";
-	private final String outputFilenameSign = "buildtimeComparatorSignatureOnly.log.txt";
-	private final String outputFilenameSignPlusInnerJar = "buildtimeComparatorSignatureOnlyWithInnerJar.log.txt";
-	private final String outputFilenameDoc = "buildtimeComparatorDocBundle.log.txt";
-	private final String outputFilenameOther = "buildtimeComparatorUnanticipated.log.txt";
-	private final String outputFilenamejdtCore = "buildtimeComparatorJDTCore.log.txt";
-	private final String buildlogsDirectory = "buildlogs";
-	private final String comparatorLogsDirectory = "comparatorlogs";
-	private String comparatorRepo = "comparatorRepo";
-	private String buildDirectory;
-	private String inputFilename;
-	private String outputFilenameFullLog;
-	private String outputFilenameSignLog;
-	private String outputFilenameDocLog;
-	private String outputFilenameOtherLog;
-	private String outputFilenameSignPlusInnerJarLog;
-	private String outputFilenamejdtCoreLog;
-	private final String mainregexPattern = "^\\[WARNING\\].*eclipse.platform.releng.aggregator/(.*)/pom.xml: baseline and build artifacts have same version but different contents";
-	private final Pattern mainPattern = Pattern.compile(mainregexPattern);
-	private final String noclassifierregexPattern = "^.*no-classifier:.*$";
-	private final Pattern noclassifierPattern = Pattern.compile(noclassifierregexPattern);
-	private final String classifier_sourcesregexPattern = "^.*classifier-sources:.*$";
-	private final Pattern classifier_sourcesPattern = Pattern.compile(classifier_sourcesregexPattern);
-	private final String classifier_sourcesfeatureregexPattern = "^.*classifier-sources-feature:.*$";
-	private final Pattern classifier_sourcesfeaturePattern = Pattern.compile(classifier_sourcesfeatureregexPattern);
-
-	private final String sign1regexPattern = "^.*META-INF/ECLIPSE_.RSA.*$";
-	private final Pattern sign1Pattern = Pattern.compile(sign1regexPattern);
-	private final String sign2regexPattern = "^.*META-INF/ECLIPSE_.SF.*$";
-	private final Pattern sign2Pattern = Pattern.compile(sign2regexPattern);
-	private final String docNameregexPattern = "^.*eclipse\\.platform\\.common.*\\.doc\\..*$";
-	private final Pattern docNamePattern = Pattern.compile(docNameregexPattern);
-	// jar pattern added for bug 416701
-	private final String jarregexPattern = "^.*\\.jar.*$";
-	private final Pattern jarPattern = Pattern.compile(jarregexPattern);
-	private int count;
-	private int countSign;
-	private int countDoc;
-	private int countOther;
-	private int countSignPlusInnerJar;
-	private int countJDTCore;
-
-	public Extractor() {
-
-	}
-
-	private boolean docItem(final LogEntry newEntry) {
-		boolean result = false;
-		final String name = newEntry.getName();
-		final Matcher matcher = docNamePattern.matcher(name);
-		if (matcher.matches()) {
-			result = true;
-		}
-		return result;
-	}
-
-	public String getBuildDirectory() {
-		// if not set explicitly, see if its a system property
-		if (buildDirectory == null) {
-			buildDirectory = System.getProperty(BUILD_DIRECTORY_PROPERTY);
-		}
-		return buildDirectory;
-	}
-
-	private String getInputFilename() {
-		if (inputFilename == null) {
-			inputFilename = getBuildDirectory() + "/" + buildlogsDirectory + "/" + debugFilename;
-		}
-		return inputFilename;
-	}
-
-	private String getOutputFilenameDoc() {
-		if (outputFilenameDocLog == null) {
-			outputFilenameDocLog = getBuildDirectory() + "/" + buildlogsDirectory + "/" + comparatorLogsDirectory + "/"
-					+ outputFilenameDoc;
-		}
-		return outputFilenameDocLog;
-	}
-
-	private String getOutputFilenameFull() {
-		if (outputFilenameFullLog == null) {
-			outputFilenameFullLog = getBuildDirectory() + "/" + buildlogsDirectory + "/" + comparatorLogsDirectory + "/"
-					+ outputFilenameFull;
-		}
-		return outputFilenameFullLog;
-	}
-
-	private String getOutputFilenameOther() {
-		if (outputFilenameOtherLog == null) {
-			outputFilenameOtherLog = getBuildDirectory() + "/" + buildlogsDirectory + "/" + comparatorLogsDirectory
-					+ "/" + outputFilenameOther;
-		}
-		return outputFilenameOtherLog;
-	}
-
-	private String getOutputFilenameSign() {
-		if (outputFilenameSignLog == null) {
-			outputFilenameSignLog = getBuildDirectory() + "/" + buildlogsDirectory + "/" + comparatorLogsDirectory + "/"
-					+ outputFilenameSign;
-		}
-		return outputFilenameSignLog;
-	}
-
-	private String getOutputFilenameSignWithInnerJar() {
-		if (outputFilenameSignPlusInnerJarLog == null) {
-			outputFilenameSignPlusInnerJarLog = getBuildDirectory() + "/" + buildlogsDirectory + "/"
-					+ comparatorLogsDirectory + "/" + outputFilenameSignPlusInnerJar;
-		}
-		return outputFilenameSignPlusInnerJarLog;
-	}
-
-	private String getOutputFilenameJDTCore() {
-		if (outputFilenamejdtCoreLog == null) {
-			outputFilenamejdtCoreLog = getBuildDirectory() + "/" + buildlogsDirectory + "/" + comparatorLogsDirectory
-					+ "/" + outputFilenamejdtCore;
-		}
-		return outputFilenamejdtCoreLog;
-	}
-
-	public void processBuildfile() throws IOException {
-
-		// Make sure directory exists
-		File outputDir = new File(getBuildDirectory() + "/" + buildlogsDirectory, comparatorLogsDirectory);
-		if (!outputDir.exists()) {
-			outputDir.mkdirs();
-		}
-
-		final File infile = new File(getInputFilename());
-		final File outfile = new File(getOutputFilenameFull());
-		final File outfileSign = new File(getOutputFilenameSign());
-		final File outfileDoc = new File(getOutputFilenameDoc());
-		final File outfileOther = new File(getOutputFilenameOther());
-		final File outfileSignWithInnerJar = new File(getOutputFilenameSignWithInnerJar());
-		final File outfileJDTCore = new File(getOutputFilenameJDTCore());
-		try (Reader in = new FileReader(infile);
-				BufferedReader input = new BufferedReader(in);
-				Writer out = new FileWriter(outfile);
-				BufferedWriter output = new BufferedWriter(out);
-				Writer outsign = new FileWriter(outfileSign);
-				BufferedWriter outputSign = new BufferedWriter(outsign);
-				Writer outdoc = new FileWriter(outfileDoc);
-				BufferedWriter outputDoc = new BufferedWriter(outdoc);
-				Writer outother = new FileWriter(outfileOther);
-				BufferedWriter outputOther = new BufferedWriter(outother);
-				Writer outsignWithJar = new FileWriter(outfileSignWithInnerJar);
-				BufferedWriter outputSignWithJar = new BufferedWriter(outsignWithJar);
-				Writer outJDTCore = new FileWriter(outfileJDTCore);
-				BufferedWriter outputJDTCore = new BufferedWriter(outJDTCore);) {
-
-			writeHeader(output);
-			writeHeader(outputSign);
-			writeHeader(outputSignWithJar);
-			writeHeader(outputDoc);
-			writeHeader(outputOther);
-			writeHeader(outputJDTCore);
-			count = 0;
-			countSign = 0;
-			countSignPlusInnerJar = 0;
-			countDoc = 0;
-			countOther = 0;
-			countJDTCore = 0;
-			String inputLine = "";
-
-			while (inputLine != null) {
-				inputLine = input.readLine();
-				if (inputLine != null) {
-					final Matcher matcher = mainPattern.matcher(inputLine);
-					if (matcher.matches()) {
-
-						final LogEntry newEntry = new LogEntry();
-						newEntry.setName(matcher.group(1));
-						// read and write differences, until next blank line
-						do {
-							inputLine = input.readLine();
-							if ((inputLine != null) && (inputLine.length() > 0)) {
-								newEntry.addReason(inputLine);
-							}
-						} while ((inputLine != null) && (inputLine.length() > 0));
-						// //output.write(EOL);
-						// now, do one more, to get the "info" that says
-						// what was copied, or not.
-						do {
-							inputLine = input.readLine();
-							if ((inputLine != null) && (inputLine.length() > 0)) {
-								// except leave out the first line, which is a
-								// long [INFO] line repeating what we already
-								// know.
-								if (!inputLine.startsWith("[INFO]")) {
-									newEntry.addInfo(inputLine);
-								}
-							}
-						} while ((inputLine != null) && (inputLine.length() > 0));
-						// Write full log, for sanity check, if nothing else
-						writeEntry(++count, output, newEntry);
-						if (jdtCore(newEntry)) {
-							writeEntry(++countJDTCore, outputJDTCore, newEntry);
-						} else if (docItem(newEntry)) {
-							writeEntry(++countDoc, outputDoc, newEntry);
-						} else if (pureSignature(newEntry)) {
-							writeEntry(++countSign, outputSign, newEntry);
-						} else if (pureSignaturePlusInnerJar(newEntry)) {
-							writeEntry(++countSignPlusInnerJar, outputSignWithJar, newEntry);
-						} else {
-							writeEntry(++countOther, outputOther, newEntry);
-						}
-					}
-				}
-			}
-		}
-	}
-
-	private void writeHeader(final BufferedWriter output) throws IOException {
-		output.write("Comparator differences from current build" + EOL);
-		output.write("\t" + getBuildDirectory() + EOL);
-		if (comparatorRepo != null) {
-			output.write("compared to reference repo at " + EOL);
-			output.write("\t" + getComparatorRepo() + EOL + EOL);
-		}
-	}
-
-	private boolean jdtCore(final LogEntry newEntry) {
-		boolean result = false;
-		final String name = newEntry.getName();
-		if (name.equals("eclipse.jdt.core/org.eclipse.jdt.core")) {
-			result = true;
-		}
-		return result;
-	}
-
-	private boolean pureSignature(final LogEntry newEntry) {
-		// if all lines match one of these critical patterns,
-		// then assume "signature only" difference. If even
-		// one of them does not match, assume not.
-		boolean result = true;
-		final List<String> reasons = newEntry.getReasons();
-		for (final String reason : reasons) {
-			final Matcher matcher1 = noclassifierPattern.matcher(reason);
-			final Matcher matcher2 = classifier_sourcesPattern.matcher(reason);
-			final Matcher matcher3 = classifier_sourcesfeaturePattern.matcher(reason);
-			final Matcher matcher4 = sign1Pattern.matcher(reason);
-			final Matcher matcher5 = sign2Pattern.matcher(reason);
-
-			if (matcher1.matches() || matcher2.matches() || matcher3.matches() || matcher4.matches()
-					|| matcher5.matches()) {
-				continue;
-			} else {
-				result = false;
-				break;
-			}
-		}
-
-		return result;
-	}
-
-	private boolean pureSignaturePlusInnerJar(final LogEntry newEntry) {
-		// if all lines match one of these critical patterns,
-		// then assume "signature only plus inner jar" difference. If even
-		// one of them does not match, assume not.
-		// TODO: refactor so less copy/paste of pureSignature method.
-		boolean result = true;
-		final List<String> reasons = newEntry.getReasons();
-		for (final String reason : reasons) {
-			final Matcher matcher1 = noclassifierPattern.matcher(reason);
-			final Matcher matcher2 = classifier_sourcesPattern.matcher(reason);
-			final Matcher matcher3 = classifier_sourcesfeaturePattern.matcher(reason);
-			final Matcher matcher4 = sign1Pattern.matcher(reason);
-			final Matcher matcher5 = sign2Pattern.matcher(reason);
-			final Matcher matcher6 = jarPattern.matcher(reason);
-
-			if (matcher1.matches() || matcher2.matches() || matcher3.matches() || matcher4.matches()
-					|| matcher5.matches() || matcher6.matches()) {
-				continue;
-			} else {
-				result = false;
-				break;
-			}
-		}
-
-		return result;
-	}
-
-	public void setBuildDirectory(final String buildDirectory) {
-		this.buildDirectory = buildDirectory;
-	}
-
-	private void writeEntry(int thistypeCount, final Writer output, final LogEntry newEntry) throws IOException {
-
-		output.write(thistypeCount + ".  " + newEntry.getName() + EOL);
-		final List<String> reasons = newEntry.getReasons();
-		for (final String reason : reasons) {
-			output.write(reason + EOL);
-		}
-		final List<String> infolist = newEntry.getInfo();
-		for (final String info : infolist) {
-			output.write(info + EOL);
-		}
-		output.write(EOL);
-	}
-
-	public String getComparatorRepo() {
-		return comparatorRepo;
-	}
-
-	public void setComparatorRepo(String comparatorRepo) {
-		this.comparatorRepo = comparatorRepo;
-	}
-}
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/src/org/eclipse/releng/build/tools/comparator/LogEntry.java b/bundles/org.eclipse.releng.build.tools.comparator/src/org/eclipse/releng/build/tools/comparator/LogEntry.java
deleted file mode 100644
index 2c1dfd9..0000000
--- a/bundles/org.eclipse.releng.build.tools.comparator/src/org/eclipse/releng/build/tools/comparator/LogEntry.java
+++ /dev/null
@@ -1,48 +0,0 @@
-
-package org.eclipse.releng.build.tools.comparator;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class LogEntry {
-
-    private String       name;
-    private List<String> reasons = new ArrayList<>();
-    private List<String> info    = new ArrayList<>();
-
-    public LogEntry() {
-
-    }
-
-    public void addInfo(final String infoline) {
-        info.add(infoline);
-    }
-
-    public void addReason(final String reason) {
-        reasons.add(reason);
-    }
-
-    public List<String> getInfo() {
-        return info;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public List<String> getReasons() {
-        return reasons;
-    }
-
-    public void setInfo(final List<String> info) {
-        this.info = info;
-    }
-
-    public void setName(final String name) {
-        this.name = name;
-    }
-
-    public void setReasons(final List<String> reasons) {
-        this.reasons = reasons;
-    }
-}
diff --git a/bundles/org.eclipse.releng.build.tools.comparator/src/org/eclipse/releng/build/tools/comparator/ant/ComparatorSummaryReport.java b/bundles/org.eclipse.releng.build.tools.comparator/src/org/eclipse/releng/build/tools/comparator/ant/ComparatorSummaryReport.java
deleted file mode 100644
index 4e488f7..0000000
--- a/bundles/org.eclipse.releng.build.tools.comparator/src/org/eclipse/releng/build/tools/comparator/ant/ComparatorSummaryReport.java
+++ /dev/null
@@ -1,63 +0,0 @@
-
-package org.eclipse.releng.build.tools.comparator.ant;
-
-import java.io.IOException;
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.Task;
-import org.eclipse.releng.build.tools.comparator.Extractor;
-
-public class ComparatorSummaryReport extends Task {
-
-    private Extractor extractor;
-
-    public ComparatorSummaryReport() {
-        extractor = new Extractor();
-    }
-
-    public void setComparatorRepo(final String comparatorRepo) {
-        extractor.setComparatorRepo(comparatorRepo);
-    }
-    
-    public void setBuildDirectory(final String buildDirectory) {
-        extractor.setBuildDirectory(buildDirectory);
-    }
-
-    public String getComparatorRepo() {
-        // if specified as system property, it overrides settings
-        // in the task itself.
-        String comparatorRepo = System.getProperty(Extractor.COMPARATOR_REPO_PROPERTY);
-        if (comparatorRepo != null) {
-            extractor.setComparatorRepo(comparatorRepo);
-        } else {
-            comparatorRepo = extractor.getComparatorRepo();
-            // comparator repo is allowed to null, though typically sould not be.
-        }
-        return comparatorRepo;
-    }
-    
-    public String getBuildDirectory() {
-        // if specified as system property, it overrides settings
-        // in the task itself.
-        String buildDirectory = System.getProperty(Extractor.BUILD_DIRECTORY_PROPERTY);
-        if (buildDirectory != null) {
-            extractor.setBuildDirectory(buildDirectory);
-        } else {
-            buildDirectory = extractor.getBuildDirectory();
-            if (buildDirectory == null) {
-                throw new BuildException("buildDirectory must be set");
-            }
-        }
-        return buildDirectory;
-    }
-
-    @Override
-    public void execute() throws BuildException {
-        try {
-            extractor.processBuildfile();
-        }
-        catch (IOException e) {
-            throw new BuildException(e);
-        }
-    }
-}
diff --git a/bundles/org.eclipse.releng.build.tools.convert.application/.classpath b/bundles/org.eclipse.releng.build.tools.convert.application/.classpath
deleted file mode 100644
index e801ebf..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert.application/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.releng.build.tools.convert.application/.gitignore b/bundles/org.eclipse.releng.build.tools.convert.application/.gitignore
deleted file mode 100644
index bb5e943..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert.application/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/bin
-/target
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.build.tools.convert.application/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.releng.build.tools.convert.application/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert.application/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.releng.build.tools.convert.application/.settings/org.eclipse.core.runtime.prefs b/bundles/org.eclipse.releng.build.tools.convert.application/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert.application/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/bundles/org.eclipse.releng.build.tools.convert.application/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.releng.build.tools.convert.application/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 0008a3b..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert.application/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,505 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.codeComplete.argumentPrefixes=
-org.eclipse.jdt.core.codeComplete.argumentSuffixes=
-org.eclipse.jdt.core.codeComplete.fieldPrefixes=
-org.eclipse.jdt.core.codeComplete.fieldSuffixes=
-org.eclipse.jdt.core.codeComplete.localPrefixes=
-org.eclipse.jdt.core.codeComplete.localSuffixes=
-org.eclipse.jdt.core.codeComplete.staticFieldPrefixes=
-org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
-org.eclipse.jdt.core.codeComplete.staticFinalFieldPrefixes=
-org.eclipse.jdt.core.codeComplete.staticFinalFieldSuffixes=
-org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
-org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
-org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
-org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
-org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
-org.eclipse.jdt.core.compiler.compliance=11
-org.eclipse.jdt.core.compiler.problem.APILeak=warning
-org.eclipse.jdt.core.compiler.problem.annotatedTypeArgumentToUnannotated=info
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=warning
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=warning
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
-org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
-org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
-org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
-org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
-org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.suppressWarningsNotFullyAnalysed=info
-org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.terminalDeprecation=warning
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=disabled
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentType=warning
-org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentTypeStrict=disabled
-org.eclipse.jdt.core.compiler.problem.unlikelyEqualsArgumentType=info
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unstableAutoModuleName=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=warning
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.release=enabled
-org.eclipse.jdt.core.compiler.source=11
-org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false
-org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.align_variable_declarations_on_columns=false
-org.eclipse.jdt.core.formatter.align_with_spaces=false
-org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_loops=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression_chain=0
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
-org.eclipse.jdt.core.formatter.alignment_for_logical_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
-org.eclipse.jdt.core.formatter.alignment_for_module_statements=16
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_record_components=16
-org.eclipse.jdt.core.formatter.alignment_for_relational_operator=0
-org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_shift_operator=0
-org.eclipse.jdt.core.formatter.alignment_for_string_concatenation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_record_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
-org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
-org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_last_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_abstract_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=0
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_statement_group_in_switch=0
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_record_constructor=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_record_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.align_tags_descriptions_grouped=true
-org.eclipse.jdt.core.formatter.comment.align_tags_names_descriptions=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=true
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=true
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=false
-org.eclipse.jdt.core.formatter.comment.indent_tag_description=false
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_between_different_tags=do not insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
-org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
-org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
-org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=false
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_record_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_default=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_record_components=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_switch_case_expressions=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_after_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_not_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_record_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
-org.eclipse.jdt.core.formatter.insert_space_after_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_case=insert
-org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_default=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_record_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_record_components=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_switch_case_expressions=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_before_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_constructor=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_record_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.join_lines_in_comments=true
-org.eclipse.jdt.core.formatter.join_wrapped_lines=true
-org.eclipse.jdt.core.formatter.keep_annotation_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_anonymous_type_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_code_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_enum_constant_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_enum_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_if_then_body_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_lambda_body_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_loop_body_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_method_body_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_record_constructor_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_record_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_simple_do_while_body_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_simple_for_body_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_simple_getter_setter_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_simple_while_body_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_type_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.lineSplit=120
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_after_code_block=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_code_block=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_code_block=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_before_code_block=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_record_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=tab
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.text_block_indentation=0
-org.eclipse.jdt.core.formatter.use_on_off_tags=false
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_additive_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
-org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
-org.eclipse.jdt.core.formatter.wrap_before_relational_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_shift_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
-org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
-org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/bundles/org.eclipse.releng.build.tools.convert.application/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.releng.build.tools.convert.application/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index aced389..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert.application/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,66 +0,0 @@
-cleanup.add_default_serial_version_id=false
-cleanup.add_generated_serial_version_id=true
-cleanup.add_missing_annotations=true
-cleanup.add_missing_deprecated_annotations=true
-cleanup.add_missing_methods=true
-cleanup.add_missing_nls_tags=false
-cleanup.add_missing_override_annotations=true
-cleanup.add_missing_override_annotations_interface_methods=true
-cleanup.add_serial_version_id=true
-cleanup.always_use_blocks=true
-cleanup.always_use_parentheses_in_expressions=true
-cleanup.always_use_this_for_non_static_field_access=false
-cleanup.always_use_this_for_non_static_method_access=false
-cleanup.convert_to_enhanced_for_loop=false
-cleanup.correct_indentation=true
-cleanup.format_source_code=true
-cleanup.format_source_code_changes_only=false
-cleanup.make_local_variable_final=true
-cleanup.make_parameters_final=true
-cleanup.make_private_fields_final=true
-cleanup.make_type_abstract_if_missing_method=false
-cleanup.make_variable_declarations_final=true
-cleanup.never_use_blocks=false
-cleanup.never_use_parentheses_in_expressions=false
-cleanup.organize_imports=true
-cleanup.qualify_static_field_accesses_with_declaring_class=false
-cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-cleanup.qualify_static_member_accesses_with_declaring_class=true
-cleanup.qualify_static_method_accesses_with_declaring_class=false
-cleanup.remove_private_constructors=true
-cleanup.remove_trailing_whitespaces=true
-cleanup.remove_trailing_whitespaces_all=true
-cleanup.remove_trailing_whitespaces_ignore_empty=false
-cleanup.remove_unnecessary_casts=true
-cleanup.remove_unnecessary_nls_tags=true
-cleanup.remove_unused_imports=true
-cleanup.remove_unused_local_variables=false
-cleanup.remove_unused_private_fields=false
-cleanup.remove_unused_private_members=true
-cleanup.remove_unused_private_methods=false
-cleanup.remove_unused_private_types=true
-cleanup.sort_members=true
-cleanup.sort_members_all=false
-cleanup.use_blocks=true
-cleanup.use_blocks_only_for_return_and_throw=false
-cleanup.use_parentheses_in_expressions=true
-cleanup.use_this_for_non_static_field_access=true
-cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-cleanup.use_this_for_non_static_method_access=true
-cleanup.use_this_for_non_static_method_access_only_if_necessary=true
-cleanup_profile=_Eclipse Releng
-cleanup_settings_version=2
-eclipse.preferences.version=1
-formatter_profile=org.eclipse.jdt.ui.default.eclipse_profile
-formatter_settings_version=19
-org.eclipse.jdt.ui.exception.name=e
-org.eclipse.jdt.ui.gettersetter.use.is=true
-org.eclipse.jdt.ui.ignorelowercasenames=true
-org.eclipse.jdt.ui.importorder=java;javax;org;com;
-org.eclipse.jdt.ui.javadoc=false
-org.eclipse.jdt.ui.keywordthis=false
-org.eclipse.jdt.ui.ondemandthreshold=99
-org.eclipse.jdt.ui.overrideannotation=true
-org.eclipse.jdt.ui.staticondemandthreshold=99
-org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\n * \n */</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="true" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/* (non-Javadoc)\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
diff --git a/bundles/org.eclipse.releng.build.tools.convert.application/META-INF/MANIFEST.MF b/bundles/org.eclipse.releng.build.tools.convert.application/META-INF/MANIFEST.MF
deleted file mode 100644
index 7b30c4c..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert.application/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,12 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Convert Application
-Bundle-SymbolicName: org.eclipse.releng.build.tools.convert.application;singleton:=true
-Bundle-Version: 1.1.0.qualifier
-Bundle-Activator: org.eclipse.releng.build.tools.convert.application.Activator
-Bundle-Vendor: Eclipse Platform Releng
-Require-Bundle: org.eclipse.core.runtime,
- org.eclipse.releng.build.tools.convert;bundle-version="1.0.0"
-Bundle-RequiredExecutionEnvironment: JavaSE-11
-Bundle-ActivationPolicy: lazy
-Automatic-Module-Name: org.eclipse.releng.build.tools.convert.application
diff --git a/bundles/org.eclipse.releng.build.tools.convert.application/about.html b/bundles/org.eclipse.releng.build.tools.convert.application/about.html
deleted file mode 100644
index 3989f53..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert.application/about.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>May 11, 2006</p>	
-<h3>License</h3>
-
-<p>The Eclipse Foundation 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
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available 
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
-being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content.  Check the Redistributor's license that was 
-provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org">http://www.eclipse.org</a>.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.build.tools.convert.application/bin/.project b/bundles/org.eclipse.releng.build.tools.convert.application/bin/.project
new file mode 100644
index 0000000..9b1a01d
--- /dev/null
+++ b/bundles/org.eclipse.releng.build.tools.convert.application/bin/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.releng.build.tools.convert.application</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/bundles/org.eclipse.releng.build.tools.convert.application/build.properties b/bundles/org.eclipse.releng.build.tools.convert.application/build.properties
deleted file mode 100644
index 72c8929..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert.application/build.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
-               .,\
-               plugin.xml
-src.includes = about.html
diff --git a/bundles/org.eclipse.releng.build.tools.convert.application/plugin.xml b/bundles/org.eclipse.releng.build.tools.convert.application/plugin.xml
deleted file mode 100644
index ea6aa0b..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert.application/plugin.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-    <extension
-        id="logConverter"
-        point="org.eclipse.core.runtime.applications">
-        <application>
-            <run class="org.eclipse.releng.build.tools.convert.application.LogConverter" />
-        </application>
-    </extension>
-
-
-</plugin>
diff --git a/bundles/org.eclipse.releng.build.tools.convert.application/pom.xml b/bundles/org.eclipse.releng.build.tools.convert.application/pom.xml
deleted file mode 100644
index 0bc17aa..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert.application/pom.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>org.eclipse.platform</groupId>
-    <artifactId>bundles</artifactId>
-    <version>1.0.101-SNAPSHOT</version>
-  </parent>
-  <artifactId>org.eclipse.releng.build.tools.convert.application</artifactId>
-  <version>1.1.0-SNAPSHOT</version>
-  <packaging>eclipse-plugin</packaging>
-</project>
diff --git a/bundles/org.eclipse.releng.build.tools.convert.application/src/org/eclipse/releng/build/tools/convert/application/Activator.java b/bundles/org.eclipse.releng.build.tools.convert.application/src/org/eclipse/releng/build/tools/convert/application/Activator.java
deleted file mode 100644
index 3bd405c..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert.application/src/org/eclipse/releng/build/tools/convert/application/Activator.java
+++ /dev/null
@@ -1,25 +0,0 @@
-
-package org.eclipse.releng.build.tools.convert.application;
-
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-
-public class Activator implements BundleActivator {
-
-    private static BundleContext context;
-
-    static BundleContext getContext() {
-        return context;
-    }
-
-    @Override
-    public void start(final BundleContext bundleContext) throws Exception {
-        Activator.context = bundleContext;
-    }
-
-    @Override
-    public void stop(final BundleContext bundleContext) throws Exception {
-        Activator.context = null;
-    }
-
-}
diff --git a/bundles/org.eclipse.releng.build.tools.convert.application/src/org/eclipse/releng/build/tools/convert/application/LogConverter.java b/bundles/org.eclipse.releng.build.tools.convert.application/src/org/eclipse/releng/build/tools/convert/application/LogConverter.java
deleted file mode 100644
index 5b7ad17..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert.application/src/org/eclipse/releng/build/tools/convert/application/LogConverter.java
+++ /dev/null
@@ -1,21 +0,0 @@
-
-package org.eclipse.releng.build.tools.convert.application;
-
-import org.eclipse.equinox.app.IApplication;
-import org.eclipse.equinox.app.IApplicationContext;
-import org.eclipse.releng.build.tools.convert.ant.Converter;
-
-public class LogConverter implements IApplication {
-
-    @Override
-    public Object start(final IApplicationContext context) throws Exception {
-        final String[] args = (String[]) context.getArguments().get(IApplicationContext.APPLICATION_ARGS);
-        Converter.main(args);
-        return IApplication.EXIT_OK;
-    }
-
-    @Override
-    public void stop() {
-        // nothing to do
-    }
-}
diff --git a/bundles/org.eclipse.releng.build.tools.convert/.classpath b/bundles/org.eclipse.releng.build.tools.convert/.classpath
deleted file mode 100644
index e801ebf..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.releng.build.tools.convert/.gitignore b/bundles/org.eclipse.releng.build.tools.convert/.gitignore
deleted file mode 100644
index 1989346..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-/bin
-/target
-convert.jar
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.build.tools.convert/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.releng.build.tools.convert/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.releng.build.tools.convert/.settings/org.eclipse.core.runtime.prefs b/bundles/org.eclipse.releng.build.tools.convert/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/bundles/org.eclipse.releng.build.tools.convert/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.releng.build.tools.convert/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 076f33c..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,509 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.codeComplete.argumentPrefixes=
-org.eclipse.jdt.core.codeComplete.argumentSuffixes=
-org.eclipse.jdt.core.codeComplete.fieldPrefixes=
-org.eclipse.jdt.core.codeComplete.fieldSuffixes=
-org.eclipse.jdt.core.codeComplete.localPrefixes=
-org.eclipse.jdt.core.codeComplete.localSuffixes=
-org.eclipse.jdt.core.codeComplete.staticFieldPrefixes=
-org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
-org.eclipse.jdt.core.codeComplete.staticFinalFieldPrefixes=
-org.eclipse.jdt.core.codeComplete.staticFinalFieldSuffixes=
-org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
-org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
-org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
-org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
-org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=11
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.APILeak=warning
-org.eclipse.jdt.core.compiler.problem.annotatedTypeArgumentToUnannotated=info
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=warning
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=warning
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
-org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
-org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
-org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
-org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
-org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.suppressWarningsNotFullyAnalysed=info
-org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.terminalDeprecation=warning
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=disabled
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentType=warning
-org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentTypeStrict=disabled
-org.eclipse.jdt.core.compiler.problem.unlikelyEqualsArgumentType=info
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unstableAutoModuleName=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.release=enabled
-org.eclipse.jdt.core.compiler.source=11
-org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false
-org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.align_variable_declarations_on_columns=false
-org.eclipse.jdt.core.formatter.align_with_spaces=false
-org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_loops=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression_chain=0
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
-org.eclipse.jdt.core.formatter.alignment_for_logical_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
-org.eclipse.jdt.core.formatter.alignment_for_module_statements=16
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_record_components=16
-org.eclipse.jdt.core.formatter.alignment_for_relational_operator=0
-org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_shift_operator=0
-org.eclipse.jdt.core.formatter.alignment_for_string_concatenation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_record_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
-org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
-org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_last_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_abstract_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=0
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_statement_group_in_switch=0
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_record_constructor=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_record_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.align_tags_descriptions_grouped=true
-org.eclipse.jdt.core.formatter.comment.align_tags_names_descriptions=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=true
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=true
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=false
-org.eclipse.jdt.core.formatter.comment.indent_tag_description=false
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_between_different_tags=do not insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
-org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
-org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
-org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=false
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_record_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_default=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_record_components=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_switch_case_expressions=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_after_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_not_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_record_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
-org.eclipse.jdt.core.formatter.insert_space_after_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_case=insert
-org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_default=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_record_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_record_components=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_switch_case_expressions=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_before_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_constructor=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_record_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.join_lines_in_comments=true
-org.eclipse.jdt.core.formatter.join_wrapped_lines=true
-org.eclipse.jdt.core.formatter.keep_annotation_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_anonymous_type_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_code_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_enum_constant_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_enum_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_if_then_body_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_lambda_body_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_loop_body_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_method_body_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_record_constructor_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_record_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_simple_do_while_body_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_simple_for_body_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_simple_getter_setter_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_simple_while_body_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_type_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.lineSplit=120
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_after_code_block=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_code_block=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_code_block=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_before_code_block=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_record_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=tab
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.text_block_indentation=0
-org.eclipse.jdt.core.formatter.use_on_off_tags=false
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_additive_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
-org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
-org.eclipse.jdt.core.formatter.wrap_before_relational_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_shift_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
-org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
-org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/bundles/org.eclipse.releng.build.tools.convert/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.releng.build.tools.convert/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 4f8d0e0..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,135 +0,0 @@
-cleanup.add_default_serial_version_id=false
-cleanup.add_generated_serial_version_id=true
-cleanup.add_missing_annotations=true
-cleanup.add_missing_deprecated_annotations=true
-cleanup.add_missing_methods=true
-cleanup.add_missing_nls_tags=false
-cleanup.add_missing_override_annotations=true
-cleanup.add_missing_override_annotations_interface_methods=true
-cleanup.add_serial_version_id=true
-cleanup.always_use_blocks=true
-cleanup.always_use_parentheses_in_expressions=true
-cleanup.always_use_this_for_non_static_field_access=false
-cleanup.always_use_this_for_non_static_method_access=false
-cleanup.convert_to_enhanced_for_loop=false
-cleanup.correct_indentation=true
-cleanup.format_source_code=true
-cleanup.format_source_code_changes_only=false
-cleanup.make_local_variable_final=true
-cleanup.make_parameters_final=true
-cleanup.make_private_fields_final=true
-cleanup.make_type_abstract_if_missing_method=false
-cleanup.make_variable_declarations_final=true
-cleanup.never_use_blocks=false
-cleanup.never_use_parentheses_in_expressions=false
-cleanup.organize_imports=true
-cleanup.qualify_static_field_accesses_with_declaring_class=false
-cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-cleanup.qualify_static_member_accesses_with_declaring_class=true
-cleanup.qualify_static_method_accesses_with_declaring_class=false
-cleanup.remove_private_constructors=true
-cleanup.remove_trailing_whitespaces=true
-cleanup.remove_trailing_whitespaces_all=true
-cleanup.remove_trailing_whitespaces_ignore_empty=false
-cleanup.remove_unnecessary_casts=true
-cleanup.remove_unnecessary_nls_tags=true
-cleanup.remove_unused_imports=true
-cleanup.remove_unused_local_variables=false
-cleanup.remove_unused_private_fields=false
-cleanup.remove_unused_private_members=true
-cleanup.remove_unused_private_methods=false
-cleanup.remove_unused_private_types=true
-cleanup.sort_members=true
-cleanup.sort_members_all=false
-cleanup.use_blocks=true
-cleanup.use_blocks_only_for_return_and_throw=false
-cleanup.use_parentheses_in_expressions=true
-cleanup.use_this_for_non_static_field_access=true
-cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-cleanup.use_this_for_non_static_method_access=true
-cleanup.use_this_for_non_static_method_access_only_if_necessary=true
-cleanup_profile=_Eclipse Releng
-cleanup_settings_version=2
-eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_profile=org.eclipse.jdt.ui.default.eclipse_profile
-formatter_settings_version=19
-org.eclipse.jdt.ui.exception.name=e
-org.eclipse.jdt.ui.gettersetter.use.is=true
-org.eclipse.jdt.ui.ignorelowercasenames=true
-org.eclipse.jdt.ui.importorder=java;javax;org;com;
-org.eclipse.jdt.ui.javadoc=false
-org.eclipse.jdt.ui.keywordthis=false
-org.eclipse.jdt.ui.ondemandthreshold=99
-org.eclipse.jdt.ui.overrideannotation=true
-org.eclipse.jdt.ui.staticondemandthreshold=99
-org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\n * \n */</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="true" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/* (non-Javadoc)\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template><template autoinsert\="true" context\="modulecomment_context" deleted\="false" description\="Comment for modules" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.modulecomment" name\="modulecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="recordbody_context" deleted\="false" description\="Code in new record type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.recordbody" name\="recordbody">\n</template></templates>
-sp_cleanup.add_default_serial_version_id=true
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_methods=false
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_missing_override_annotations_interface_methods=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=true
-sp_cleanup.always_use_parentheses_in_expressions=false
-sp_cleanup.always_use_this_for_non_static_field_access=false
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_functional_interfaces=true
-sp_cleanup.convert_to_enhanced_for_loop=true
-sp_cleanup.correct_indentation=false
-sp_cleanup.format_source_code=true
-sp_cleanup.format_source_code_changes_only=true
-sp_cleanup.insert_inferred_type_arguments=false
-sp_cleanup.lazy_logical_operator=false
-sp_cleanup.make_local_variable_final=true
-sp_cleanup.make_parameters_final=false
-sp_cleanup.make_private_fields_final=true
-sp_cleanup.make_type_abstract_if_missing_method=false
-sp_cleanup.make_variable_declarations_final=false
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=true
-sp_cleanup.number_suffix=false
-sp_cleanup.on_save_use_additional_actions=true
-sp_cleanup.organize_imports=true
-sp_cleanup.push_down_negation=false
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=true
-sp_cleanup.remove_redundant_modifiers=true
-sp_cleanup.remove_redundant_semicolons=true
-sp_cleanup.remove_redundant_type_arguments=true
-sp_cleanup.remove_trailing_whitespaces=true
-sp_cleanup.remove_trailing_whitespaces_all=true
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
-sp_cleanup.remove_unnecessary_array_creation=true
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=true
-sp_cleanup.remove_unused_imports=false
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=true
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=true
-sp_cleanup.remove_unused_private_types=true
-sp_cleanup.simplify_lambda_expression_and_method_ref=true
-sp_cleanup.sort_members=false
-sp_cleanup.sort_members_all=false
-sp_cleanup.use_anonymous_class_creation=false
-sp_cleanup.use_autoboxing=false
-sp_cleanup.use_blocks=false
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_directly_map_method=true
-sp_cleanup.use_lambda=true
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=false
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-sp_cleanup.use_this_for_non_static_method_access=false
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
-sp_cleanup.use_unboxing=false
-sp_cleanup.use_var=false
diff --git a/bundles/org.eclipse.releng.build.tools.convert/META-INF/MANIFEST.MF b/bundles/org.eclipse.releng.build.tools.convert/META-INF/MANIFEST.MF
deleted file mode 100644
index 37e6f7d..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,14 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %Bundle-Name
-Bundle-SymbolicName: org.eclipse.releng.build.tools.convert;singleton:=true
-Bundle-Version: 1.1.0.qualifier
-Bundle-ClassPath: convert.jar
-Bundle-Vendor: %Bundle-Vendor
-Bundle-Localization: plugin
-Bundle-RequiredExecutionEnvironment: JavaSE-11
-Require-Bundle: org.apache.ant,
- org.eclipse.equinox.app
-Export-Package: org.eclipse.releng.build.tools.convert.ant,
- org.eclipse.releng.build.tools.convert.dom
-Automatic-Module-Name: org.eclipse.releng.build.tools.convert
diff --git a/bundles/org.eclipse.releng.build.tools.convert/about.html b/bundles/org.eclipse.releng.build.tools.convert/about.html
deleted file mode 100644
index 3989f53..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/about.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>May 11, 2006</p>	
-<h3>License</h3>
-
-<p>The Eclipse Foundation 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
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available 
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
-being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content.  Check the Redistributor's license that was 
-provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org">http://www.eclipse.org</a>.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.build.tools.convert/bin/.project b/bundles/org.eclipse.releng.build.tools.convert/bin/.project
new file mode 100644
index 0000000..ad59a92
--- /dev/null
+++ b/bundles/org.eclipse.releng.build.tools.convert/bin/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.releng.build.tools.convert</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/bundles/org.eclipse.releng.build.tools.convert/build.properties b/bundles/org.eclipse.releng.build.tools.convert/build.properties
deleted file mode 100644
index 6e916cf..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/build.properties
+++ /dev/null
@@ -1,7 +0,0 @@
-bin.includes = META-INF/,\
-               about.html,\
-               src/,\
-               plugin.properties,\
-               plugin.xml,\
-               convert.jar
-source.convert.jar = src/
diff --git a/bundles/org.eclipse.releng.build.tools.convert/convert.jar.MANIFEST.MF b/bundles/org.eclipse.releng.build.tools.convert/convert.jar.MANIFEST.MF
deleted file mode 100644
index 59499bc..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/convert.jar.MANIFEST.MF
+++ /dev/null
@@ -1,2 +0,0 @@
-Manifest-Version: 1.0
-
diff --git a/bundles/org.eclipse.releng.build.tools.convert/convert.jar.jardesc b/bundles/org.eclipse.releng.build.tools.convert/convert.jar.jardesc
deleted file mode 100644
index 40631e1..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/convert.jar.jardesc
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<jardesc>
-    <jar path="org.eclipse.releng.build.tools.convert/convert.jar"/>
-    <options buildIfNeeded="true" compress="true" descriptionLocation="/org.eclipse.releng.build.tools.convert/convert.jar.jardesc" exportErrors="true" exportWarnings="true" includeDirectoryEntries="false" overwrite="false" saveDescription="true" storeRefactorings="false" useSourceFolders="false"/>
-    <storedRefactorings deprecationInfo="true" structuralOnly="false"/>
-    <selectedProjects/>
-    <manifest generateManifest="false" manifestLocation="/org.eclipse.releng.build.tools.convert/convert.jar.MANIFEST.MF" manifestVersion="1.0" reuseManifest="true" saveManifest="true" usesManifest="true">
-        <sealing sealJar="false">
-            <packagesToSeal/>
-            <packagesToUnSeal/>
-        </sealing>
-    </manifest>
-    <selectedElements exportClassFiles="true" exportJavaFiles="true" exportOutputFolder="false">
-        <file path="/org.eclipse.releng.build.tools.convert/build.properties"/>
-        <file path="/org.eclipse.releng.build.tools.convert/about.html"/>
-        <file path="/org.eclipse.releng.build.tools.convert/.gitignore"/>
-        <file path="/org.eclipse.releng.build.tools.convert/plugin.xml"/>
-        <file path="/org.eclipse.releng.build.tools.convert/.project"/>
-        <file path="/org.eclipse.releng.build.tools.convert/plugin.properties"/>
-        <javaElement handleIdentifier="=org.eclipse.releng.build.tools.convert/src"/>
-        <file path="/org.eclipse.releng.build.tools.convert/.classpath"/>
-        <folder path="/org.eclipse.releng.build.tools.convert/META-INF"/>
-    </selectedElements>
-</jardesc>
diff --git a/bundles/org.eclipse.releng.build.tools.convert/plugin.properties b/bundles/org.eclipse.releng.build.tools.convert/plugin.properties
deleted file mode 100644
index cb7feb0..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/plugin.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-Bundle-Vendor = Eclipse Platform Releng
-Bundle-Name = Convert Build Tool
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.build.tools.convert/plugin.xml b/bundles/org.eclipse.releng.build.tools.convert/plugin.xml
deleted file mode 100644
index 7903987..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/plugin.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-
-    <extension point="org.eclipse.ant.core.extraClasspathEntries">
-        <extraClasspathEntry library="convert.jar">
-        </extraClasspathEntry>
-    </extension>
-
-    <extension point="org.eclipse.ant.core.antTasks">
-        <antTask
-            name="eclipse.convert"
-            class="org.eclipse.releng.build.tools.convert.ant.LogConverterTask"
-            library="convert.jar">
-        </antTask>
-    </extension>
-
-
-</plugin>
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.build.tools.convert/pom.xml b/bundles/org.eclipse.releng.build.tools.convert/pom.xml
deleted file mode 100644
index ad71f62..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/pom.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <groupId>org.eclipse.platform</groupId>
-        <artifactId>bundles</artifactId>
-        <version>1.0.101-SNAPSHOT</version>
-
-    </parent>
-    <artifactId>org.eclipse.releng.build.tools.convert</artifactId>
-    <version>1.1.0-SNAPSHOT</version>
-    <packaging>eclipse-plugin</packaging>
-</project>
diff --git a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/Converter.java b/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/Converter.java
deleted file mode 100644
index 9fba7d7..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/Converter.java
+++ /dev/null
@@ -1,377 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng.build.tools.convert.ant;
-
-import java.io.File;
-import java.io.FileFilter;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.HashMap;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-
-import org.eclipse.releng.build.tools.convert.dom.AbstractDOMConverter;
-import org.eclipse.releng.build.tools.convert.dom.IDOMConverter;
-import org.eclipse.releng.build.tools.convert.dom.LogDocumentNode;
-import org.eclipse.releng.build.tools.convert.dom.ProblemNode;
-import org.eclipse.releng.build.tools.convert.dom.ProblemSummaryNode;
-import org.eclipse.releng.build.tools.convert.dom.ProblemsNode;
-import org.eclipse.releng.build.tools.convert.dom.SeverityType;
-import org.w3c.dom.Document;
-import org.w3c.dom.NamedNodeMap;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-import org.xml.sax.SAXParseException;
-import org.xml.sax.helpers.DefaultHandler;
-
-public class Converter {
-
-    private static final String     HTML_EXTENSION         = ".html";           //$NON-NLS-1$
-
-    private static final String     TXT_EXTENSION          = ".txt";            //$NON-NLS-1$
-
-    private static final String     XML_EXTENSION          = ".xml";            //$NON-NLS-1$
-
-    public static final String      INPUT_SOURCE           = "inputSource";      //$NON-NLS-1$
-
-    public static final String      CONVERTER_ID           = "converterID";      //$NON-NLS-1$
-
-    public static final String      OUTPUT_FILE_NAME       = "outputFileName";   //$NON-NLS-1$
-
-    public static final String      ENABLE_VALIDATION      = "enableValidation"; //$NON-NLS-1$
-
-    public static final String      RECURSIVE              = "recurse";          //$NON-NLS-1$
-
-    public static final int         FORMAT_VERSION_2       = 2;
-
-    public static final int         CURRENT_FORMAT_VERSION = FORMAT_VERSION_2;
-
-    private static final FileFilter XML_FILTER             = pathname -> {
-         final String path = pathname.getAbsolutePath().toLowerCase();
-         return path.endsWith(XML_EXTENSION) || pathname.isDirectory();
-     };
-
-    private static void collectAllFiles(final File root, final ArrayList<File> collector, final FileFilter fileFilter) {
-        final File[] files = root.listFiles(fileFilter);
-        for (final File currentFile : files) {
-            if (currentFile.isDirectory()) {
-                collectAllFiles(currentFile, collector, fileFilter);
-            } else {
-                collector.add(currentFile);
-            }
-        }
-    }
-
-    public static File[] getAllFiles(final File root, final FileFilter fileFilter) {
-        final ArrayList<File> files = new ArrayList<>();
-        if (root.isDirectory()) {
-            collectAllFiles(root, files, fileFilter);
-            final File[] result = new File[files.size()];
-            files.toArray(result);
-            return result;
-        }
-        return null;
-    }
-
-    public static void main(final String[] args) {
-        try {
-            run(args);
-        }
-        catch (final ParserConfigurationException e) {
-            e.printStackTrace();
-        }
-    }
-
-	public static void run(final String... args) throws ParserConfigurationException {
-        final Converter converter = new Converter();
-        converter.configure(args);
-        converter.parse2();
-    }
-
-    private final HashMap<String, String> options;
-
-    public Converter() {
-        options = new HashMap<>();
-    }
-
-    public void configure(final String[] args) {
-        if ((args == null) || (args.length == 0)) {
-            throw new IllegalArgumentException("Arguments cannot be empty");//$NON-NLS-1$
-        }
-
-        // set default options
-        options.put(ENABLE_VALIDATION, "false"); //$NON-NLS-1$
-        int converterID = ConverterFactory.HTML;
-
-        final int argCount = args.length;
-        int index = 0;
-        boolean setOutputFile = false;
-        boolean setValidation = false;
-        boolean setInputFile = false;
-
-        final int DEFAULT_MODE = 0;
-        final int OUTPUT_FILE_MODE = 1;
-        final int INPUT_FILE_MODE = 2;
-
-        int mode = DEFAULT_MODE;
-
-        loop: while (index < argCount) {
-            final String currentArg = args[index++];
-
-            switch (mode) {
-                case INPUT_FILE_MODE:
-                    options.put(INPUT_SOURCE, currentArg);
-                    mode = DEFAULT_MODE;
-                    break;
-                case OUTPUT_FILE_MODE:
-                    if (currentArg.toLowerCase().endsWith(TXT_EXTENSION)) {
-                        converterID = ConverterFactory.TXT;
-                    }
-                    options.put(OUTPUT_FILE_NAME, currentArg);
-                    mode = DEFAULT_MODE;
-                    continue loop;
-                case DEFAULT_MODE:
-                    if (currentArg.equals("-v")) { //$NON-NLS-1$
-                        if (setValidation) {
-                            throw new IllegalArgumentException("Duplicate validation flag"); //$NON-NLS-1$
-                        }
-                        setValidation = true;
-                        options.put(ENABLE_VALIDATION, "true"); //$NON-NLS-1$
-                        mode = DEFAULT_MODE;
-                        continue loop;
-                    }
-                    if (currentArg.equals("-o")) { //$NON-NLS-1$
-                        if (setOutputFile) {
-                            throw new IllegalArgumentException("Duplicate output file"); //$NON-NLS-1$
-                        }
-                        setOutputFile = true;
-                        mode = OUTPUT_FILE_MODE;
-                        continue loop;
-                    }
-                    if (currentArg.equals("-i")) { //$NON-NLS-1$
-                        if (setInputFile) {
-                            throw new IllegalArgumentException("Duplicate input file"); //$NON-NLS-1$
-                        }
-                        setInputFile = true;
-                        mode = INPUT_FILE_MODE;
-                        continue loop;
-                    }
-                    if (currentArg.equals("-r")) { //$NON-NLS-1$
-                        options.put(RECURSIVE, "true"); //$NON-NLS-1$
-                        mode = DEFAULT_MODE;
-                        continue loop;
-                    }
-            }
-        }
-        final String input = options.get(INPUT_SOURCE);
-        if (input == null) {
-            throw new IllegalArgumentException("An input file or directorty is required"); //$NON-NLS-1$
-        }
-        if (options.get(RECURSIVE) == null) {
-            if (!input.toLowerCase().endsWith(".xml")) { //$NON-NLS-1$
-                throw new IllegalArgumentException("Input file must be an xml file"); //$NON-NLS-1$
-            }
-        }
-        options.put(CONVERTER_ID, String.valueOf(converterID));
-    }
-
-    private void dump(final LogDocumentNode documentNode) {
-        final IDOMConverter converter = ConverterFactory.createDOMConverter(Integer.parseInt(options
-                .get(Converter.CONVERTER_ID)));
-        converter.dump(CURRENT_FORMAT_VERSION, options, documentNode);
-    }
-
-    private String extractNameFrom(final String inputFileName) {
-        final int index = inputFileName.lastIndexOf('.');
-        switch (Integer.parseInt(options.get(Converter.CONVERTER_ID))) {
-            case ConverterFactory.TXT:
-                return inputFileName.substring(0, index) + TXT_EXTENSION;
-            case ConverterFactory.HTML:
-                return inputFileName.substring(0, index) + HTML_EXTENSION;
-            default:
-                return inputFileName.substring(0, index) + HTML_EXTENSION;
-        }
-    }
-
-    public void parse2() throws ParserConfigurationException {
-        final DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
-        final boolean validation = Boolean.valueOf(options.get(ENABLE_VALIDATION)).booleanValue();
-        factory.setValidating(validation);
-        factory.setIgnoringElementContentWhitespace(true);
-        final DocumentBuilder builder = factory.newDocumentBuilder();
-
-        final String inputSourceOption = options.get(INPUT_SOURCE);
-        if (options.get(RECURSIVE) != null) {
-            // collect all xml files and iterate over them
-            final File sourceDir = new File(inputSourceOption);
-            if (!sourceDir.exists()) {
-                throw new IllegalArgumentException("Directory " + inputSourceOption + " doesn't exist");//$NON-NLS-1$//$NON-NLS-2$
-            }
-            if (!sourceDir.isDirectory()) {
-                throw new IllegalArgumentException(inputSourceOption + " must be a directory in recursive mode");//$NON-NLS-1$
-            }
-            final File[] xmlFiles = getAllFiles(sourceDir, XML_FILTER);
-            for (File xmlFile : xmlFiles) {
-                final String inputFileName = xmlFile.getAbsolutePath();
-                final InputSource inputSource = new InputSource(inputFileName);
-                final String outputFileName = extractNameFrom(inputFileName);
-                options.put(INPUT_SOURCE, inputFileName);
-                options.put(OUTPUT_FILE_NAME, outputFileName);
-                try {
-                    builder.setErrorHandler(new DefaultHandler() {
-                        @Override
-                        public void error(final SAXParseException e) throws SAXException {
-                            reportError(inputFileName, e);
-                            throw e;
-                        }
-                    });
-                    final Document document = builder.parse(inputSource);
-                    final LogDocumentNode documentNode = process(document);
-                    dump(documentNode);
-                }
-                catch (final SAXException e) {
-                    System.out.println(e);
-                }
-                catch (final IOException e) {
-                    e.printStackTrace();
-                }
-            }
-        } else {
-            // Parse
-            if (inputSourceOption != null) {
-                final InputSource inputSource = new InputSource(inputSourceOption);
-                if (options.get(OUTPUT_FILE_NAME) == null) {
-                    options.put(OUTPUT_FILE_NAME, extractNameFrom(inputSourceOption));
-                }
-                try {
-                    builder.setErrorHandler(new DefaultHandler() {
-
-                        @Override
-                        public void error(final SAXParseException e) throws SAXException {
-                            reportError(inputSourceOption, e);
-                            throw e;
-                        }
-                    });
-                    final Document document = builder.parse(inputSource);
-                    final LogDocumentNode documentNode = process(document);
-                    dump(documentNode);
-                }
-                catch (final SAXException e) {
-                    e.printStackTrace();
-                }
-                catch (final IOException e) {
-                    e.printStackTrace();
-                }
-            }
-        }
-    }
-
-    private LogDocumentNode process(final Document document) {
-        final LogDocumentNode documentNode = new LogDocumentNode();
-        NodeList nodeList = document.getElementsByTagName("problem_summary"); //$NON-NLS-1$
-        if (nodeList.getLength() == 1) {
-            final Node problemSummaryNode = nodeList.item(0);
-            final NamedNodeMap problemSummaryMap = problemSummaryNode.getAttributes();
-            final ProblemSummaryNode summaryNode = new ProblemSummaryNode();
-            documentNode.setProblemSummary(summaryNode);
-            summaryNode.numberOfProblems = Integer.parseInt(problemSummaryMap.getNamedItem("problems").getNodeValue()); //$NON-NLS-1$
-            summaryNode.numberOfErrors = Integer.parseInt(problemSummaryMap.getNamedItem("errors").getNodeValue()); //$NON-NLS-1$
-            summaryNode.numberOfWarnings = Integer.parseInt(problemSummaryMap.getNamedItem("warnings").getNodeValue()); //$NON-NLS-1$
-            summaryNode.numberOfInfos = Integer.parseInt(problemSummaryMap.getNamedItem("infos").getNodeValue()); //$NON-NLS-1$
-        }
-
-        nodeList = document.getElementsByTagName("problems"); //$NON-NLS-1$
-        if (nodeList == null) {
-            return null;
-        }
-
-        final int length = nodeList.getLength();
-        int globalErrorNumber = 1;
-        for (int i = 0; i < length; i++) {
-            final Node problemsNode = nodeList.item(i);
-            final ProblemsNode node = new ProblemsNode();
-            documentNode.addProblemsNode(node);
-            final Node sourceNode = problemsNode.getParentNode();
-            final NamedNodeMap sourceNodeMap = sourceNode.getAttributes();
-            final String sourceFileName = sourceNodeMap.getNamedItem("path").getNodeValue();//$NON-NLS-1$
-            node.sourceFileName = sourceFileName;
-            final NamedNodeMap problemsNodeMap = problemsNode.getAttributes();
-            node.numberOfErrors = Integer.parseInt(problemsNodeMap.getNamedItem("errors").getNodeValue());//$NON-NLS-1$
-            node.numberOfWarnings = Integer.parseInt(problemsNodeMap.getNamedItem("warnings").getNodeValue());//$NON-NLS-1$
-            node.numberOfProblems = Integer.parseInt(problemsNodeMap.getNamedItem("problems").getNodeValue());//$NON-NLS-1$
-            node.numberOfInfos = Integer.parseInt(problemsNodeMap.getNamedItem("infos").getNodeValue());//$NON-NLS-1$
-
-
-            final NodeList children = problemsNode.getChildNodes();
-            final int childrenLength = children.getLength();
-            for (int j = 0; j < childrenLength; j++) {
-                final Node problemNode = children.item(j);
-                final NamedNodeMap problemNodeMap = problemNode.getAttributes();
-                final String severity = problemNodeMap.getNamedItem("severity").getNodeValue();//$NON-NLS-1$
-                final ProblemNode problem = new ProblemNode();
-                problem.id = problemNodeMap.getNamedItem("id").getNodeValue();//$NON-NLS-1$
-                switch (severity) {
-                  case "ERROR":
-                    problem.severityType = SeverityType.ERROR;
-                    node.addError(problem);
-                    break;
-                  case "INFO":
-                    problem.severityType = SeverityType.INFO;
-                    node.addInfo(problem);
-                    break;
-                  case "WARNING":
-                    problem.severityType = SeverityType.WARNING;
-                    if (AbstractDOMConverter.FILTERED_WARNINGS_IDS.contains(problem.id)) {
-                      if (AbstractDOMConverter.FORBIDDEN_REFERENCE.equals(problem.id)) {
-                          node.addForbiddenWarning(problem);
-                      } else {
-                          node.addDiscouragedWarning(problem);
-                      }
-                    } else {
-                      node.addOtherWarning(problem);
-                    }
-                    break;
-                }
-                problem.charStart = Integer.parseInt(problemNodeMap.getNamedItem("charStart").getNodeValue());//$NON-NLS-1$
-                problem.charEnd = Integer.parseInt(problemNodeMap.getNamedItem("charEnd").getNodeValue());//$NON-NLS-1$
-                problem.line = Integer.parseInt(problemNodeMap.getNamedItem("line").getNodeValue());//$NON-NLS-1$
-                problem.globalProblemNumber = globalErrorNumber;
-                problem.problemNumber = j;
-                problem.sourceFileName = sourceFileName;
-                globalErrorNumber++;
-                final NodeList problemChildren = problemNode.getChildNodes();
-                final int problemChildrenLength = problemChildren.getLength();
-                for (int n = 0; n < problemChildrenLength; n++) {
-                    final Node child = problemChildren.item(n);
-                    final String nodeName = child.getNodeName();
-                    if ("message".equals(nodeName)) {//$NON-NLS-1$
-                        final NamedNodeMap childNodeMap = child.getAttributes();
-                        problem.message = childNodeMap.getNamedItem("value").getNodeValue();//$NON-NLS-1$
-                    } else if ("source_context".equals(nodeName)) {//$NON-NLS-1$
-                        final NamedNodeMap childNodeMap = child.getAttributes();
-                        problem.sourceStart = Integer.parseInt(childNodeMap.getNamedItem("sourceStart").getNodeValue());//$NON-NLS-1$
-                        problem.sourceEnd = Integer.parseInt(childNodeMap.getNamedItem("sourceEnd").getNodeValue());//$NON-NLS-1$
-                        problem.contextValue = childNodeMap.getNamedItem("value").getNodeValue();//$NON-NLS-1$
-                    }
-                }
-            }
-        }
-        return documentNode;
-    }
-
-    void reportError(final String inputFileName, final SAXParseException e) {
-        System.err.println("Error in " + inputFileName + " at line " + e.getLineNumber() + " and column " + e.getColumnNumber()); //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$
-        System.err.println(e.getMessage());
-    }
-}
diff --git a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/ConverterFactory.java b/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/ConverterFactory.java
deleted file mode 100644
index 8b36121..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/ConverterFactory.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2007 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng.build.tools.convert.ant;
-
-import org.eclipse.releng.build.tools.convert.dom.DOMHtmlConverter;
-import org.eclipse.releng.build.tools.convert.dom.DOMTxtConverter;
-import org.eclipse.releng.build.tools.convert.dom.IDOMConverter;
-
-public class ConverterFactory {
-
-    public static final String EMPTY = ""; //$NON-NLS-1$
-    public static final int    TXT   = 0;
-    public static final int    HTML  = 1;
-
-    public static IDOMConverter createDOMConverter(final int id) {
-        switch (id) {
-            case TXT:
-                return new DOMTxtConverter();
-            case HTML:
-                return new DOMHtmlConverter();
-            default:
-                return new DOMHtmlConverter();
-        }
-    }
-}
diff --git a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/LogConverterTask.java b/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/LogConverterTask.java
deleted file mode 100644
index 6c7d7ca..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/LogConverterTask.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2007 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng.build.tools.convert.ant;
-
-import org.apache.tools.ant.BuildException;
-import org.apache.tools.ant.Task;
-
-/**
- * This ant task is used to convert all xml files inside the given
- * <code>logDirectory</code> and into html or txt files.
- *
- * <p>
- * The resulting files are written in the same directory than the corresponding
- * xml file.
- * </p>
- *
- * <p>
- * This is not intended to be subclassed by users.
- * </p>
- */
-public class LogConverterTask extends Task {
-
-    private String  input;
-
-    private boolean validation;
-
-    @Override
-    public void execute() throws BuildException {
-        if (input == null) {
-            throw new BuildException("No input is specified");//$NON-NLS-1$
-        }
-        try {
-            if (isValidation()) {
-                Converter.run("-v", "-r", "-i", input); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-            } else {
-                Converter.run("-r", "-i", input); //$NON-NLS-1$ //$NON-NLS-2$
-            }
-        }
-		catch (final Exception e) {
-            throw new BuildException("Exception during conversion", e);//$NON-NLS-1$
-        }
-    }
-
-    public String getInput() {
-        return input;
-    }
-
-    public boolean isValidation() {
-        return validation;
-    }
-
-    public void setInput(final String logDirectory) {
-        input = logDirectory;
-    }
-
-    public void setValidation(final boolean validation) {
-        this.validation = validation;
-    }
-}
diff --git a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/Messages.java b/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/Messages.java
deleted file mode 100644
index 2c7c102..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/Messages.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2007 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng.build.tools.convert.ant;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class Messages {
-
-    private final ResourceBundle resourceBundle;
-
-    public Messages(final String bundleName) {
-        resourceBundle = ResourceBundle.getBundle(bundleName);
-    }
-
-    public String getString(final String key) {
-        try {
-            return resourceBundle.getString(key);
-        }
-        catch (final MissingResourceException e) {
-            return '!' + key + '!';
-        }
-    }
-}
diff --git a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/html_messages.properties b/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/html_messages.properties
deleted file mode 100644
index cc9cd77..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/html_messages.properties
+++ /dev/null
@@ -1,271 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2017 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-# {0} plugin name
-# {1} xml log file name
-dom_header=<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">\n\
-<html>\n\
-<head>\n\
-\ \ \ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\n\
-\ \ \ <title>Compiler log for {0}</title>\n\
-</head>\n\
-<body>\n\
-<h2>Compiler log for {0} : <a href="{1}">{1}</a></h2>\n
-
-header=<\!doctype html public "-//w3c//dtd html 4.0 transitional//en">\n\
-<html>\n\
-<head>\n\
-\ \ \ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\n\
-\ \ \ <title>Compiler log</title>\n\
-</head>\n\
-<body>\n
-
-footer=</body>\n</html>\n
-
-# {0] source file name
-# {1} number of problems
-# {2} number of errors
-# {3} number of warnings
-# {4} number of infos
-problems.footer=
-
-errors.title_anchor=<a name="ERROR"></a><h1>ERRORS</h1>\n
-
-# {0] source file name
-# {1} number of errors
-errors.header=<h4>{0} : {1} :</h4>\n<table width="60%" style="border-bottom-color: #FF0000; border-left-color: #FF0000; border-color: #FF0000; border-right-color: #FF0000; border-top-color: #FF0000;" border="2" cellpadding="5">\n
-errors.footer=</table>\n
-
-other_warnings.title_anchor=<a name="OTHER_WARNINGS"></a><h1>OTHER WARNINGS</h1>\n
-
-# {0] source file name
-# {1} number of warnings
-other_warnings.header=<h4>{0} : {1} :</h4>\n<table width="60%" style="border-color: #000000;" border="1" cellpadding="5">\n<caption><b><font color="#CC6633">OTHER WARNINGS</font></b></caption>\n
-other_warnings.footer=</table>\n
-
-forbidden_warnings.title_anchor=<a name="FORBIDDEN_WARNINGS"></a><h1>FORBIDDEN ACCESS WARNINGS</h1>\n
-# {0] source file name
-# {1} number of warnings
-forbidden_warnings.header=<h4>{0} : {1} :</h4>\n<table width="60%" style="border-color: #000000;" border="1" cellpadding="5">\n<caption><b><font color="#CC6633">FORBIDDEN ACCESS WARNINGS</font></b></caption>\n
-forbidden_warnings.footer=</table>\n
-
-discouraged_warnings.title_anchor=<a name="DISCOURAGED_WARNINGS"></a><h1>DISCOURAGED ACCESS WARNINGS</h1>\n
-# {0] source file name
-# {1} number of warnings
-discouraged_warnings.header=<h4>{0} : {1} :</h4>\n<table width="60%" style="border-color: #000000;" border="1" cellpadding="5">\n<caption><b><font color="#CC6633">DISCOURAGED ACCESS WARNINGS</font></b></caption>\n
-discouraged_warnings.footer=</table>\n
-
-infos.title_anchor=<a name="INFO_WARNINGS"></a><h1>INFO WARNINGS</h1>\n
-# {0] source file name
-# {1} number of warnings
-infos.header=<h4>{0} : {1} :</h4>\n<table width="60%" style="border-color: #000000;" border="1" cellpadding="5">\n<caption><b><font color="#CC6633">INFO WARNINGS</font></b></caption>\n
-infos.footer=</table>\n
-
-# {0} source file name
-# {1} global error number
-# {2} error number
-# {3} error id
-# {4} line number of the error
-# {5} error message
-# {6} source code before this error
-# {7} source code corresponding to this error
-# {8} source code after this error
-# {9} complement to underline the problem
-# {10} starting position of the error
-# {11} ending position of the error
-errors.entry.even=<tr>\n\
-\	<td align=left valign=top style="border-bottom-color: #FF0000; border-left-color: #FF0000; border-color: #FF0000; border-right-color: #FF0000; border-top-color: #FF0000;">{2}.&nbsp;ERROR&nbsp;in&nbsp;{0}<br/>\n\
-\		&nbsp;(at line {4})<br/>\n\
-\		{6}<b>{7}</b>{8}<br/>\n\
-\		<i>{5}</i>\n\
-\	</td>\n\
-\</tr>\n
-
-# {0} source file name
-# {1} global error number
-# {2} error number
-# {3} error id
-# {4} line number of the error
-# {5} error message
-# {6} source code before this error
-# {7} source code corresponding to this error
-# {8} source code after this error
-# {9} complement to underline the problem
-# {10} starting position of the error
-# {11} ending position of the error
-errors.entry.odd=<tr>\n\
-\	<td align=left valign=top style="border-bottom-color: #FF0000; border-left-color: #FF0000; border-color: #FF0000; border-right-color: #FF0000; border-top-color: #FF0000;">{2}.&nbsp;ERROR&nbsp;in&nbsp;{0}<br/>\n\
-\		&nbsp;(at line {4})<br/>\n\
-\		{6}<b>{7}</b>{8}<br/>\n\
-\		<i>{5}</i>\n\
-\	</td>\n\
-\</tr>\n
-
-# {0} source file name
-# {1} global error number
-# {2} error number
-# {3} error id
-# {4} line number of the error
-# {5} error message
-# {6} source code before this error
-# {7} source code corresponding to this error
-# {8} source code after this error
-# {9} complement to underline the problem
-# {10} starting position of the error
-# {11} ending position of the error
-warnings.entry.even=<tr>\n\
-\	<td align=left valign=top>{2}.&nbsp;WARNING&nbsp;in&nbsp;{0}<br/>\n\
-\		&nbsp;(at line {4})<br/>\n\
-\		{6}<b>{7}</b>{8}<br/>\n\
-\		<i>{5}</i>\n\
-\	</td>\n\
-\</tr>\n
-
-# {0} source file name
-# {1} global error number
-# {2} error number
-# {3} error id
-# {4} line number of the error
-# {5} error message
-# {6} source code before this error
-# {7} source code corresponding to this error
-# {8} source code after this error
-# {9} complement to underline the problem
-# {10} starting position of the error
-# {11} ending position of the error
-warnings.entry.odd=<tr>\n\
-\	<td align=left valign=top>{2}.&nbsp;WARNING&nbsp;in&nbsp;{0}<br/>\n\
-\		&nbsp;(at line {4})<br/>\n\
-\		{6}<b>{7}</b>{8}<br/>\n\
-\		<i>{5}</i>\n\
-\	</td>\n\
-\</tr>\n
-
-# {0} source file name
-# {1} global error number
-# {2} error number
-# {3} error id
-# {4} line number of the error
-# {5} error message
-# {6} source code before this error
-# {7} source code corresponding to this error
-# {8} source code after this error
-# {9} complement to underline the problem
-# {10} starting position of the error
-# {11} ending position of the error
-infos.entry.even=<tr>\n\
-\	<td align=left valign=top>{2}.&nbsp;INFO&nbsp;in&nbsp;{0}<br/>\n\
-\		&nbsp;(at line {4})<br/>\n\
-\		{6}<b>{7}</b>{8}<br/>\n\
-\		<i>{5}</i>\n\
-\	</td>\n\
-\</tr>\n
-
-# {0} source file name
-# {1} global error number
-# {2} error number
-# {3} error id
-# {4} line number of the error
-# {5} error message
-# {6} source code before this error
-# {7} source code corresponding to this error
-# {8} source code after this error
-# {9} complement to underline the problem
-# {10} starting position of the error
-# {11} ending position of the error
-infos.entry.odd=<tr>\n\
-\	<td align=left valign=top>{2}.&nbsp;INFO&nbsp;in&nbsp;{0}<br/>\n\
-\		&nbsp;(at line {4})<br/>\n\
-\		{6}<b>{7}</b>{8}<br/>\n\
-\		<i>{5}</i>\n\
-\	</td>\n\
-\</tr>\n
-
-# {0} global number of problems
-# {1} global number of errors
-# {2} global number of warnings
-# {3} global number of infos
-problem.summary=<h3><u><b>TOTAL</b></u>&nbsp;:&nbsp;ERRORS:&nbsp;{1},&nbsp;WARNINGS:&nbsp;{2},&nbsp;INFOS:&nbsp;{3}</h3>\n
-
-problem.summary.title_anchor=<a name="TOP"></a>\n
-
-anchors.references.no_top=\n\
-<table>\n\
-<tr>\n\
-<td><a href="#ERROR">errors</a></td>\n\
-<td><a href="#OTHER_WARNINGS">others warnings</a></td>\n\
-<td><a href="#INFO_WARNINGS">infos</a></td>\n\
-<td><a href="#FORBIDDEN_WARNINGS">forbidden warnings</a></td>\n\
-<td><a href="#DISCOURAGED_WARNINGS">discouraged warnings</a></td>\n\
-</tr>\n\
-</table>\n
-
-anchors.references.no_errors=\n\
-<table>\n\
-<tr>\n\
-<td><a href="#TOP">top</a></td>\n\
-<td><a href="#OTHER_WARNINGS">others warnings</a></td>\n\
-<td><a href="#INFO_WARNINGS">infos</a></td>\n\
-<td><a href="#FORBIDDEN_WARNINGS">forbidden warnings</a></td>\n\
-<td><a href="#DISCOURAGED_WARNINGS">discouraged warnings</a></td>\n\
-</tr>\n\
-</table>\n
-
-anchors.references.no_other_warnings=\n\
-<table>\n\
-<tr>\n\
-<td><a href="#TOP">top</a></td>\n\
-<td><a href="#ERROR">errors</a></td>\n\
-<td><a href="#INFO_WARNINGS">infos</a></td>\n\
-<td><a href="#FORBIDDEN_WARNINGS">forbidden warnings</a></td>\n\
-<td><a href="#DISCOURAGED_WARNINGS">discouraged warnings</a></td>\n\
-</tr>\n\
-</table>\n
-
-anchors.references.no_infos=\n\
-<table>\n\
-<tr>\n\
-<td><a href="#ERROR">errors</a></td>\n\
-<td><a href="#OTHER_WARNINGS">others warnings</a></td>\n\
-<td><a href="#FORBIDDEN_WARNINGS">forbidden warnings</a></td>\n\
-<td><a href="#DISCOURAGED_WARNINGS">discouraged warnings</a></td>\n\
-</tr>\n\
-</table>\n
-
-anchors.references.no_forbidden_warnings=\n\
-<table>\n\
-<tr>\n\
-<td><a href="#TOP">top</a></td>\n\
-<td><a href="#ERROR">errors</a></td>\n\
-<td><a href="#INFO_WARNINGS">infos</a></td>\n\
-<td><a href="#OTHER_WARNINGS">others warnings</a></td>\n\
-<td><a href="#DISCOURAGED_WARNINGS">discouraged warnings</a></td>\n\
-</tr>\n\
-</table>\n
-
-anchors.references.no_discouraged_warnings=\n\
-<table>\n\
-<tr>\n\
-<td><a href="#TOP">top</a></td>\n\
-<td><a href="#ERROR">errors</a></td>\n\
-<td><a href="#INFO_WARNINGS">infos</a></td>\n\
-<td><a href="#OTHER_WARNINGS">others warnings</a></td>\n\
-<td><a href="#FORBIDDEN_WARNINGS">forbidden warnings</a></td>\n\
-</tr>\n\
-</table>\n
-
-one_warning=1 warning
-multiple_warnings={1,number} warnings
-
-one_error=1 error
-multiple_errors={1,number} errors
-
-one_info=1 info
-multiple_infos={1,number} infos
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/txt_messages.properties b/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/txt_messages.properties
deleted file mode 100644
index 4786c45..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/ant/txt_messages.properties
+++ /dev/null
@@ -1,149 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2017 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-header=
-# {0} plugin name
-# {1} xml log file name
-dom_header= log for {0}
-footer=
-# {0] source file name
-# {1} number of problems
-# {2} number of errors
-# {3} number of warnings
-# {4} number of infos
-
-problems.header=----------\n
-# {0] source file name
-# {1} number of problems
-# {2} number of errors
-# {3} number of warnings
-# {4} number of infos
-problems.footer={1} problem(s) ({2} error(s), {3} warning(s), {4} info(s))
-
-errors.header=
-errors.footer=
-
-warnings.header=
-warnings.footer=
-
-# {0} source file name
-# {1} global error number
-# {2} error number
-# {3} error id
-# {4} line number of the error
-# {5} error message
-# {6} source code before this error
-# {7} source code corresponding to this error
-# {8} source code after this error
-# {9} complement to underline the problem
-# {10} starting position of the error
-# {11} ending position of the error
-errors.entry.odd={1}. ERROR in {0}\n\
- (at line {4})\n\
-\	{6}{7}{8}\n\	{9}\n\
-{5}\n\
-----------\n
-
-# {0} source file name
-# {1} global error number
-# {2} error number
-# {3} error id
-# {4} line number of the error
-# {5} error message
-# {6} source code before this error
-# {7} source code corresponding to this error
-# {8} source code after this error
-# {9} complement to underline the problem
-# {10} starting position of the error
-# {11} ending position of the error
-errors.entry.even={1}. ERROR in {0}\n\
- (at line {4})\n\
-\	{6}{7}{8}\n\	{9}\n\
-{5}\n\
-----------\n
-
-# {0} source file name
-# {1} global error number
-# {2} error number
-# {3} error id
-# {4} line number of the error
-# {5} error message
-# {6} source code before this error
-# {7} source code corresponding to this error
-# {8} source code after this error
-# {9} complement to underline the problem
-# {10} starting position of the error
-# {11} ending position of the error
-warnings.entry.odd={1}. WARNING in {0}\n\
- (at line {4})\n\
-\	{6}{7}{8}\n\	{9}\n\
-{5}\n\
-----------\n
-
-# {0} source file name
-# {1} global error number
-# {2} error number
-# {3} error id
-# {4} line number of the error
-# {5} error message
-# {6} source code before this error
-# {7} source code corresponding to this error
-# {8} source code after this error
-# {9} complement to underline the problem
-# {10} starting position of the error
-# {11} ending position of the error
-warnings.entry.even={1}. WARNING in {0}\n\
- (at line {4})\n\
-\	{6}{7}{8}\n\	{9}\n\
-{5}\n\
-----------\n
-
-# {0} source file name
-# {1} global error number
-# {2} error number
-# {3} error id
-# {4} line number of the error
-# {5} error message
-# {6} source code before this error
-# {7} source code corresponding to this error
-# {8} source code after this error
-# {9} complement to underline the problem
-# {10} starting position of the error
-# {11} ending position of the error
-infos.entry.odd={1}. INFO in {0}\n\
- (at line {4})\n\
-\	{6}{7}{8}\n\	{9}\n\
-{5}\n\
-----------\n
-
-# {0} source file name
-# {1} global error number
-# {2} error number
-# {3} error id
-# {4} line number of the error
-# {5} error message
-# {6} source code before this error
-# {7} source code corresponding to this error
-# {8} source code after this error
-# {9} complement to underline the problem
-# {10} starting position of the error
-# {11} ending position of the error
-infos.entry.even={1}. INFO in {0}\n\
- (at line {4})\n\
-\	{6}{7}{8}\n\	{9}\n\
-{5}\n\
-----------\n
-
-# {0} global number of problems
-# {1} global number of errors
-# {2} global number of warnings
-# {3} global number of infos
-# {4} global number of tasks
-problem_summary={0} problem(s) ({1} error(s), {2} warning(s), {3} info(s))
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/AbstractDOMConverter.java b/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/AbstractDOMConverter.java
deleted file mode 100644
index a8d99d6..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/AbstractDOMConverter.java
+++ /dev/null
@@ -1,345 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2020 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng.build.tools.convert.dom;
-
-import java.io.BufferedWriter;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.io.Writer;
-import java.text.ChoiceFormat;
-import java.text.MessageFormat;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.releng.build.tools.convert.ant.Converter;
-import org.eclipse.releng.build.tools.convert.ant.Messages;
-
-public abstract class AbstractDOMConverter implements IDOMConverter {
-
-    public static final String  FORBIDDEN_REFERENCE   = "ForbiddenReference";  //$NON-NLS-1$
-    public static final String  DISCOURAGED_REFERENCE = "DiscouragedReference"; //$NON-NLS-1$
-	public static final Set<String> FILTERED_WARNINGS_IDS = Set.of(FORBIDDEN_REFERENCE, DISCOURAGED_REFERENCE);
-
-    protected Messages          messages;
-
-    private String convertToHTML(final String s) {
-        final StringBuilder buffer = new StringBuilder();
-        for (int i = 0, max = s.length(); i < max; i++) {
-            final char c = s.charAt(i);
-            switch (c) {
-                case '<':
-                    buffer.append("&lt;"); //$NON-NLS-1$
-                    break;
-                case '>':
-                    buffer.append("&gt;"); //$NON-NLS-1$
-                    break;
-                case '\"':
-                    buffer.append("&quot;"); //$NON-NLS-1$
-                    break;
-                case '&':
-                    buffer.append("&amp;"); //$NON-NLS-1$
-                    break;
-                case '^':
-                    buffer.append("&and;"); //$NON-NLS-1$
-                    break;
-                default:
-                    buffer.append(c);
-            }
-        }
-        return String.valueOf(buffer);
-    }
-
-    @Override
-    public void dump(final int formatVersion, final Map<String, String> options, final LogDocumentNode documentNode) {
-        switch (formatVersion) {
-            case Converter.FORMAT_VERSION_2:
-                dumpVersion2(options, documentNode);
-        }
-    }
-
-    private void dumpVersion2(final Map<String, String> options, final LogDocumentNode documentNode) {
-        final String fileName = options.get(Converter.OUTPUT_FILE_NAME);
-        final ProblemSummaryNode summaryNode = documentNode.getSummaryNode();
-        if ((summaryNode == null) || (summaryNode.numberOfProblems == 0)) {
-            return;
-        }
-        try (final Writer writer = new BufferedWriter(new FileWriter(fileName))){
-            final String pluginName = extractPluginName(fileName);
-            if (pluginName == null) {
-                writer.write(messages.getString("header")); //$NON-NLS-1$
-            } else {
-                final String pattern = messages.getString("dom_header"); //$NON-NLS-1$
-                writer.write(MessageFormat.format(pattern, pluginName, extractXmlFileName(options.get(Converter.INPUT_SOURCE))));
-            }
-            final ProblemSummaryNode problemSummaryNode = summaryNode;
-            writeTopAnchor(writer);
-            String pattern = messages.getString("problem.summary"); //$NON-NLS-1$
-            writer.write(MessageFormat.format(pattern, Integer.toString(problemSummaryNode.numberOfProblems),
-					Integer.toString(problemSummaryNode.numberOfErrors),
-					Integer.toString(problemSummaryNode.numberOfWarnings),
-					Integer.toString(problemSummaryNode.numberOfInfos)));
-
-            writeAnchorsReferences(writer);
-            final ProblemsNode[] problemsNodes = documentNode.getProblems();
-            int globalErrorNumber = 1;
-
-            writeErrorAnchor(writer);
-            writeAnchorsReferencesErrors(writer);
-            // dump errors
-            for (final ProblemsNode problemsNode : problemsNodes) {
-                final ProblemNode[] problemNodes = problemsNode.getErrors();
-                final int length = problemNodes.length;
-                if (length == 0) {
-                    continue;
-                }
-                pattern = messages.getString("errors.header"); //$NON-NLS-1$
-
-                final MessageFormat form = new MessageFormat(pattern);
-                final double[] warningsLimits = { 1, 2 };
-                final String[] warningParts = { messages.getString("one_error"), //$NON-NLS-1$
-                        messages.getString("multiple_errors") //$NON-NLS-1$
-                };
-                final ChoiceFormat warningForm = new ChoiceFormat(warningsLimits, warningParts);
-                final String sourceFileName = extractRelativePath(problemsNode.sourceFileName, pluginName);
-                form.setFormatByArgumentIndex(1, warningForm);
-                final Object[] arguments = new Object[] { sourceFileName, Integer.valueOf(problemsNode.numberOfErrors) };
-                writer.write(form.format(arguments));
-                for (int j = 0; j < length; j++) {
-                    final ProblemNode problemNode = problemNodes[j];
-                    if ((j & 1) != 0) {
-                        pattern = messages.getString("errors.entry.odd"); //$NON-NLS-1$
-                    } else {
-                        pattern = messages.getString("errors.entry.even"); //$NON-NLS-1$
-                    }
-                    problemNode.setSources();
-                    writer.write(MessageFormat.format(pattern, sourceFileName, Integer.toString(globalErrorNumber),
-							Integer.toString(j + 1), problemNode.id, Integer.toString(problemNode.line),
-							convertToHTML(problemNode.message), convertToHTML(problemNode.sourceCodeBefore),
-							convertToHTML(problemNode.sourceCode), convertToHTML(problemNode.sourceCodeAfter),
-							getUnderLine(problemNode.sourceCodeBefore, problemNode.sourceCodeAfter),
-							Integer.toString(problemNode.charStart), Integer.toString(problemNode.charEnd)));
-                    globalErrorNumber++;
-                }
-                writer.write(messages.getString("errors.footer")); //$NON-NLS-1$
-            }
-
-            writeOtherWarningsAnchor(writer);
-            writeAnchorsReferencesOtherWarnings(writer);
-            // dump other warnings
-            for (final ProblemsNode problemsNode : problemsNodes) {
-                final ProblemNode[] problemNodes = problemsNode.getOtherWarnings();
-                final int length = problemNodes.length;
-                if (length == 0) {
-                    continue;
-                }
-
-                pattern = messages.getString("other_warnings.header"); //$NON-NLS-1$
-                final MessageFormat form = new MessageFormat(pattern);
-                final double[] warningsLimits = { 1, 2 };
-                final String[] warningParts = { messages.getString("one_warning"),//$NON-NLS-1$
-                        messages.getString("multiple_warnings") //$NON-NLS-1$
-                };
-                final ChoiceFormat warningForm = new ChoiceFormat(warningsLimits, warningParts);
-                final String sourceFileName = extractRelativePath(problemsNode.sourceFileName, pluginName);
-                form.setFormatByArgumentIndex(1, warningForm);
-                final Object[] arguments = new Object[] { sourceFileName, Integer.valueOf(problemsNode.numberOfWarnings)};
-                writer.write(form.format(arguments));
-                for (int j = 0; j < length; j++) {
-                    final ProblemNode problemNode = problemNodes[j];
-                    if ((j & 1) != 0) {
-                        pattern = messages.getString("warnings.entry.odd"); //$NON-NLS-1$
-                    } else {
-                        pattern = messages.getString("warnings.entry.even"); //$NON-NLS-1$
-                    }
-                    problemNode.setSources();
-                    writer.write(MessageFormat.format(pattern, sourceFileName, Integer.toString(globalErrorNumber),
-							Integer.toString(j + 1), problemNode.id, Integer.toString(problemNode.line),
-							convertToHTML(problemNode.message), convertToHTML(problemNode.sourceCodeBefore),
-							convertToHTML(problemNode.sourceCode), convertToHTML(problemNode.sourceCodeAfter),
-							getUnderLine(problemNode.sourceCodeBefore, problemNode.sourceCodeAfter),
-							Integer.toString(problemNode.charStart), Integer.toString(problemNode.charEnd)));
-                    globalErrorNumber++;
-                }
-                writer.write(messages.getString("other_warnings.footer")); //$NON-NLS-1$
-            }
-
-            // dump infos
-            writeInfosAnchor(writer);
-            writeAnchorsReferencesInfos(writer);
-            for (final ProblemsNode problemsNode : problemsNodes) {
-                final ProblemNode[] problemNodes = problemsNode.getInfos();
-                final int length = problemNodes.length;
-                if (length == 0) {
-                    continue;
-                }
-
-                pattern = messages.getString("infos.header"); //$NON-NLS-1$
-                final MessageFormat form = new MessageFormat(pattern);
-                final double[] warningsLimits = { 1, 2 };
-                final String[] warningParts = { messages.getString("one_info"),//$NON-NLS-1$
-                        messages.getString("multiple_infos") //$NON-NLS-1$
-                };
-                final ChoiceFormat warningForm = new ChoiceFormat(warningsLimits, warningParts);
-                final String sourceFileName = extractRelativePath(problemsNode.sourceFileName, pluginName);
-                form.setFormatByArgumentIndex(1, warningForm);
-                final Object[] arguments = new Object[] { sourceFileName, Integer.valueOf(problemsNode.numberOfInfos) };
-                writer.write(form.format(arguments));
-                for (int j = 0; j < length; j++) {
-                    final ProblemNode problemNode = problemNodes[j];
-                    if ((j & 1) != 0) {
-                        pattern = messages.getString("infos.entry.odd"); //$NON-NLS-1$
-                    } else {
-                        pattern = messages.getString("infos.entry.even"); //$NON-NLS-1$
-                    }
-                    problemNode.setSources();
-                    writer.write(MessageFormat.format(pattern, sourceFileName, Integer.toString(globalErrorNumber),
-							Integer.toString(j + 1), problemNode.id, Integer.toString(problemNode.line),
-							convertToHTML(problemNode.message), convertToHTML(problemNode.sourceCodeBefore),
-							convertToHTML(problemNode.sourceCode), convertToHTML(problemNode.sourceCodeAfter),
-							getUnderLine(problemNode.sourceCodeBefore, problemNode.sourceCodeAfter),
-							Integer.toString(problemNode.charStart), Integer.toString(problemNode.charEnd)));
-                    globalErrorNumber++;
-                }
-                writer.write(messages.getString("infos.footer")); //$NON-NLS-1$
-            }
-
-            // dump forbidden accesses warnings
-            writeForbiddenRulesWarningsAnchor(writer);
-            writeAnchorsReferencesForbiddenRulesWarnings(writer);
-            for (final ProblemsNode problemsNode : problemsNodes) {
-                final ProblemNode[] problemNodes = problemsNode.getForbiddenWarnings();
-                final int length = problemNodes.length;
-                if (length == 0) {
-                    continue;
-                }
-
-                pattern = messages.getString("forbidden_warnings.header"); //$NON-NLS-1$
-                final MessageFormat form = new MessageFormat(pattern);
-                final double[] warningsLimits = { 1, 2 };
-                final String[] warningParts = { messages.getString("one_warning"),//$NON-NLS-1$
-                        messages.getString("multiple_warnings") //$NON-NLS-1$
-                };
-                final ChoiceFormat warningForm = new ChoiceFormat(warningsLimits, warningParts);
-                final String sourceFileName = extractRelativePath(problemsNode.sourceFileName, pluginName);
-                form.setFormatByArgumentIndex(1, warningForm);
-                final Object[] arguments = new Object[] { sourceFileName, Integer.valueOf(problemsNode.numberOfWarnings) };
-                writer.write(form.format(arguments));
-                for (int j = 0; j < length; j++) {
-                    final ProblemNode problemNode = problemNodes[j];
-                    if ((j & 1) != 0) {
-                        pattern = messages.getString("warnings.entry.odd"); //$NON-NLS-1$
-                    } else {
-                        pattern = messages.getString("warnings.entry.even"); //$NON-NLS-1$
-                    }
-                    problemNode.setSources();
-                    writer.write(MessageFormat.format(pattern, sourceFileName, Integer.toString(globalErrorNumber),
-							Integer.toString(j + 1), problemNode.id, Integer.toString(problemNode.line),
-							convertToHTML(problemNode.message), convertToHTML(problemNode.sourceCodeBefore),
-							convertToHTML(problemNode.sourceCode), convertToHTML(problemNode.sourceCodeAfter),
-							getUnderLine(problemNode.sourceCodeBefore, problemNode.sourceCodeAfter),
-							Integer.toString(problemNode.charStart), Integer.toString(problemNode.charEnd)));
-                    globalErrorNumber++;
-                }
-                writer.write(messages.getString("forbidden_warnings.footer")); //$NON-NLS-1$
-            }
-
-            // dump discouraged accesses warnings
-            writeDiscouragedRulesWarningsAnchor(writer);
-            writeAnchorsReferencesDiscouragedRulesWarnings(writer);
-            for (final ProblemsNode problemsNode : problemsNodes) {
-                final ProblemNode[] problemNodes = problemsNode.getDiscouragedWarnings();
-                final int length = problemNodes.length;
-                if (length == 0) {
-                    continue;
-                }
-
-                pattern = messages.getString("discouraged_warnings.header"); //$NON-NLS-1$
-                final MessageFormat form = new MessageFormat(pattern);
-                final double[] warningsLimits = { 1, 2 };
-                final String[] warningParts = { messages.getString("one_warning"),//$NON-NLS-1$
-                        messages.getString("multiple_warnings") //$NON-NLS-1$
-                };
-                final ChoiceFormat warningForm = new ChoiceFormat(warningsLimits, warningParts);
-                final String sourceFileName = extractRelativePath(problemsNode.sourceFileName, pluginName);
-                form.setFormatByArgumentIndex(1, warningForm);
-                final Object[] arguments = new Object[] { sourceFileName, Integer.valueOf(problemsNode.numberOfWarnings) };
-                writer.write(form.format(arguments));
-                for (int j = 0; j < length; j++) {
-                    final ProblemNode problemNode = problemNodes[j];
-                    if ((j & 1) != 0) {
-                        pattern = messages.getString("warnings.entry.odd"); //$NON-NLS-1$
-                    } else {
-                        pattern = messages.getString("warnings.entry.even"); //$NON-NLS-1$
-                    }
-                    problemNode.setSources();
-                    writer.write(MessageFormat.format(pattern, sourceFileName, Integer.toString(globalErrorNumber),
-							Integer.toString(j + 1), problemNode.id, Integer.toString(problemNode.line),
-							convertToHTML(problemNode.message), convertToHTML(problemNode.sourceCodeBefore),
-							convertToHTML(problemNode.sourceCode), convertToHTML(problemNode.sourceCodeAfter),
-							getUnderLine(problemNode.sourceCodeBefore, problemNode.sourceCodeAfter),
-							Integer.toString(problemNode.charStart), Integer.toString(problemNode.charEnd)));
-                    globalErrorNumber++;
-                }
-                writer.write(messages.getString("discouraged_warnings.footer")); //$NON-NLS-1$
-            }
-
-            writer.write(messages.getString("footer")); //$NON-NLS-1$
-            writer.flush();
-        } catch (final IOException e) {
-            e.printStackTrace();
-        }
-    }
-
-    private String extractPluginName(final String fileName) {
-        // fileName is fully qualified and we want to extract the segment before
-        // the log file name
-        // file name contains only '/'
-        final String logName = fileName.replace('\\', '/');
-        final int index = logName.lastIndexOf('/');
-        if (index == -1) {
-            return null;
-        }
-        final int index2 = logName.lastIndexOf('/', index - 1);
-        if (index2 == -1) {
-            return null;
-        }
-        return logName.substring(index2 + 1, index);
-    }
-
-    private String extractRelativePath(final String sourceFileName, final String pluginName) {
-        if (pluginName == null) {
-            return sourceFileName;
-        }
-        final int index = pluginName.indexOf('_');
-        if (index == -1) {
-            return sourceFileName;
-        }
-        final String pluginShortName = pluginName.substring(0, index);
-        final int index2 = sourceFileName.indexOf(pluginShortName);
-        if (index2 == -1) {
-            return sourceFileName;
-        }
-        return sourceFileName.substring(index2 + pluginShortName.length(), sourceFileName.length());
-    }
-
-    private String extractXmlFileName(final String fileName) {
-        // fileName is fully qualified and we want to extract the segment before
-        // the log file name
-        // file name contains only '/'
-        final String logName = fileName.replace('\\', '/');
-        final int index = logName.lastIndexOf('/');
-        if (index == -1) {
-            return null;
-        }
-        return logName.substring(index + 1, logName.length());
-    }
-}
diff --git a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/DOMHtmlConverter.java b/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/DOMHtmlConverter.java
deleted file mode 100644
index 80eb279..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/DOMHtmlConverter.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2017 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng.build.tools.convert.dom;
-
-import java.io.IOException;
-import java.io.Writer;
-
-import org.eclipse.releng.build.tools.convert.ant.ConverterFactory;
-import org.eclipse.releng.build.tools.convert.ant.Messages;
-
-public class DOMHtmlConverter extends AbstractDOMConverter {
-
-    public DOMHtmlConverter() {
-        //this.messages = new Messages("org.eclipse.releng.build.tools.convert.ant.html_messages"); //$NON-NLS-1$
-        messages = new Messages("org.eclipse.releng.build.tools.convert.ant.html_messages"); //$NON-NLS-1$
-    }
-
-    @Override
-    public String getUnderLine(final String sourceBefore, final String sourceOfError) {
-        return ConverterFactory.EMPTY;
-    }
-
-    @Override
-    public void writeAnchorsReferences(final Writer writer) throws IOException {
-        writer.write(messages.getString("anchors.references.no_top"));//$NON-NLS-1$
-    }
-
-    @Override
-    public void writeAnchorsReferencesDiscouragedRulesWarnings(final Writer writer) throws IOException {
-        writer.write(messages.getString("anchors.references.no_discouraged_warnings"));//$NON-NLS-1$
-    }
-
-    @Override
-    public void writeAnchorsReferencesErrors(final Writer writer) throws IOException {
-        writer.write(messages.getString("anchors.references.no_errors"));//$NON-NLS-1$
-    }
-
-    @Override
-    public void writeAnchorsReferencesForbiddenRulesWarnings(final Writer writer) throws IOException {
-        writer.write(messages.getString("anchors.references.no_forbidden_warnings"));//$NON-NLS-1$
-    }
-
-    @Override
-    public void writeAnchorsReferencesOtherWarnings(final Writer writer) throws IOException {
-        writer.write(messages.getString("anchors.references.no_other_warnings"));//$NON-NLS-1$
-    }
-
-    @Override
-    public void writeAnchorsReferencesInfos(final Writer writer) throws IOException {
-        writer.write(messages.getString("anchors.references.no_infos"));//$NON-NLS-1$
-    }
-    
-    @Override
-    public void writeDiscouragedRulesWarningsAnchor(final Writer writer) throws IOException {
-        writer.write(messages.getString("discouraged_warnings.title_anchor"));//$NON-NLS-1$
-    }
-
-    @Override
-    public void writeErrorAnchor(final Writer writer) throws IOException {
-        writer.write(messages.getString("errors.title_anchor"));//$NON-NLS-1$
-    }
-
-    @Override
-    public void writeForbiddenRulesWarningsAnchor(final Writer writer) throws IOException {
-        writer.write(messages.getString("forbidden_warnings.title_anchor"));//$NON-NLS-1$
-    }
-
-    @Override
-    public void writeOtherWarningsAnchor(final Writer writer) throws IOException {
-        writer.write(messages.getString("other_warnings.title_anchor"));//$NON-NLS-1$
-    }
-
-    @Override
-    public void writeInfosAnchor(final Writer writer) throws IOException {
-        writer.write(messages.getString("infos.title_anchor"));//$NON-NLS-1$
-    }
-
-    @Override
-    public void writeTopAnchor(final Writer writer) throws IOException {
-        writer.write(messages.getString("problem.summary.title_anchor"));//$NON-NLS-1$
-    }
-}
diff --git a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/DOMTxtConverter.java b/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/DOMTxtConverter.java
deleted file mode 100644
index aef152e..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/DOMTxtConverter.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2017 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng.build.tools.convert.dom;
-
-import java.io.IOException;
-import java.io.Writer;
-
-import org.eclipse.releng.build.tools.convert.ant.Messages;
-
-public class DOMTxtConverter extends AbstractDOMConverter {
-
-    public DOMTxtConverter() {
-        messages = new Messages("org.eclipse.releng.build.tools.convert.ant.txt_messages"); //$NON-NLS-1$
-    }
-
-    @Override
-    public String getUnderLine(final String sourceBefore, final String sourceOfError) {
-        final StringBuilder buffer = new StringBuilder();
-        char[] chars = sourceBefore.toCharArray();
-        for (int i = 0, max = chars.length; i < max; i++) {
-            switch (chars[i]) {
-                case '\t':
-                    buffer.append('\t');
-                    break;
-                default:
-                    buffer.append(' ');
-            }
-        }
-        chars = sourceOfError.toCharArray();
-        for (int i = 0, max = chars.length; i < max; i++) {
-            buffer.append('^');
-        }
-        return String.valueOf(buffer);
-    }
-
-    @Override
-    public void writeAnchorsReferences(final Writer writer) throws IOException {
-        // do nothing
-    }
-
-    @Override
-    public void writeAnchorsReferencesDiscouragedRulesWarnings(final Writer writer) throws IOException {
-        // do nothing
-    }
-
-    @Override
-    public void writeAnchorsReferencesErrors(final Writer writer) throws IOException {
-        // do nothing
-    }
-
-    @Override
-    public void writeAnchorsReferencesForbiddenRulesWarnings(final Writer writer) throws IOException {
-        // do nothing
-    }
-
-    @Override
-    public void writeAnchorsReferencesOtherWarnings(final Writer writer) throws IOException {
-        // do nothing
-    }
-
-    @Override
-    public void writeDiscouragedRulesWarningsAnchor(final Writer writer) throws IOException {
-        // do nothing
-    }
-
-    @Override
-    public void writeErrorAnchor(final Writer writer) throws IOException {
-        // do nothing
-    }
-
-    @Override
-    public void writeForbiddenRulesWarningsAnchor(final Writer writer) throws IOException {
-        // do nothing
-    }
-
-    @Override
-    public void writeOtherWarningsAnchor(final Writer writer) throws IOException {
-        // do nothing
-    }
-
-    @Override
-    public void writeTopAnchor(final Writer writer) throws IOException {
-        // do nothing
-    }
-
-    @Override
-    public void writeAnchorsReferencesInfos(Writer writer) throws IOException {
-      // do nothing
-      
-    }
-
-    @Override
-    public void writeInfosAnchor(Writer writer) throws IOException {
-      // do nothing
-      
-    }
-}
diff --git a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/IDOMConverter.java b/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/IDOMConverter.java
deleted file mode 100644
index 057aaab..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/IDOMConverter.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2017 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng.build.tools.convert.dom;
-
-import java.io.IOException;
-import java.io.Writer;
-import java.util.Map;
-
-public interface IDOMConverter {
-
-    void dump(int formatVersion, Map<String, String> options, LogDocumentNode documentNode);
-
-    String getUnderLine(String sourceBefore, String sourceOfError);
-
-    void writeAnchorsReferences(Writer writer) throws IOException;
-
-    void writeAnchorsReferencesDiscouragedRulesWarnings(Writer writer) throws IOException;
-
-    void writeAnchorsReferencesErrors(Writer writer) throws IOException;
-
-    void writeAnchorsReferencesForbiddenRulesWarnings(Writer writer) throws IOException;
-
-    void writeAnchorsReferencesOtherWarnings(Writer writer) throws IOException;
-
-    void writeDiscouragedRulesWarningsAnchor(Writer writer) throws IOException;
-
-    void writeErrorAnchor(Writer writer) throws IOException;
-
-    void writeForbiddenRulesWarningsAnchor(Writer writer) throws IOException;
-
-    void writeOtherWarningsAnchor(Writer writer) throws IOException;
-
-    void writeTopAnchor(Writer writer) throws IOException;
-
-    void writeAnchorsReferencesInfos(Writer writer) throws IOException;
-
-    void writeInfosAnchor(Writer writer) throws IOException;
-}
diff --git a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/LogDocumentNode.java b/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/LogDocumentNode.java
deleted file mode 100644
index 3debc90..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/LogDocumentNode.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2016 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng.build.tools.convert.dom;
-
-import java.util.ArrayList;
-
-public class LogDocumentNode {
-
-    private static final ProblemsNode[] NO_PROBLEM_NODES = new ProblemsNode[0];
-    private ArrayList<ProblemsNode>                   problems;
-    private ProblemSummaryNode          summaryNode;
-    private ProblemsNode[]              problemsNodes;
-
-    public void addProblemsNode(final ProblemsNode node) {
-        if (problems == null) {
-            problems = new ArrayList<>();
-        }
-        problems.add(node);
-    }
-
-    public ProblemsNode[] getProblems() {
-        if (problemsNodes != null) {
-            return problemsNodes;
-        }
-        if (problems == null) {
-            return problemsNodes = NO_PROBLEM_NODES;
-        }
-        problemsNodes = new ProblemsNode[problems.size()];
-        problems.toArray(problemsNodes);
-        return problemsNodes;
-    }
-
-    public ProblemSummaryNode getSummaryNode() {
-        return summaryNode;
-    }
-
-    public void setProblemSummary(final ProblemSummaryNode node) {
-        summaryNode = node;
-    }
-}
diff --git a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/ProblemNode.java b/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/ProblemNode.java
deleted file mode 100644
index 1a88736..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/ProblemNode.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2017 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng.build.tools.convert.dom;
-
-public class ProblemNode {
-
-    protected static final String EMPTY = "";         //$NON-NLS-1$
-
-    public SeverityType           severityType;
-    public int                    charStart;
-    public int                    charEnd;
-    public int                    line;
-    public String                 id;
-    public String                 message;
-    public int                    sourceStart;
-    public int                    sourceEnd;
-    public String                 contextValue;
-    public int                    globalProblemNumber;
-    public int                    problemNumber;
-    public String                 sourceFileName;
-
-    public String                 sourceCodeBefore;
-    public String                 sourceCodeAfter;
-    public String                 sourceCode;
-
-    public void setSources() {
-        if ((sourceStart == -1) || (sourceEnd == -1)) {
-            sourceCodeBefore = EMPTY;
-            sourceCode = contextValue;
-            sourceCodeAfter = EMPTY;
-        } else {
-            final int length = contextValue.length();
-            if (sourceStart < length) {
-                sourceCodeBefore = contextValue.substring(0, sourceStart);
-                final int end = sourceEnd + 1;
-                if (end < length) {
-                    sourceCode = contextValue.substring(sourceStart, end);
-                    sourceCodeAfter = contextValue.substring(end, length);
-                } else {
-                    sourceCode = contextValue.substring(sourceStart, length);
-                    sourceCodeAfter = EMPTY;
-                }
-            } else {
-                sourceCodeBefore = EMPTY;
-                sourceCode = EMPTY;
-                sourceCodeAfter = EMPTY;
-            }
-        }
-    }
-
-    @Override
-    public String toString() {
-        final StringBuilder buffer = new StringBuilder();
-        switch (severityType) {
-          case ERROR : 
-            buffer.append("ERROR ");//$NON-NLS-1$
-            break;
-          case WARNING : 
-            buffer.append("WARNING ");//$NON-NLS-1$
-            break;
-          case INFO : 
-            buffer.append("INFO ");//$NON-NLS-1$
-            break;
-        }
-        buffer.append("line : ").append(line).append(" message = ").append(message);//$NON-NLS-1$//$NON-NLS-2$
-        return buffer.toString();
-    }
-}
diff --git a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/ProblemSummaryNode.java b/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/ProblemSummaryNode.java
deleted file mode 100644
index e54b2e9..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/ProblemSummaryNode.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2017 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng.build.tools.convert.dom;
-
-public class ProblemSummaryNode {
-
-    public int numberOfProblems;
-    public int numberOfErrors;
-    public int numberOfWarnings;
-    public int numberOfInfos;
-
-    @Override
-    public String toString() {
-        final StringBuilder buffer = new StringBuilder();
-        buffer.append("problems : ") //$NON-NLS-1$
-                .append(numberOfProblems).append(" errors : ") //$NON-NLS-1$
-                .append(numberOfErrors).append(" warnings : ") //$NON-NLS-1$
-                .append(numberOfWarnings).append(" infos : ") //$NON_NLS-1$
-                .append(numberOfInfos);
-        return buffer.toString();
-    }
-}
diff --git a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/ProblemsNode.java b/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/ProblemsNode.java
deleted file mode 100644
index 5007031..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/ProblemsNode.java
+++ /dev/null
@@ -1,129 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2017 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng.build.tools.convert.dom;
-
-import java.util.ArrayList;
-
-public class ProblemsNode {
-
-    private static final ProblemNode[] EMPTY_NODES = new ProblemNode[0];
-
-    public String                      sourceFileName;
-    public int                         numberOfProblems;
-    public int                         numberOfErrors;
-    public int                         numberOfWarnings;
-    public int                         numberOfInfos;
-
-    private ArrayList<ProblemNode>     errorNodes;
-    private ArrayList<ProblemNode>     otherWarningNodes;
-    private ArrayList<ProblemNode>     discouragedWarningsNodes;
-    private ArrayList<ProblemNode>     forbiddenWarningsNodes;
-    private ArrayList<ProblemNode>     infoNodes;
-    private ProblemNode[]              errors;
-    private ProblemNode[]              otherWarnings;
-    private ProblemNode[]              discouragedWarnings;
-    private ProblemNode[]              forbiddenWarnings;
-    private ProblemNode[]              infos;
-
-    public void addDiscouragedWarning(final ProblemNode node) {
-        if (discouragedWarningsNodes == null) {
-            discouragedWarningsNodes = new ArrayList<>();
-        }
-        discouragedWarningsNodes.add(node);
-    }
-
-    public void addError(final ProblemNode node) {
-        if (errorNodes == null) {
-            errorNodes = new ArrayList<>();
-        }
-        errorNodes.add(node);
-    }
-
-    public void addForbiddenWarning(final ProblemNode node) {
-        if (forbiddenWarningsNodes == null) {
-            forbiddenWarningsNodes = new ArrayList<>();
-        }
-        forbiddenWarningsNodes.add(node);
-    }
-
-    public void addOtherWarning(final ProblemNode node) {
-        if (otherWarningNodes == null) {
-            otherWarningNodes = new ArrayList<>();
-        }
-        otherWarningNodes.add(node);
-    }
-
-    public void addInfo(final ProblemNode node) {
-      if (infoNodes == null) {
-          infoNodes = new ArrayList<>();
-      }
-      infoNodes.add(node);
-    }
-
-    public ProblemNode[] getDiscouragedWarnings() {
-        if (discouragedWarnings != null) {
-            return discouragedWarnings;
-        }
-        if (discouragedWarningsNodes == null) {
-            return discouragedWarnings = EMPTY_NODES;
-        }
-        discouragedWarnings = new ProblemNode[discouragedWarningsNodes.size()];
-        discouragedWarningsNodes.toArray(discouragedWarnings);
-        return discouragedWarnings;
-    }
-
-    public ProblemNode[] getErrors() {
-        if (errors != null) {
-            return errors;
-        }
-        if (errorNodes == null) {
-            return errors = EMPTY_NODES;
-        }
-        errors = new ProblemNode[errorNodes.size()];
-        errorNodes.toArray(errors);
-        return errors;
-    }
-
-    public ProblemNode[] getForbiddenWarnings() {
-        if (forbiddenWarnings != null) {
-            return forbiddenWarnings;
-        }
-        if (forbiddenWarningsNodes == null) {
-            return forbiddenWarnings = EMPTY_NODES;
-        }
-        forbiddenWarnings = new ProblemNode[forbiddenWarningsNodes.size()];
-        forbiddenWarningsNodes.toArray(forbiddenWarnings);
-        return forbiddenWarnings;
-    }
-
-    public ProblemNode[] getOtherWarnings() {
-        if (otherWarnings != null) {
-            return otherWarnings;
-        }
-        if (otherWarningNodes == null) {
-            return otherWarnings = EMPTY_NODES;
-        }
-        otherWarnings = new ProblemNode[otherWarningNodes.size()];
-        otherWarningNodes.toArray(otherWarnings);
-        return otherWarnings;
-    }
-
-    public ProblemNode[] getInfos() {
-      if (infos != null) {
-          return infos;
-      }
-      if (infoNodes == null) {
-          return infos = EMPTY_NODES;
-      }
-      infos = new ProblemNode[infoNodes.size()];
-      infoNodes.toArray(infos);
-      return infos;
-  }
-}
diff --git a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/SeverityType.java b/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/SeverityType.java
deleted file mode 100644
index 03a8dca..0000000
--- a/bundles/org.eclipse.releng.build.tools.convert/src/org/eclipse/releng/build/tools/convert/dom/SeverityType.java
+++ /dev/null
@@ -1,16 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.releng.build.tools.convert.dom;
-
-
-public enum SeverityType {
-
-  ERROR, WARNING, INFO;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.tools.tests/.classpath b/bundles/org.eclipse.releng.tools.tests/.classpath
deleted file mode 100644
index 4a00bec..0000000
--- a/bundles/org.eclipse.releng.tools.tests/.classpath
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11">
-		<attributes>
-			<attribute name="module" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.releng.tools.tests/.gitignore b/bundles/org.eclipse.releng.tools.tests/.gitignore
deleted file mode 100644
index f08c220..0000000
--- a/bundles/org.eclipse.releng.tools.tests/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*~
-/*.jpage
diff --git a/bundles/org.eclipse.releng.tools.tests/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.releng.tools.tests/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/bundles/org.eclipse.releng.tools.tests/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.releng.tools.tests/.settings/org.eclipse.core.runtime.prefs b/bundles/org.eclipse.releng.tools.tests/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/bundles/org.eclipse.releng.tools.tests/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/bundles/org.eclipse.releng.tools.tests/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.releng.tools.tests/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index c444abe..0000000
--- a/bundles/org.eclipse.releng.tools.tests/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,447 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.builder.cleanOutputFolder=clean
-org.eclipse.jdt.core.builder.duplicateResourceTask=warning
-org.eclipse.jdt.core.builder.invalidClasspath=abort
-org.eclipse.jdt.core.builder.recreateModifiedClassFileInOutputFolder=ignore
-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
-org.eclipse.jdt.core.circularClasspath=error
-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
-org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
-org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
-org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
-org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=11
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=error
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=warning
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
-org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
-org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
-org.eclipse.jdt.core.compiler.problem.nullReference=error
-org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
-org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
-org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=disabled
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=error
-org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.release=enabled
-org.eclipse.jdt.core.compiler.source=11
-org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
-org.eclipse.jdt.core.formatter.alignment_for_logical_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
-org.eclipse.jdt.core.formatter.alignment_for_module_statements=16
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_string_concatenation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
-org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
-org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=0
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.align_tags_descriptions_grouped=true
-org.eclipse.jdt.core.formatter.comment.align_tags_names_descriptions=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=true
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=true
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=false
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
-org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
-org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
-org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=false
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_after_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
-org.eclipse.jdt.core.formatter.insert_space_after_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_before_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.join_lines_in_comments=true
-org.eclipse.jdt.core.formatter.join_wrapped_lines=true
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=120
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=tab
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_on_off_tags=false
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_additive_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
-org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
-org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
-org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
-org.eclipse.jdt.core.incompatibleJDKLevel=ignore
-org.eclipse.jdt.core.incompleteClasspath=error
-org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/bundles/org.eclipse.releng.tools.tests/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.releng.tools.tests/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 00449fd..0000000
--- a/bundles/org.eclipse.releng.tools.tests/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,62 +0,0 @@
-eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_profile=org.eclipse.jdt.ui.default.eclipse_profile
-formatter_settings_version=14
-sp_cleanup.add_default_serial_version_id=true
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_methods=false
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_missing_override_annotations_interface_methods=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=true
-sp_cleanup.always_use_parentheses_in_expressions=false
-sp_cleanup.always_use_this_for_non_static_field_access=false
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_functional_interfaces=false
-sp_cleanup.convert_to_enhanced_for_loop=false
-sp_cleanup.correct_indentation=false
-sp_cleanup.format_source_code=true
-sp_cleanup.format_source_code_changes_only=true
-sp_cleanup.insert_inferred_type_arguments=false
-sp_cleanup.make_local_variable_final=true
-sp_cleanup.make_parameters_final=false
-sp_cleanup.make_private_fields_final=true
-sp_cleanup.make_type_abstract_if_missing_method=false
-sp_cleanup.make_variable_declarations_final=false
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=true
-sp_cleanup.on_save_use_additional_actions=true
-sp_cleanup.organize_imports=true
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=true
-sp_cleanup.remove_redundant_modifiers=true
-sp_cleanup.remove_redundant_type_arguments=true
-sp_cleanup.remove_trailing_whitespaces=true
-sp_cleanup.remove_trailing_whitespaces_all=true
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=false
-sp_cleanup.remove_unused_imports=false
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=true
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=true
-sp_cleanup.remove_unused_private_types=true
-sp_cleanup.sort_members=false
-sp_cleanup.sort_members_all=false
-sp_cleanup.use_anonymous_class_creation=false
-sp_cleanup.use_blocks=false
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_lambda=true
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=false
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-sp_cleanup.use_this_for_non_static_method_access=false
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/bundles/org.eclipse.releng.tools.tests/.settings/org.eclipse.wst.xml.core.prefs b/bundles/org.eclipse.releng.tools.tests/.settings/org.eclipse.wst.xml.core.prefs
deleted file mode 100644
index c49d584..0000000
--- a/bundles/org.eclipse.releng.tools.tests/.settings/org.eclipse.wst.xml.core.prefs
+++ /dev/null
@@ -1,18 +0,0 @@
-attributeHasNoValue=2
-eclipse.preferences.version=1
-endTagWithAttributes=2
-honourAllSchemaLocations=true
-indicateNoGrammar=-1
-indiciateNoDocumentElement=2
-markupValidation=true
-missingClosingBracket=2
-missingClosingQuote=2
-missingEndTag=2
-missingQuotes=2
-missingStartTag=2
-missingTagName=2
-namespaceInPITarget=2
-use-project-settings=true
-whitespaceAtStart=2
-whitespaceBeforeTagName=2
-xinclude=false
diff --git a/bundles/org.eclipse.releng.tools.tests/META-INF/MANIFEST.MF b/bundles/org.eclipse.releng.tools.tests/META-INF/MANIFEST.MF
deleted file mode 100644
index 8d1eb86..0000000
--- a/bundles/org.eclipse.releng.tools.tests/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,19 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %Plugin.name
-Bundle-SymbolicName: org.eclipse.releng.tools.tests;singleton:=true
-Bundle-Version: 1.0.0.qualifier
-Eclipse-BundleShape: dir
-Bundle-Vendor: %Plugin.providerName
-Bundle-Localization: plugin
-Require-Bundle: org.eclipse.core.runtime,
- org.junit,
- org.junit.jupiter.api,
- org.eclipse.jgit;bundle-version="3.0.0";resolution:=optional,
- org.eclipse.core.resources,
- org.eclipse.egit.core;bundle-version="3.0.0";resolution:=optional,
- org.eclipse.releng.tools;bundle-version="3.6.100"
-Export-Package: org.eclipse.releng.tests.tools
-Bundle-RequiredExecutionEnvironment: JavaSE-11
-Bundle-ClassPath: .
-Automatic-Module-Name: org.eclipse.releng.tools.tests
diff --git a/bundles/org.eclipse.releng.tools.tests/about.html b/bundles/org.eclipse.releng.tools.tests/about.html
deleted file mode 100644
index 164f781..0000000
--- a/bundles/org.eclipse.releng.tools.tests/about.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-<title>About</title>
-</head>
-<body lang="EN-US">
-	<h2>About This Content</h2>
-
-	<p>November 30, 2017</p>
-	<h3>License</h3>
-
-	<p>
-		The Eclipse Foundation 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 Eclipse
-		Public License Version 2.0 (&quot;EPL&quot;). A copy of the EPL is
-		available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
-		For purposes of the EPL, &quot;Program&quot; will mean the Content.
-	</p>
-
-	<p>
-		If you did not receive this Content directly from the Eclipse
-		Foundation, the Content is being redistributed by another party
-		(&quot;Redistributor&quot;) and different terms and conditions may
-		apply to your use of any object code in the Content. Check the
-		Redistributor's license that was provided with the Content. If no such
-		license exists, contact the Redistributor. Unless otherwise indicated
-		below, the terms and conditions of the EPL still apply to any source
-		code in the Content and such source code may be obtained at <a
-			href="http://www.eclipse.org/">http://www.eclipse.org</a>.
-	</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.tools.tests/bin/.gitignore b/bundles/org.eclipse.releng.tools.tests/bin/.gitignore
deleted file mode 100644
index cf1db2e..0000000
--- a/bundles/org.eclipse.releng.tools.tests/bin/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/org/
diff --git a/bundles/org.eclipse.releng.tools.tests/bin/.project b/bundles/org.eclipse.releng.tools.tests/bin/.project
new file mode 100644
index 0000000..0167ecd
--- /dev/null
+++ b/bundles/org.eclipse.releng.tools.tests/bin/.project
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.releng.tools.tests</name>
+	<comment></comment>
+	<projects>
+		<project>org.eclipse.core.runtime</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/bundles/org.eclipse.releng.tools.tests/build.properties b/bundles/org.eclipse.releng.tools.tests/build.properties
deleted file mode 100644
index 1aeb928..0000000
--- a/bundles/org.eclipse.releng.tools.tests/build.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2011 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = META-INF/,\
-               plugin.properties,\
-               about.html,\
-               .
-source.. = src/
diff --git a/bundles/org.eclipse.releng.tools.tests/plugin.properties b/bundles/org.eclipse.releng.tools.tests/plugin.properties
deleted file mode 100644
index 1670e2c..0000000
--- a/bundles/org.eclipse.releng.tools.tests/plugin.properties
+++ /dev/null
@@ -1,24 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2011 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-Plugin.name= Eclipse Releng Tests
-Plugin.providerName= Eclipse.org
-TestLabelDecorator.label= JDT UI Test Decorator
-TestLightweightLabelDecorator.label= JDT UI Test Lightweight Decorator
-
-AddTestMarkersAction.label= Add Test Markers
-AddTestMarkersAction.tooltip= Add Test Markers
-
-exampleQuickFixProcessor.name= Example Quick Fix Processor
-exampleQuickAssistProcessor.name= Example Quick Assist Processor
diff --git a/bundles/org.eclipse.releng.tools.tests/pom.xml b/bundles/org.eclipse.releng.tools.tests/pom.xml
deleted file mode 100644
index b3a383f..0000000
--- a/bundles/org.eclipse.releng.tools.tests/pom.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright (c) 2012, 2019 Eclipse Foundation and others.
-  All rights reserved. This program and the accompanying materials
-  are made available under the terms of the Eclipse Distribution License v1.0
-  which accompanies this distribution, and is available at
-  http://www.eclipse.org/org/documents/edl-v10.php
- 
-  Contributors:
-     Igor Fedorenko - initial implementation
-     Lars Vogel <Lars.Vogel@vogella.com> - Bug 485612
-     Paul Pazderski - Bug 546468: Enable releng tools tests on automatic builds
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <groupId>org.eclipse.platform</groupId>
-        <artifactId>bundles</artifactId>
-        <version>1.0.101-SNAPSHOT</version>
-    </parent>
-  <groupId>org.eclipse.releng</groupId>
-  <artifactId>org.eclipse.releng.tools.tests</artifactId>
-  <version>1.0.0-SNAPSHOT</version>
-  <packaging>eclipse-test-plugin</packaging>
-</project>
diff --git a/bundles/org.eclipse.releng.tools.tests/src/org/eclipse/releng/tests/tools/AdvancedCopyrightCommentTests.java b/bundles/org.eclipse.releng.tools.tests/src/org/eclipse/releng/tests/tools/AdvancedCopyrightCommentTests.java
deleted file mode 100644
index e02659e..0000000
--- a/bundles/org.eclipse.releng.tools.tests/src/org/eclipse/releng/tests/tools/AdvancedCopyrightCommentTests.java
+++ /dev/null
@@ -1,420 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2014 Leo Ufimtsev and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     Leo Ufimtsev - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tests.tools;
-
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-
-import org.eclipse.releng.tools.AdvancedCopyrightComment;
-import org.eclipse.releng.tools.BlockComment;
-import org.eclipse.releng.tools.CopyrightComment;
-import org.junit.jupiter.api.Test;
-
-
-/**
- * <h1> Parse Tests </h1>
- *
- * <p> Test that year is updated correctly by the comment parser. <br>
- * This can be ran as a standard Junit4 test or as a Plugin Test </p>
- */
-public class AdvancedCopyrightCommentTests {
-
-	/**
-	 * verify that standard comment will have the new year appended to it
-	 */
-	@Test
-	public void singleYearComment() {
-		String original = "<!--\n" +
-				"    Copyright (c) 2000 IBM Corporation and others.  \n" +
-				"    All rights reserved. This program and the accompanying materials\n" +
-				"    are made available under the terms of the Eclipse Public License v1.0\n" +
-				"    which accompanies this distribution, and is available at\n" +
-				"    http://www.eclipse.org/legal/epl-v10.html\n" +
-				"   \n" +
-				"    Contributors:\n" +
-				"        IBM Corporation - initial API and implementation\n" +
-				" -->";
-
-		//Last year updated to 2015
-		String expectedOut = "<!--\n" +
-				"    Copyright (c) 2000, 2015 IBM Corporation and others.  \n" +  //<<<< Note appended 2015
-				"    All rights reserved. This program and the accompanying materials\n" +
-				"    are made available under the terms of the Eclipse Public License v1.0\n" +
-				"    which accompanies this distribution, and is available at\n" +
-				"    http://www.eclipse.org/legal/epl-v10.html\n" +
-				"   \n" +
-				"    Contributors:\n" +
-				"        IBM Corporation - initial API and implementation\n" +
-				" -->";
-
-		proccessAndCompare(original, 2015, expectedOut);
-	}
-
-
-	/**
-	 * verify standard two year comments work correctly 2000, 2014
-	 */
-	@Test
-	public void twoYearCommentCommaSeperated() {
-		String original = "<!--\n" +
-				"    Copyright (c) 2000, 2014 IBM Corporation and others.  \n" +
-				"    All rights reserved. This program and the accompanying materials\n" +
-				"    are made available under the terms of the Eclipse Public License v1.0\n" +
-				"    which accompanies this distribution, and is available at\n" +
-				"    http://www.eclipse.org/legal/epl-v10.html\n" +
-				"   \n" +
-				"    Contributors:\n" +
-				"        IBM Corporation - initial API and implementation\n" +
-				" -->";
-
-		//Last year updated to 2015
-		String expectedOut = "<!--\n" +
-				"    Copyright (c) 2000, 2015 IBM Corporation and others.  \n" +
-				"    All rights reserved. This program and the accompanying materials\n" +
-				"    are made available under the terms of the Eclipse Public License v1.0\n" +
-				"    which accompanies this distribution, and is available at\n" +
-				"    http://www.eclipse.org/legal/epl-v10.html\n" +
-				"   \n" +
-				"    Contributors:\n" +
-				"        IBM Corporation - initial API and implementation\n" +
-				" -->";
-
-		proccessAndCompare(original, 2015, expectedOut);
-	}
-
-	/**
-	 * verify standard two year comments work correctly 2000 - 2014 <br>
-	 * It should also handle dashes as well as commas.
-	 */
-	@Test
-	public void twoYearCommentDashSeperated() {
-		String original = "<!--\n" +
-				"    Copyright (c) 2000 - 2014 IBM Corporation and others.  \n" +
-				"    All rights reserved. This program and the accompanying materials\n" +
-				"    are made available under the terms of the Eclipse Public License v1.0\n" +
-				"    which accompanies this distribution, and is available at\n" +
-				"    http://www.eclipse.org/legal/epl-v10.html\n" +
-				"   \n" +
-				"    Contributors:\n" +
-				"        IBM Corporation - initial API and implementation\n" +
-				" -->";
-
-		//Last year updated to 2015
-		String expectedOut = "<!--\n" +
-				"    Copyright (c) 2000 - 2015 IBM Corporation and others.  \n" +
-				"    All rights reserved. This program and the accompanying materials\n" +
-				"    are made available under the terms of the Eclipse Public License v1.0\n" +
-				"    which accompanies this distribution, and is available at\n" +
-				"    http://www.eclipse.org/legal/epl-v10.html\n" +
-				"   \n" +
-				"    Contributors:\n" +
-				"        IBM Corporation - initial API and implementation\n" +
-				" -->";
-
-		proccessAndCompare(original, 2015, expectedOut);
-	}
-
-
-
-	/**
-	 * Verify that comments with multiple years are handled correctly.
-	 */
-	@Test
-	public void multiYearComment() {
-		String original = "<!--\n" +
-				"    Copyright (c) 2000, 2011-2012, 2014 IBM Corporation and others.  \n" +
-				"    All rights reserved. This program and the accompanying materials\n" +
-				"    are made available under the terms of the Eclipse Public License v1.0\n" +
-				"    which accompanies this distribution, and is available at\n" +
-				"    http://www.eclipse.org/legal/epl-v10.html\n" +
-				"   \n" +
-				"    Contributors:\n" +
-				"        IBM Corporation - initial API and implementation\n" +
-				" -->";
-
-		//Last year updated to 2015
-		String expectedOut = "<!--\n" +
-				"    Copyright (c) 2000, 2011-2012, 2015 IBM Corporation and others.  \n" +
-				"    All rights reserved. This program and the accompanying materials\n" +
-				"    are made available under the terms of the Eclipse Public License v1.0\n" +
-				"    which accompanies this distribution, and is available at\n" +
-				"    http://www.eclipse.org/legal/epl-v10.html\n" +
-				"   \n" +
-				"    Contributors:\n" +
-				"        IBM Corporation - initial API and implementation\n" +
-				" -->";
-
-		proccessAndCompare(original, 2015, expectedOut);
-	}
-
-
-	/**
-	 * Verify that newline at the end is copied across to the new comment correctly.
-	 */
-	@Test
-	public void multiYearCommentNewlinePost() {
-		String original = "<!--\n" +
-				"    Copyright (c) 2000, 2011-2012, 2014 IBM Corporation and others.  \n" +
-				"    All rights reserved. This program and the accompanying materials\n" +
-				"    are made available under the terms of the Eclipse Public License v1.0\n" +
-				"    which accompanies this distribution, and is available at\n" +
-				"    http://www.eclipse.org/legal/epl-v10.html\n" +
-				"   \n" +
-				"    Contributors:\n" +
-				"        IBM Corporation - initial API and implementation\n" +
-				" -->\n"; // NOTE new line char here.
-
-		//
-		String expectedOut = "<!--\n" +
-				"    Copyright (c) 2000, 2011-2012, 2015 IBM Corporation and others.  \n" +
-				"    All rights reserved. This program and the accompanying materials\n" +
-				"    are made available under the terms of the Eclipse Public License v1.0\n" +
-				"    which accompanies this distribution, and is available at\n" +
-				"    http://www.eclipse.org/legal/epl-v10.html\n" +
-				"   \n" +
-				"    Contributors:\n" +
-				"        IBM Corporation - initial API and implementation\n" +
-				" -->\n";
-
-		proccessAndCompare(original, 2015, expectedOut);
-	}
-
-	/**
-	 * Verify that newline at the beginning is copied across to the new comment correctly.
-	 */
-	@Test
-	public void multiYearCommentNewlinePre() {
-		String original = "\n<!--\n" + // NOTE new line char here.
-				"    Copyright (c) 2000, 2011-2012, 2014 IBM Corporation and others.  \n" +
-				"    All rights reserved. This program and the accompanying materials\n" +
-				"    are made available under the terms of the Eclipse Public License v1.0\n" +
-				"    which accompanies this distribution, and is available at\n" +
-				"    http://www.eclipse.org/legal/epl-v10.html\n" +
-				"   \n" +
-				"    Contributors:\n" +
-				"        IBM Corporation - initial API and implementation\n" +
-				" -->";
-
-		//
-		String expectedOut = "\n<!--\n" +
-				"    Copyright (c) 2000, 2011-2012, 2015 IBM Corporation and others.  \n" +
-				"    All rights reserved. This program and the accompanying materials\n" +
-				"    are made available under the terms of the Eclipse Public License v1.0\n" +
-				"    which accompanies this distribution, and is available at\n" +
-				"    http://www.eclipse.org/legal/epl-v10.html\n" +
-				"   \n" +
-				"    Contributors:\n" +
-				"        IBM Corporation - initial API and implementation\n" +
-				" -->";
-
-		proccessAndCompare(original, 2015, expectedOut);
-	}
-
-
-	/**
-	 * Check with Unix delimiters.
-	 */
-	@Test
-	public void unixDelimiters() {
-		String original = "<!--\n" +
-				"    Copyright (c) 2000, 2014 IBM Corporation and others.  \n" +
-				"    All rights reserved. This program and the accompanying materials\n" +
-				"    are made available under the terms of the Eclipse Public License v1.0\n" +
-				"    which accompanies this distribution, and is available at\n" +
-				"    http://www.eclipse.org/legal/epl-v10.html\n" +
-				"   \n" +
-				"    Contributors:\n" +
-				"        IBM Corporation - initial API and implementation\n" +
-				" -->";
-
-		//Last year updated to 2015
-		String expectedOut = "<!--\n" +
-				"    Copyright (c) 2000, 2015 IBM Corporation and others.  \n" +
-				"    All rights reserved. This program and the accompanying materials\n" +
-				"    are made available under the terms of the Eclipse Public License v1.0\n" +
-				"    which accompanies this distribution, and is available at\n" +
-				"    http://www.eclipse.org/legal/epl-v10.html\n" +
-				"   \n" +
-				"    Contributors:\n" +
-				"        IBM Corporation - initial API and implementation\n" +
-				" -->";
-
-		proccessAndCompare(original, 2015, expectedOut);
-	}
-
-	/**
-	 * Check with windows delimiters. {@code \r\n}
-	 */
-	@Test
-	public void windowsDelimiters() {
-		String original = "<!--\r\n" + // NOTE new line char here.
-				"    Copyright (c) 2000, 2014 IBM Corporation and others.  \r\n" +
-				"    All rights reserved. This program and the accompanying materials \r\n" +
-				"    are made available under the terms of the Eclipse Public License v1.0\r\n" +
-				"    which accompanies this distribution, and is available at\r\n" +
-				"    http://www.eclipse.org/legal/epl-v10.html\r\n" +
-				"   \r\n" +
-				"    Contributors:\r\n" +
-				"        IBM Corporation - initial API and implementation\r\n" +
-				" -->";
-
-		String expectedOut = "<!--\r\n" + // NOTE new line char here.
-				"    Copyright (c) 2000, 2015 IBM Corporation and others.  \r\n" +
-				"    All rights reserved. This program and the accompanying materials \r\n" +
-				"    are made available under the terms of the Eclipse Public License v1.0\r\n" +
-				"    which accompanies this distribution, and is available at\r\n" +
-				"    http://www.eclipse.org/legal/epl-v10.html\r\n" +
-				"   \r\n" +
-				"    Contributors:\r\n" +
-				"        IBM Corporation - initial API and implementation\r\n" +
-				" -->";
-
-		proccessAndCompare(original, 2015, expectedOut);
-	}
-
-	/**
-	 * the tool should work with the official header.
-	 * https://www.eclipse.org/legal/copyrightandlicensenotice.php
-	 */
-	@Test
-	public void eclipseCopyrightComment() {
-		String original =
-				"    /*******************************************************************************\n" +
-				"     * Copyright (c) 2000 {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n" +
-				"     * All rights reserved. This program and the accompanying materials\n" +
-				"     * are made available under the terms of the Eclipse Public License v1.0\n" +
-				"     * which accompanies this distribution, and is available at\n" +
-				"     * http://www.eclipse.org/legal/epl-v10.html\n" +
-				"     *\n" +
-				"     * Contributors:\n" +
-				"     *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n" +
-				"     *******************************************************************************/";
-
-		String expectedOut =
-				"    /*******************************************************************************\n" +
-				"     * Copyright (c) 2000, 2015 {INITIAL COPYRIGHT OWNER} {OTHER COPYRIGHT OWNERS}.\n" +
-				"     * All rights reserved. This program and the accompanying materials\n" +
-				"     * are made available under the terms of the Eclipse Public License v1.0\n" +
-				"     * which accompanies this distribution, and is available at\n" +
-				"     * http://www.eclipse.org/legal/epl-v10.html\n" +
-				"     *\n" +
-				"     * Contributors:\n" +
-				"     *    {INITIAL AUTHOR} - initial API and implementation and/or initial documentation\n" +
-				"     *******************************************************************************/";
-
-		proccessAndCompare(original, 2015, expectedOut);
-	}
-
-	/**
-	 * the tool should work with IBM headers.
-	 * https://www.eclipse.org/legal/copyrightandlicensenotice.php
-	 */
-	@Test
-	public void ibmCopyrightComment() {
-		String original =
-				"Copyright (c) 2000, 2010 IBM Corporation. \n" +
-				"All rights reserved. This program and the accompanying materials \n" +
-				"are made available under the terms of the Eclipse Public License v1.0 \n" +
-				"which accompanies this distribution, and is available at \n" +
-				"http://www.eclipse.org/legal/epl-v10.html  \n" +
-				"\n" +
-				"Contributors: \n" +
-				"   IBM Corporation - initial API and implementation";
-
-		String expectedOut =
-				"Copyright (c) 2000, 2015 IBM Corporation. \n" +
-				"All rights reserved. This program and the accompanying materials \n" +
-				"are made available under the terms of the Eclipse Public License v1.0 \n" +
-				"which accompanies this distribution, and is available at \n" +
-				"http://www.eclipse.org/legal/epl-v10.html  \n" +
-				"\n" +
-				"Contributors: \n" +
-				"   IBM Corporation - initial API and implementation";
-
-		proccessAndCompare(original, 2015, expectedOut);
-	}
-
-
-
-	/**
-	 * the tool should work with non-IBM copy right comments as well. <br>.
-	 * for the purpose, a random realistic comment was extracted.
-	 */
-	@Test
-	public void redHatCopyrightComment() {
-		String original =
-				"    /*******************************************************************************\n" +
-				"     * Copyright (c) 2004, 2008, 2009, 2012 Red Hat, Inc. and others\n" +
-				"     * All rights reserved. This program and the accompanying materials\n" +
-				"     * are made available under the terms of the Eclipse Public License v1.0\n" +
-				"     * which accompanies this distribution, and is available at\n" +
-				"     * http://www.eclipse.org/legal/epl-v10.html\n" +
-				"     *\n" +
-				"     * Contributors:\n" +
-				"     *    Kent Sebastian <ksebasti@redhat.com> - initial API and implementation\n" +
-				"     *    Keith Seitz <keiths@redhat.com> - setup code in launch the method, initially\n" +
-				"     *        written in the now-defunct OprofileSession class\n" +
-				"     *    QNX Software Systems and others - the section of code marked in the launch\n" +
-				"     *        method, and the exec method\n" +
-				"     *    Lev Ufimtsev <lufimtse@redhat.com> --Added automatical enablement of options\n" +
-				"     *                                         if thery are not set.\n" +
-				"     *    Red Hat Inc. - modification of OProfileLaunchConfigurationDelegate to here\n" +
-				"     *******************************************************************************/";
-
-		String expectedOut =
-				"    /*******************************************************************************\n" +
-				"     * Copyright (c) 2004, 2008, 2009, 2015 Red Hat, Inc. and others\n" +
-				"     * All rights reserved. This program and the accompanying materials\n" +
-				"     * are made available under the terms of the Eclipse Public License v1.0\n" +
-				"     * which accompanies this distribution, and is available at\n" +
-				"     * http://www.eclipse.org/legal/epl-v10.html\n" +
-				"     *\n" +
-				"     * Contributors:\n" +
-				"     *    Kent Sebastian <ksebasti@redhat.com> - initial API and implementation\n" +
-				"     *    Keith Seitz <keiths@redhat.com> - setup code in launch the method, initially\n" +
-				"     *        written in the now-defunct OprofileSession class\n" +
-				"     *    QNX Software Systems and others - the section of code marked in the launch\n" +
-				"     *        method, and the exec method\n" +
-				"     *    Lev Ufimtsev <lufimtse@redhat.com> --Added automatical enablement of options\n" +
-				"     *                                         if thery are not set.\n" +
-				"     *    Red Hat Inc. - modification of OProfileLaunchConfigurationDelegate to here\n" +
-				"     *******************************************************************************/";
-
-		proccessAndCompare(original, 2015, expectedOut);
-	}
-
-	/**
-	 * We test the AdvancedCopyrightComment parse(..) function.
-	 *
-	 * @param original  original comment
-	 * @param reviseTo  year to which it should be updated to
-	 * @param expected  expected updated comment.
-	 * @return          true if modified original matches expected.
-	 */
-	private void proccessAndCompare(String original, int reviseTo, String expected) {
-
-		//For our purposes, start/end line & start/end comment don't matter.
-		BlockComment commentBlock = new BlockComment(0, 0, original, null, null);
-
-		//Proccess input string.
-		AdvancedCopyrightComment advComment = AdvancedCopyrightComment.parse(commentBlock,CopyrightComment.XML_COMMENT);
-
-		advComment.setRevisionYear(reviseTo);
-
-		//get updated comment.
-		String actual = advComment.getCopyrightComment();
-
-		assertEquals(expected, actual, original);
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools.tests/src/org/eclipse/releng/tests/tools/GitCopyrightAdapterTest.java b/bundles/org.eclipse.releng.tools.tests/src/org/eclipse/releng/tests/tools/GitCopyrightAdapterTest.java
deleted file mode 100644
index 63a6718..0000000
--- a/bundles/org.eclipse.releng.tools.tests/src/org/eclipse/releng/tests/tools/GitCopyrightAdapterTest.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2013, 2016 Tomasz Zarna and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     Tomasz Zarna <tzarna@gmail.com> - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tests.tools;
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-
-import java.io.ByteArrayInputStream;
-import java.io.File;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.egit.core.op.ConnectProviderOperation;
-import org.eclipse.jgit.api.Git;
-import org.eclipse.jgit.lib.Constants;
-import org.eclipse.jgit.lib.PersonIdent;
-import org.eclipse.jgit.lib.Repository;
-import org.eclipse.jgit.util.FileUtils;
-import org.eclipse.releng.tools.git.GitCopyrightAdapter;
-import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Test;
-
-public class GitCopyrightAdapterTest extends LocalGitRepositoryTestData {
-
-	private static final IProgressMonitor NULL_MONITOR = new NullProgressMonitor();
-
-	private static final String PROJECT_NAME = "Project";
-
-	private static final String FILE1_NAME = "Foo.java";
-
-	private static final String FILE2_NAME = "Bar.java";
-
-	private Repository db;
-
-	private File trash;
-
-	private File gitDir;
-
-	private IProject project;
-
-	private IFile file1;
-
-	@Override
-	@BeforeEach
-	public void setUp() throws Exception {
-		super.setUp();
-		db = createWorkRepository();
-		trash = db.getWorkTree();
-		gitDir = new File(trash, Constants.DOT_GIT);
-		project = createProject(PROJECT_NAME);
-		file1 = project.getFile(FILE1_NAME);
-		connect();
-	}
-
-	@Override
-	@AfterEach
-	public void tearDown() throws Exception {
-		if (project.exists())
-			project.delete(true, true, NULL_MONITOR);
-		if (gitDir.exists())
-			FileUtils.delete(gitDir, FileUtils.RECURSIVE | FileUtils.RETRY);
-		super.tearDown();
-	}
-
-	@Test
-	public void testLastModifiedYear() throws Exception {
-
-		try (final Git git = new Git(db)) {
-			git.add().addFilepattern(PROJECT_NAME + "/" + FILE1_NAME).call();
-			final PersonIdent committer2011 = new PersonIdent(committer, getDateForYear(2011));
-			git.commit().setMessage("old commit").setCommitter(committer2011).call();
-			git.add().addFilepattern(PROJECT_NAME + "/" + FILE2_NAME).call();
-			git.commit().setMessage("new commit").call();
-		}
-
-		final GitCopyrightAdapter adapter = new GitCopyrightAdapter(
-				new IResource[] { project });
-		adapter.initialize(NULL_MONITOR);
-		final int lastModifiedYear = adapter.getLastModifiedYear(file1,
-				NULL_MONITOR);
-
-		assertEquals(2011, lastModifiedYear);
-	}
-
-	@Test
-	public void testCopyrightUpdateComment() throws Exception {
-
-		try (final Git git = new Git(db)) {
-			git.add().addFilepattern(PROJECT_NAME + "/" + FILE1_NAME).call();
-			git.commit().setMessage("copyright update").call();
-		}
-		final GitCopyrightAdapter adapter = new GitCopyrightAdapter(
-				new IResource[] { project });
-		adapter.initialize(NULL_MONITOR);
-		final int lastModifiedYear = adapter.getLastModifiedYear(file1,
-				NULL_MONITOR);
-
-		assertEquals(0, lastModifiedYear);
-	}
-
-	private IProject createProject(String name) throws Exception {
-		final IProject project = ResourcesPlugin.getWorkspace().getRoot()
-				.getProject(name);
-		if (project.exists())
-			project.delete(true, null);
-		final IProjectDescription desc = ResourcesPlugin.getWorkspace()
-				.newProjectDescription(name);
-		desc.setLocation(new Path(new File(db.getWorkTree(), name).getPath()));
-		project.create(desc, null);
-		project.open(null);
-
-		final IFile file1 = project.getFile(FILE1_NAME);
-		file1.create(
-				new ByteArrayInputStream("Hello, world".getBytes(project
-						.getDefaultCharset())), false, null);
-
-		final IFile file2 = project.getFile(FILE2_NAME);
-		file2.create(
-				new ByteArrayInputStream("Hi there".getBytes(project
-						.getDefaultCharset())), false, null);
-		return project;
-	}
-
-	private void connect() throws CoreException {
-		new ConnectProviderOperation(project, gitDir).execute(null);
-	}
-
-	private Date getDateForYear(int year) throws ParseException {
-		final SimpleDateFormat formatter = new SimpleDateFormat("yyyy/MM/dd");
-		return formatter.parse(Integer.toString(year) + "/6/30");
-	}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.tools.tests/src/org/eclipse/releng/tests/tools/LocalGitRepositoryTestData.java b/bundles/org.eclipse.releng.tools.tests/src/org/eclipse/releng/tests/tools/LocalGitRepositoryTestData.java
deleted file mode 100644
index 3c701ef..0000000
--- a/bundles/org.eclipse.releng.tools.tests/src/org/eclipse/releng/tests/tools/LocalGitRepositoryTestData.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * Copyright (C) 2009-2010, Google Inc.
- * Copyright (C) 2008, Robin Rosenberg <robin.rosenberg@dewire.com>
- * Copyright (C) 2007, Shawn O. Pearce <spearce@spearce.org>
- * and other copyright owners as documented in the project's IP log.
- *
- * This class was originally copied from
- * org.eclipse.jgit.junit.LocalDiskRepositoryTest
- * See https://bugs.eclipse.org/bugs/show_bug.cgi?id=378047
- *
- * This program and the accompanying materials are made available
- * under the terms of the Eclipse Distribution License v1.0 which
- * accompanies this distribution, is reproduced below, and is
- * available at http://www.eclipse.org/org/documents/edl-v10.php
- *
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the following
- * conditions are met:
- *
- * - Redistributions of source code must retain the above copyright
- *   notice, this list of conditions and the following disclaimer.
- *
- * - Redistributions in binary form must reproduce the above
- *   copyright notice, this list of conditions and the following
- *   disclaimer in the documentation and/or other materials provided
- *   with the distribution.
- *
- * - Neither the name of the Eclipse Foundation, Inc. nor the
- *   names of its contributors may be used to endorse or promote
- *   products derived from this software without specific prior
- *   written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
- * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-package org.eclipse.releng.tests.tools;
-
-import static org.junit.jupiter.api.Assertions.assertFalse;
-
-import java.io.File;
-import java.io.IOException;
-
-import org.eclipse.jgit.lib.Constants;
-import org.eclipse.jgit.lib.PersonIdent;
-import org.eclipse.jgit.lib.Repository;
-import org.eclipse.jgit.lib.RepositoryCache;
-import org.eclipse.jgit.storage.file.FileRepositoryBuilder;
-import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.BeforeAll;
-
-/**
- * This class is a modified version of org.eclipse.jgit.junit.LocalDiskRepositoryTestCase
- * <p>
- * Base class for tests requiring a local Git repository for testing.
- * </p>
- */
-public abstract class LocalGitRepositoryTestData {
-	private static int testCount;
-	protected PersonIdent committer;
-	private final File trash = new File(new File("target"), "trash");
-
-	@BeforeAll
-	public void setUp() throws Exception {
-		committer = new PersonIdent("J. Committer", "jcommitter@example.com");
-	}
-
-	@AfterEach
-	public void tearDown() throws Exception {
-		RepositoryCache.clear();
-	}
-
-	/**
-	 * Creates a new empty repository within a new empty working directory.
-	 *
-	 * @return the newly created repository, opened for access
-	 * @throws IOException
-	 *             the repository could not be created in the temporary area
-	 */
-	protected Repository createWorkRepository() throws IOException {
-		return createRepository(false /* not bare */);
-	}
-
-	/**
-	 * Creates a new empty repository.
-	 *
-	 * @param bare
-	 *            true to create a bare repository; false to make a repository
-	 *            within its working directory
-	 * @return the newly created repository, opened for access
-	 * @throws IOException
-	 *             the repository could not be created in the temporary area
-	 */
-	private Repository createRepository(boolean bare) throws IOException {
-		File gitdir = createUniqueTestGitDir(bare);
-		assertFalse(gitdir.exists());
-		FileRepositoryBuilder repositoryBuilder = new FileRepositoryBuilder();
-		repositoryBuilder.setMustExist(false);
-		repositoryBuilder.setGitDir(gitdir);
-		Repository db = repositoryBuilder.build();
-		db.create();
-		return db;
-	}
-
-	/**
-	 * Creates a new unique directory for a test repository
-	 *
-	 * @param bare
-	 *            true for a bare repository; false for a repository with a
-	 *            working directory
-	 * @return a unique directory for a test repository
-	 * @throws IOException
-	 */
-	protected File createUniqueTestGitDir(boolean bare) throws IOException {
-		String gitdirName = createUniqueTestFolderPrefix();
-		if (!bare)
-			gitdirName += "/";
-		gitdirName += Constants.DOT_GIT;
-		File gitdir = new File(trash, gitdirName);
-		return gitdir.getCanonicalFile();
-	}
-
-	private String createUniqueTestFolderPrefix() {
-		return "test" + (System.currentTimeMillis() + "_" + (testCount++));
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools/.classpath b/bundles/org.eclipse.releng.tools/.classpath
deleted file mode 100644
index e801ebf..0000000
--- a/bundles/org.eclipse.releng.tools/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.releng.tools/.gitignore b/bundles/org.eclipse.releng.tools/.gitignore
deleted file mode 100644
index ae3c172..0000000
--- a/bundles/org.eclipse.releng.tools/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/bin/
diff --git a/bundles/org.eclipse.releng.tools/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.releng.tools/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/bundles/org.eclipse.releng.tools/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.releng.tools/.settings/org.eclipse.core.runtime.prefs b/bundles/org.eclipse.releng.tools/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/bundles/org.eclipse.releng.tools/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/bundles/org.eclipse.releng.tools/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.releng.tools/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index cac1666..0000000
--- a/bundles/org.eclipse.releng.tools/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,414 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
-org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
-org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
-org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
-org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=11
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=error
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=ignore
-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
-org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=warning
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=error
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
-org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
-org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
-org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
-org.eclipse.jdt.core.compiler.problem.nullReference=error
-org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
-org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
-org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=error
-org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.release=enabled
-org.eclipse.jdt.core.compiler.source=11
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_logical_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_string_concatenation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=0
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=true
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
-org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
-org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
-org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_after_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
-org.eclipse.jdt.core.formatter.insert_space_after_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_before_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.join_lines_in_comments=true
-org.eclipse.jdt.core.formatter.join_wrapped_lines=true
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=120
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=tab
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_on_off_tags=false
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_additive_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
-org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
-org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
-org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/bundles/org.eclipse.releng.tools/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.releng.tools/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 991e1b2..0000000
--- a/bundles/org.eclipse.releng.tools/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,51 +0,0 @@
-eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_profile=org.eclipse.jdt.ui.default.eclipse_profile
-formatter_settings_version=12
-sp_cleanup.add_default_serial_version_id=true
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=true
-sp_cleanup.always_use_parentheses_in_expressions=false
-sp_cleanup.always_use_this_for_non_static_field_access=false
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_to_enhanced_for_loop=false
-sp_cleanup.format_source_code=false
-sp_cleanup.make_local_variable_final=false
-sp_cleanup.make_parameters_final=false
-sp_cleanup.make_private_fields_final=true
-sp_cleanup.make_variable_declarations_final=true
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=true
-sp_cleanup.on_save_use_additional_actions=false
-sp_cleanup.organize_imports=true
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=true
-sp_cleanup.remove_trailing_whitespaces=false
-sp_cleanup.remove_trailing_whitespaces_all=true
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=false
-sp_cleanup.remove_unused_imports=false
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=true
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=true
-sp_cleanup.remove_unused_private_types=true
-sp_cleanup.sort_members=false
-sp_cleanup.sort_members_all=false
-sp_cleanup.use_blocks=false
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=false
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-sp_cleanup.use_this_for_non_static_method_access=false
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/bundles/org.eclipse.releng.tools/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.releng.tools/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index ba85338..0000000
--- a/bundles/org.eclipse.releng.tools/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,32 +0,0 @@
-compilers.f.unresolved-features=1
-compilers.f.unresolved-plugins=1
-compilers.incompatible-environment=0
-compilers.p.build=1
-compilers.p.build.bin.includes=1
-compilers.p.build.encodings=2
-compilers.p.build.java.compiler=2
-compilers.p.build.java.compliance=1
-compilers.p.build.missing.output=2
-compilers.p.build.output.library=1
-compilers.p.build.source.library=1
-compilers.p.build.src.includes=1
-compilers.p.deprecated=1
-compilers.p.discouraged-class=1
-compilers.p.internal=1
-compilers.p.missing-packages=0
-compilers.p.missing-version-export-package=2
-compilers.p.missing-version-import-package=2
-compilers.p.missing-version-require-bundle=2
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=1
-compilers.p.unknown-attribute=0
-compilers.p.unknown-class=0
-compilers.p.unknown-element=0
-compilers.p.unknown-identifier=1
-compilers.p.unknown-resource=0
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.s.create-docs=false
-compilers.s.doc-folder=doc
-compilers.s.open-tags=1
-eclipse.preferences.version=1
diff --git a/bundles/org.eclipse.releng.tools/META-INF/MANIFEST.MF b/bundles/org.eclipse.releng.tools/META-INF/MANIFEST.MF
deleted file mode 100644
index 847f8c1..0000000
--- a/bundles/org.eclipse.releng.tools/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,32 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %PluginName
-Bundle-SymbolicName: org.eclipse.releng.tools; singleton:=true
-Bundle-Version: 4.1.100.qualifier
-Bundle-Activator: org.eclipse.releng.tools.RelEngPlugin
-Bundle-Vendor: %PluginProvider
-Bundle-Localization: plugin
-Require-Bundle: org.eclipse.ui.ide;resolution:=optional,
- org.eclipse.ui.views;resolution:=optional,
- org.eclipse.jface.text;resolution:=optional,
- org.eclipse.ui.workbench.texteditor;resolution:=optional,
- org.eclipse.ui.editors;resolution:=optional,
- org.eclipse.core.resources,
- org.eclipse.ui,
- org.eclipse.team.core,
- org.eclipse.core.runtime,
- org.eclipse.team.core,
- org.eclipse.team.ui,
- org.eclipse.compare,
- org.eclipse.ui.console,
- org.eclipse.jgit;bundle-version="4.0.0";resolution:=optional,
- org.eclipse.egit.core;bundle-version="4.0.0";resolution:=optional,
- org.eclipse.text
-Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-11
-Export-Package: 
- org.eclipse.releng.tools,
- org.eclipse.releng.tools.git;x-friends:="org.eclipse.releng.tests",
- org.eclipse.releng.tools.preferences,
- org.eclipse.releng.internal.tools.pomversion;x-internal:=true
-Automatic-Module-Name: org.eclipse.releng.tools
diff --git a/bundles/org.eclipse.releng.tools/about.html b/bundles/org.eclipse.releng.tools/about.html
deleted file mode 100644
index 164f781..0000000
--- a/bundles/org.eclipse.releng.tools/about.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
-    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-<title>About</title>
-</head>
-<body lang="EN-US">
-	<h2>About This Content</h2>
-
-	<p>November 30, 2017</p>
-	<h3>License</h3>
-
-	<p>
-		The Eclipse Foundation 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 Eclipse
-		Public License Version 2.0 (&quot;EPL&quot;). A copy of the EPL is
-		available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</a>.
-		For purposes of the EPL, &quot;Program&quot; will mean the Content.
-	</p>
-
-	<p>
-		If you did not receive this Content directly from the Eclipse
-		Foundation, the Content is being redistributed by another party
-		(&quot;Redistributor&quot;) and different terms and conditions may
-		apply to your use of any object code in the Content. Check the
-		Redistributor's license that was provided with the Content. If no such
-		license exists, contact the Redistributor. Unless otherwise indicated
-		below, the terms and conditions of the EPL still apply to any source
-		code in the Content and such source code may be obtained at <a
-			href="http://www.eclipse.org/">http://www.eclipse.org</a>.
-	</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.tools/bin/.project b/bundles/org.eclipse.releng.tools/bin/.project
new file mode 100644
index 0000000..263fdd6
--- /dev/null
+++ b/bundles/org.eclipse.releng.tools/bin/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.releng.tools</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/bundles/org.eclipse.releng.tools/build.properties b/bundles/org.eclipse.releng.tools/build.properties
deleted file mode 100644
index e1824ac..0000000
--- a/bundles/org.eclipse.releng.tools/build.properties
+++ /dev/null
@@ -1,22 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = .,\
-               plugin.xml,\
-               about.html,\
-               plugin.properties,\
-               META-INF/
-src.includes = about.html
-jars.compile.order = .
-source.. = src/
-output.. = bin/
diff --git a/bundles/org.eclipse.releng.tools/forceQualifierUpdate.txt b/bundles/org.eclipse.releng.tools/forceQualifierUpdate.txt
deleted file mode 100644
index 0afa641..0000000
--- a/bundles/org.eclipse.releng.tools/forceQualifierUpdate.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-# To force a version qualifier update add the bug here
-Bug 403352 - Update all parent versions to match our build stream
-Bug 416387 - don't sign inner jars in tools and test framework
-Bug 416582 - ignore warnings in releng tools similar to unit tests
-Bug 510976 - Several source bundles missing in SDK repository
-Bug 515093 - Source bundles missing for org.eclipse.releng.tools
-Bug 534597 - Unanticipated comparator errors in I20180511-2000
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.tools/plugin.properties b/bundles/org.eclipse.releng.tools/plugin.properties
deleted file mode 100644
index 13ece09..0000000
--- a/bundles/org.eclipse.releng.tools/plugin.properties
+++ /dev/null
@@ -1,35 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2013 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-PluginName=RelEng Plug-in
-PluginProvider=Eclipse.org
-
-RelEng=RelEng Tools
-RelEngActionSet.description=RelEng Tool Action Set
-RelEngActionSet.Release=Releasing...
-RelEngActionSet.tooltip=Release Projects
-
-releaseAction.label = Re&lease...
-releasedAction.label = Released
-compareProjectsAction.tooltip = Compare the selected project(s) with the released versions
-replaceProjectsAction.tooltip = Replace the selcted project(s) with the released versions
-loadMapProjectsAction.label = Load Map Projects
-tagMapProjectsAction.label = Tag Map Projects
-fixCopyrightsAction.label = Fix Copyrights
-copyrightToolPrefPage.name = Copyright Tool
-relengMapProjectPrefPage.name = Releng Map Project Selection
-pomPrefPage.name = POM Version Tool
-pomVersionMarker.name = POM Version Problem
-pomVersionMarkerCategory.name = POM Version Problems
-action.label = Release...
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.tools/plugin.xml b/bundles/org.eclipse.releng.tools/plugin.xml
deleted file mode 100644
index 8c98405..0000000
--- a/bundles/org.eclipse.releng.tools/plugin.xml
+++ /dev/null
@@ -1,96 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<plugin>
-
-     <extension
-         point="org.eclipse.ui.popupMenus">
-      <objectContribution
-            adaptable="true"
-            objectClass="org.eclipse.ui.IWorkingSet"
-            id="org.eclipse.releng.tools.WorkingSetContributions">
-         <action
-               label="%fixCopyrightsAction.label"
-               class="org.eclipse.releng.tools.AdvancedFixCopyrightAction"
-               menubarPath="additions"
-               enablesFor="+"
-               id="org.eclipse.releng.tools.advancedFixCopyrights">
-         </action>
-      </objectContribution>
-      <objectContribution
-            adaptable="true"
-            objectClass="org.eclipse.core.resources.IResource"
-            id="org.eclipse.releng.internal.tools.AdvancedCopyrightContribution">
-         <action
-               label="%fixCopyrightsAction.label"
-               class="org.eclipse.releng.tools.AdvancedFixCopyrightAction"
-               menubarPath="additions"
-               enablesFor="+"
-               id="org.eclipse.releng.tools.advancedFixCopyrights">
-         </action>
-      </objectContribution>
-   </extension>
-   
-	<!-- ********** Preference Pages ************** -->
-	<extension point="org.eclipse.ui.preferencePages">
-      <page
-            name="%copyrightToolPrefPage.name"
-            class="org.eclipse.releng.tools.preferences.CopyrightPreferencePage"
-            id="org.eclipse.releng.tools.preferences.CopyrightPreferencePage">
-      </page>
-      <page
-            class="org.eclipse.releng.tools.preferences.PomVersionPreferencePage"
-            id="org.eclipse.releng.tools.preferences.PomVersionPreferencePage"
-            name="%pomPrefPage.name">
-      </page>
-   </extension>
-	
-
-	<!-- ********** Preference Initializing ************** -->
-	<extension point="org.eclipse.core.runtime.preferences">
-		<initializer class="org.eclipse.releng.tools.preferences.RelEngPreferenceInitializer"/>
-	</extension>
- <extension
-       point="org.eclipse.core.runtime.adapters">
-    <factory
-          adaptableType="org.eclipse.egit.core.internal.GitRepositoryProviderType"
-          class="org.eclipse.releng.tools.git.GitCopyrightAdapterFactory">
-       <adapter
-             type="org.eclipse.releng.tools.IRepositoryProviderCopyrightAdapterFactory">
-       </adapter>
-    </factory>
- </extension>
-<extension id="pomVersionProblem" point="org.eclipse.core.resources.markers" name="%pomVersionMarker.name">
-  <super  type="org.eclipse.core.resources.problemmarker"/>
-  <super type="org.eclipse.core.resources.textmarker"/>
-  <persistent value="true"/>
-</extension>
- <extension
-       point="org.eclipse.ui.ide.markerSupport">
-    <markerTypeCategory
-          name="%pomVersionMarkerCategory.name">
-       <markerTypeReference
-             id="org.eclipse.releng.tools.pomVersionProblem">
-       </markerTypeReference>
-    </markerTypeCategory>
- </extension>
- <extension
-       point="org.eclipse.ui.ide.markerResolution">
-    <markerResolutionGenerator
-          class="org.eclipse.releng.internal.tools.pomversion.PomVersionResolutionGenerator"
-          markerType="org.eclipse.releng.tools.pomVersionProblem">
-    </markerResolutionGenerator>
- </extension>
- <extension
-       point="org.eclipse.ui.console.consolePageParticipants">
-    <consolePageParticipant
-          class="org.eclipse.releng.tools.FixPageParticipant"
-          id="org.eclipse.releng.tools.fixPageParticipant">
-       <enablement>
-          <instanceof
-                value="org.eclipse.releng.tools.AdvancedFixCopyrightAction$FixConsole">
-          </instanceof></enablement>
-    </consolePageParticipant>
- </extension>
-
-</plugin>
diff --git a/bundles/org.eclipse.releng.tools/pom.xml b/bundles/org.eclipse.releng.tools/pom.xml
deleted file mode 100644
index bf605f7..0000000
--- a/bundles/org.eclipse.releng.tools/pom.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright (c) 2012, 2016 Eclipse Foundation and others.
-  All rights reserved. This program and the accompanying materials
-  are made available under the terms of the Eclipse Distribution License v1.0
-  which accompanies this distribution, and is available at
-  http://www.eclipse.org/org/documents/edl-v10.php
- 
-  Contributors:
-     Igor Fedorenko - initial implementation
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <groupId>org.eclipse.platform</groupId>
-        <artifactId>bundles</artifactId>
-        <version>1.0.101-SNAPSHOT</version>
-    </parent>
-  <groupId>org.eclipse.releng</groupId>
-  <artifactId>org.eclipse.releng.tools</artifactId>
-  <version>4.1.100-SNAPSHOT</version>
-  <packaging>eclipse-plugin</packaging>
-  <properties>
-    <defaultSigning-excludeInnerJars>true</defaultSigning-excludeInnerJars>
-    <code.ignoredWarnings>${tests.ignoredWarnings}</code.ignoredWarnings>
-  </properties>
-</project>
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/IPomVersionConstants.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/IPomVersionConstants.java
deleted file mode 100644
index 6c8667f..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/IPomVersionConstants.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2013, 2014 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.internal.tools.pomversion;
-
-import org.eclipse.releng.tools.RelEngPlugin;
-
-
-/**
- * Contains all the constants used by the POM version tool.
- */
-public interface IPomVersionConstants {
-
-	/**
-	 * The marker type id for POM version problems specified in the markers extension.
-	 * Value is: <code>org.eclipse.releng.tools.pomVersionProblem</code>
-	 */
-	public final static String PROBLEM_MARKER_TYPE = RelEngPlugin.ID + ".pomVersionProblem"; //$NON-NLS-1$
-
-	/**
-	 * String attribute stored in the problem marker for the correct version that should be in the POM file
-	 */
-	public static final String POM_CORRECT_VERSION = "pom.CorrectVersion"; //$NON-NLS-1$
-
-	/**
-	 * Preference setting that stores the severity level for pom version problem markers.
-	 * Preference value must be a string and one of {@link #VALUE_ERROR}, {@link #VALUE_WARNING} or {@link #VALUE_IGNORE}.
-	 */
-	public final static String POM_VERSION_ERROR_LEVEL = RelEngPlugin.ID + ".invalidPomVersionErrorLevel"; //$NON-NLS-1$
-
-	/**
-	 * Preference setting that stores a version number that identifies the revision of the plug-in that last validated the whole workspace.
-	 * Preference value must be an integer.
-	 */
-	public final static String WORKSPACE_VALIDATED = RelEngPlugin.ID + ".workspaceValidated"; //$NON-NLS-1$
-
-	/**
-	 * Constant representing the preference value 'ignore'.
-	 * Value is: <code>Ignore</code>
-	 */
-	public static final String VALUE_IGNORE = "Ignore"; //$NON-NLS-1$
-	/**
-	 * Constant representing the preference value 'warning'.
-	 * Value is: <code>Warning</code>
-	 */
-	public static final String VALUE_WARNING = "Warning"; //$NON-NLS-1$
-	/**
-	 * Constant representing the preference value 'error'.
-	 * Value is: <code>Error</code>
-	 */
-	public static final String VALUE_ERROR = "Error"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/Messages.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/Messages.java
deleted file mode 100644
index 57c45c5..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/Messages.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2013 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.internal.tools.pomversion;
-
-import org.eclipse.osgi.util.NLS;
-
-
-final class Messages extends NLS {
-
-	private static final String BUNDLE_NAME = "org.eclipse.releng.internal.tools.pomversion.messages"; //$NON-NLS-1$
-
-	public static String PomVersionErrorReporter_pom_version_error_marker_message;
-	public static String PomVersionErrorReporter_pom_version_error_marker_message_feature;
-	public static String PomVersionMarkerResolution_label;
-
-	static {
-		// initialize resource bundle
-		NLS.initializeMessages(BUNDLE_NAME, Messages.class);
-	}
-
-	private Messages() {
-		// Do not instantiate
-	}
-
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/PomVersionErrorReporter.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/PomVersionErrorReporter.java
deleted file mode 100644
index d74d47d..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/PomVersionErrorReporter.java
+++ /dev/null
@@ -1,521 +0,0 @@
-/*******************************************************************************
- *  Copyright (c) 2013, 2016 IBM Corporation and others.
- *
- *  This program and the accompanying materials
- *  are made available under the terms of the Eclipse Public License 2.0
- *  which accompanies this distribution, and is available at
- *  https://www.eclipse.org/legal/epl-2.0/
- *
- *  SPDX-License-Identifier: EPL-2.0
- *
- *  Contributors:
- *     IBM Corporation - initial API and implementation
- *     Lars Vogel <Lars.Vogel@vogella.com> - Bug 489985
- *******************************************************************************/
-package org.eclipse.releng.internal.tools.pomversion;
-
-import java.io.IOException;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Stack;
-import java.util.jar.JarFile;
-
-import javax.xml.parsers.SAXParser;
-import javax.xml.parsers.SAXParserFactory;
-
-import org.eclipse.core.filebuffers.FileBuffers;
-import org.eclipse.core.filebuffers.ITextFileBuffer;
-import org.eclipse.core.filebuffers.ITextFileBufferManager;
-import org.eclipse.core.filebuffers.LocationKind;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceChangeEvent;
-import org.eclipse.core.resources.IResourceChangeListener;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.IResourceDeltaVisitor;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.preferences.IEclipsePreferences;
-import org.eclipse.core.runtime.preferences.IEclipsePreferences.PreferenceChangeEvent;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.osgi.util.ManifestElement;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.releng.tools.RelEngPlugin;
-import org.eclipse.ui.texteditor.MarkerUtilities;
-import org.osgi.framework.BundleException;
-import org.osgi.framework.Constants;
-import org.osgi.framework.Version;
-import org.xml.sax.Attributes;
-import org.xml.sax.Locator;
-import org.xml.sax.SAXException;
-import org.xml.sax.helpers.DefaultHandler;
-
-
-/**
- * Validates the content of the pom.xml.  Currently the only check is that the
- * version specified in pom.xml matches the bundle version.
- *
- */
-public class PomVersionErrorReporter implements IResourceChangeListener, IEclipsePreferences.IPreferenceChangeListener {
-
-	class PomResourceDeltaVisitor implements IResourceDeltaVisitor {
-
-		@Override
-		public boolean visit(IResourceDelta delta) {
-			if (delta != null) {
-				IResource resource = delta.getResource();
-				switch(resource.getType()) {
-				case IResource.PROJECT: {
-					if(delta.getKind() == IResourceDelta.REMOVED) {
-						return false;
-					}
-					IProject project = (IProject) resource;
-					try {
-						if(project.isAccessible() && (project.getDescription().hasNature("org.eclipse.pde.PluginNature") || project.getDescription().hasNature("org.eclipse.pde.FeatureNature"))) { //$NON-NLS-1$ //$NON-NLS-2$
-							if((delta.getFlags() & IResourceDelta.OPEN) > 0) {
-								validate(project);
-								return false;
-							}
-							return true;
-						}
-					}
-					catch(CoreException ce) {
-						RelEngPlugin.log(ce);
-					}
-					return false;
-				}
-				case IResource.ROOT:
-				case IResource.FOLDER: {
-					return true;
-				}
-				case IResource.FILE: {
-					switch(delta.getKind()) {
-					case IResourceDelta.REMOVED: {
-						//if manifest or feature removed, clean up markers
-						if(resource.getProjectRelativePath().equals(FEATURE_PATH) ||
-								resource.getProjectRelativePath().equals(MANIFEST_PATH)) {
-							IProject p = resource.getProject();
-							if(p.isAccessible()) {
-								cleanMarkers(p);
-							}
-						}
-						break;
-					}
-					case IResourceDelta.ADDED: {
-						//if the POM, manifest or feature.xml has been added scan them
-						if(resource.getProjectRelativePath().equals(FEATURE_PATH) ||
-								resource.getProjectRelativePath().equals(MANIFEST_PATH) ||
-								resource.getProjectRelativePath().equals(POM_PATH)) {
-							validate(resource.getProject());
-						}
-						break;
-					}
-					case IResourceDelta.CHANGED: {
-						//if the content has changed clean + scan
-						if((delta.getFlags() & IResourceDelta.CONTENT) > 0) {
-							if(resource.getProjectRelativePath().equals(FEATURE_PATH) ||
-									resource.getProjectRelativePath().equals(MANIFEST_PATH) ||
-									resource.getProjectRelativePath().equals(POM_PATH)) {
-								validate(resource.getProject());
-							}
-						}
-						break;
-					}
-					default: {
-						break;
-					}
-					}
-					return false;
-				}
-				}
-			}
-			return false;
-		}
-	}
-
-	/**
-	 * XML parsing handler to check the POM version infos
-	 */
-	class PomVersionHandler extends DefaultHandler {
-		private Version version;
-		private Stack<String> elements = new Stack<>();
-		private boolean checkVersion = false;
-		private boolean isFeatureProject = false;
-		private Locator locator;
-		IFile pom = null;
-		String severity = null;
-
-		public PomVersionHandler(IFile file, Version bundleVersion, String pref) {
-			this(file, bundleVersion, pref, false);
-		}
-
-		public PomVersionHandler(IFile file, Version version, String pref, boolean isFeatureProject) {
-			pom = file;
-			severity = pref;
-			this.version = version;
-			this.isFeatureProject = isFeatureProject;
-		}
-
-		@Override
-		public void setDocumentLocator(Locator locator) {
-			this.locator = locator;
-		}
-
-		@Override
-		public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
-			if (ELEMENT_VERSION.equals(qName)) {
-				if (!elements.isEmpty() && ELEMENT_PROJECT.equals(elements.peek())) {
-					checkVersion = true;
-				}
-			}
-			elements.push(qName);
-		}
-
-		@Override
-		public void endElement(String uri, String localName, String qName) throws SAXException {
-			elements.pop();
-		}
-
-		@Override
-		public void characters(char[] ch, int start, int length) throws SAXException {
-			if (checkVersion) {
-				checkVersion = false;
-
-				try {
-					// Remove the snapshot suffix
-					String versionString = new String(ch, start, length);
-					String origVer = versionString;
-					int index = versionString.indexOf(SNAPSHOT_SUFFIX);
-					if (index >= 0) {
-						versionString = versionString.substring(0, index);
-					}
-
-					// Create corrected version (no qualifiers, add back snapshot suffix)
-					Version bundleVersion2 = new Version(version.getMajor(), version.getMinor(), version.getMicro());
-					String correctedVersion = bundleVersion2.toString();
-					if (index >= 0) {
-						correctedVersion = correctedVersion.concat(SNAPSHOT_SUFFIX);
-					}
-
-					// Check if the pom version is a valid OSGi version
-					Version pomVersion = null;
-					try {
-						pomVersion = Version.parseVersion(versionString);
-					} catch (IllegalArgumentException e){
-						// Need to create a document to calculate the markers charstart and charend
-						IDocument doc = createDocument(pom);
-						int lineOffset = doc.getLineOffset(locator.getLineNumber() - 1); // locator lines start at 1
-						int linLength = doc.getLineLength(locator.getLineNumber() - 1);
-						String str = doc.get(lineOffset, linLength);
-						index = str.indexOf(origVer);
-						int charStart = lineOffset + index;
-						int charEnd = charStart + origVer.length();
-
-						String message = isFeatureProject ? Messages.PomVersionErrorReporter_pom_version_error_marker_message_feature : Messages.PomVersionErrorReporter_pom_version_error_marker_message;
-						reportMarker(NLS.bind(message, versionString, bundleVersion2.toString()),
-								locator.getLineNumber(),
-								charStart,
-								charEnd,
-								correctedVersion,
-								pom,
-								severity);
-					}
-
-					if (pomVersion == null){
-						return;
-					}
-
-					// Compare the versions
-					Version pomVersion2 = new Version(pomVersion.getMajor(), pomVersion.getMinor(), pomVersion.getMicro());
-					if (!bundleVersion2.equals(pomVersion2)) {
-						// Need to create a document to calculate the markers charstart and charend
-						IDocument doc = createDocument(pom);
-						int lineOffset = doc.getLineOffset(locator.getLineNumber() - 1); // locator lines start at 1
-						int linLength = doc.getLineLength(locator.getLineNumber() - 1);
-						String str = doc.get(lineOffset, linLength);
-						index = str.indexOf(origVer);
-						int charStart = lineOffset + index;
-						int charEnd = charStart + origVer.length();
-						String message = isFeatureProject ? Messages.PomVersionErrorReporter_pom_version_error_marker_message_feature : Messages.PomVersionErrorReporter_pom_version_error_marker_message;
-						reportMarker(NLS.bind(message, pomVersion2.toString(), bundleVersion2.toString()),
-								locator.getLineNumber(),
-								charStart,
-								charEnd,
-								correctedVersion,
-								pom,
-								severity);
-					}
-				} catch (IllegalArgumentException e) {
-					// If the manifest version is broken, let PDE report the problem
-				} catch (BadLocationException e) {
-					RelEngPlugin.log(e);
-				}
-			}
-		}
-	}
-
-	/**
-	 * XML parsing handler to check the feature.xml version
-	 */
-	class FeatureVersionHandler extends DefaultHandler {
-		private String featureVersion;
-
-		public FeatureVersionHandler() {
-		}
-
-		@Override
-		public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException {
-			// The version is on the root element, check for the attribute then throw exception to exit early
-			featureVersion = attributes.getValue("version"); //$NON-NLS-1$
-			throw new OperationCanceledException();
-		}
-
-		/**
-		 * Returns the string version value found in the feature.xml or <code>null</code>
-		 *
-		 * @return string version from feature.xml or <code>null</code>
-		 */
-		public String getVersion() {
-			return featureVersion;
-		}
-
-	}
-
-	/**
-	 * Project relative path to the pom.xml file.
-	 */
-	public static final IPath POM_PATH = new Path("pom.xml"); //$NON-NLS-1$
-
-	/**
-	 * Project relative path to the manifest file.
-	 */
-	public static final IPath MANIFEST_PATH = new Path(JarFile.MANIFEST_NAME);
-
-	/**
-	 * Version of the PomVersionErrorReporter. Needs to be incremented when the version check algorithm changes
-	 * in a way that requires re-validation of the whole workspace.
-	 */
-	public static final int VERSION= 1;
-
-	/**
-	 * Project relative path to the feature.xml file.
-	 */
-	public static final IPath FEATURE_PATH = new Path("feature.xml"); //$NON-NLS-1$
-
-	private static final String ELEMENT_PROJECT = "project"; //$NON-NLS-1$
-	private static final String ELEMENT_VERSION = "version"; //$NON-NLS-1$
-	private static final String SNAPSHOT_SUFFIX = "-SNAPSHOT"; //$NON-NLS-1$
-
-
-	/**
-	 * Clean up all markers
-	 *
-	 * @param project
-	 */
-	void cleanMarkers(IResource resource) {
-		try {
-			resource.deleteMarkers(IPomVersionConstants.PROBLEM_MARKER_TYPE, false, IResource.DEPTH_INFINITE);
-		}
-		catch(CoreException e) {
-			RelEngPlugin.log(e);
-		}
-	}
-
-	/**
-	 * Validates the manifest or feature version against the version in the <code>pom.xml</code> file
-	 *
-	 * @param project
-	 * @param severity
-	 */
-	public void validate(IProject project) {
-		if(project == null || !project.isAccessible()) {
-			return;
-		}
-		// Clean up existing markers
-		cleanMarkers(project);
-
-		String severity = RelEngPlugin.getPlugin().getPreferenceStore().getString(IPomVersionConstants.POM_VERSION_ERROR_LEVEL);
-		if (IPomVersionConstants.VALUE_IGNORE.equals(severity)) {
-			return;
-		}
-		IFile pom = project.getFile(POM_PATH);
-		if(!pom.exists()) {
-			return;
-		}
-
-		IFile manifest = project.getFile(MANIFEST_PATH);
-		if(manifest.exists()) {
-			// Get the manifest version
-			Version bundleVersion = Version.emptyVersion;
-			try {
-				Map<String, String> headers = new HashMap<>();
-				ManifestElement.parseBundleManifest(manifest.getContents(), headers);
-				String ver = headers.get(Constants.BUNDLE_VERSION);
-				if(ver == null) {
-					return;
-				}
-				bundleVersion = Version.parseVersion(ver);
-			} catch (IOException e) {
-				// Ignored, if there is a problem with the manifest, don't create a marker
-				return;
-			} catch (CoreException e){
-				// Ignored, if there is a problem with the manifest, don't create a marker
-				return;
-			} catch (BundleException e) {
-				// Ignored, if there is a problem with the manifest, don't create a marker
-				return;
-			} catch (IllegalArgumentException e){
-				// Ignored, if there is a problem with the manifest, don't create a marker
-				return;
-			}
-			// Compare it to the POM file version
-			try {
-				SAXParserFactory parserFactory = SAXParserFactory.newInstance();
-				SAXParser parser = parserFactory.newSAXParser();
-				PomVersionHandler handler = new PomVersionHandler(pom, bundleVersion, severity);
-				parser.parse(pom.getContents(), handler);
-			} catch (Exception e) {
-				// Ignored, if there is a problem with the POM file don't create a marker
-				return;
-			}
-
-		} else {
-			IFile feature = project.getFile(FEATURE_PATH);
-			if (feature.exists()){
-				try {
-					// Get the feature version
-					Version featureVersion = Version.emptyVersion;
-					SAXParserFactory parserFactory = SAXParserFactory.newInstance();
-					SAXParser parser = parserFactory.newSAXParser();
-					FeatureVersionHandler handler = new FeatureVersionHandler();
-					try {
-						parser.parse(feature.getContents(), handler);
-					} catch (OperationCanceledException e){
-						// Do nothing, used to avoid parsing the entire file
-					}
-
-					String version = handler.getVersion();
-					if (version == null){
-						// Ignored, if there is a problem with the feature, don't create a marker
-						return;
-					}
-					featureVersion = Version.parseVersion(version);
-
-					// Compare it to the POM file version
-					PomVersionHandler pomHandler = new PomVersionHandler(pom, featureVersion, severity, true);
-					parser.parse(pom.getContents(), pomHandler);
-				} catch (Exception e) {
-					// Ignored, if there is a problem with the POM file don't create a marker
-					return;
-				}
-			}
-		}
-	}
-
-	/**
-	 * Creates a new POM version problem marker with the given attributes
-	 * @param message the message for the marker
-	 * @param lineNumber the line number of the problem
-	 * @param charStart the starting character offset
-	 * @param charEnd the ending character offset
-	 * @param correctedVersion the correct version to be inserted
-	 * @param pom the handle to the POM file
-	 * @param severity the severity of the marker to create
-	 */
-	void reportMarker(String message, int lineNumber, int charStart, int charEnd, String correctedVersion, IFile pom, String severity) {
-		try {
-			HashMap<String, Object> attributes = new HashMap<>();
-			attributes.put(IMarker.MESSAGE, message);
-			if (severity.equals(IPomVersionConstants.VALUE_WARNING)){
-				attributes.put(IMarker.SEVERITY, Integer.valueOf(IMarker.SEVERITY_WARNING));
-			} else {
-				attributes.put(IMarker.SEVERITY, Integer.valueOf(IMarker.SEVERITY_ERROR));
-			}
-			if (lineNumber == -1) {
-				lineNumber = 1;
-			}
-			attributes.put(IMarker.LINE_NUMBER, Integer.valueOf(lineNumber));
-			attributes.put(IMarker.CHAR_START, Integer.valueOf(charStart));
-			attributes.put(IMarker.CHAR_END, Integer.valueOf(charEnd));
-			attributes.put(IPomVersionConstants.POM_CORRECT_VERSION, correctedVersion);
-			MarkerUtilities.createMarker(pom, attributes, IPomVersionConstants.PROBLEM_MARKER_TYPE);
-		} catch (CoreException e){
-			RelEngPlugin.log(e);
-		}
-	}
-
-	/**
-	 * Creates a new {@link IDocument} for the given {@link IFile}. <code>null</code>
-	 * is returned if the {@link IFile} does not exist or the {@link ITextFileBufferManager}
-	 * cannot be acquired or there was an exception trying to create the {@link IDocument}.
-	 *
-	 * @param file
-	 * @return a new {@link IDocument} or <code>null</code>
-	 */
-	protected IDocument createDocument(IFile file) {
-		if (!file.exists()) {
-			return null;
-		}
-		ITextFileBufferManager manager = FileBuffers.getTextFileBufferManager();
-		if (manager == null) {
-			return null;
-		}
-		try {
-			manager.connect(file.getFullPath(), LocationKind.NORMALIZE, null);
-			ITextFileBuffer textBuf = manager.getTextFileBuffer(file.getFullPath(), LocationKind.NORMALIZE);
-			IDocument document = textBuf.getDocument();
-			manager.disconnect(file.getFullPath(), LocationKind.NORMALIZE, null);
-			return document;
-		} catch (CoreException e) {
-			RelEngPlugin.log(e);
-		}
-		return null;
-	}
-
-	@Override
-	public void resourceChanged(IResourceChangeEvent event) {
-		IResourceDelta delta = event.getDelta();
-		if(delta != null) {
-			final PomResourceDeltaVisitor visitor = new PomResourceDeltaVisitor();
-			try {
-				delta.accept(visitor);
-			} catch (CoreException e) {
-				RelEngPlugin.log(e);
-			}
-		}
-	}
-
-	@Override
-	public void preferenceChange(PreferenceChangeEvent event) {
-		if(IPomVersionConstants.POM_VERSION_ERROR_LEVEL.equals(event.getKey())) {
-			final String newSeverity = (String) event.getNewValue();
-			final Object oldSeverity= event.getOldValue();
-			if(newSeverity != null) {
-				if(IPomVersionConstants.VALUE_IGNORE.equals(newSeverity)) {
-					//we turned it off
-					ResourcesPlugin.getWorkspace().removeResourceChangeListener(this);
-				} else if(oldSeverity == null || IPomVersionConstants.VALUE_IGNORE.equals(oldSeverity)) {
-					// we turned it on
-					ResourcesPlugin.getWorkspace().addResourceChangeListener(this, IResourceChangeEvent.POST_BUILD);
-				}
-				validateWorkspace();
-			}
-		}
-	}
-
-	public void validateWorkspace() {
-		IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
-		IProject[] projects = root.getProjects();
-		for (int i = 0; i < projects.length; i++) {
-			validate(projects[i]);
-		}
-		RelEngPlugin.getPlugin().getPreferenceStore().setValue(IPomVersionConstants.WORKSPACE_VALIDATED, VERSION);
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/PomVersionMarkerResolution.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/PomVersionMarkerResolution.java
deleted file mode 100644
index 130330c..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/PomVersionMarkerResolution.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*******************************************************************************
- *  Copyright (c) 2013, 2017 IBM Corporation and others.
- *
- *  This program and the accompanying materials
- *  are made available under the terms of the Eclipse Public License 2.0
- *  which accompanies this distribution, and is available at
- *  https://www.eclipse.org/legal/epl-2.0/
- *
- *  SPDX-License-Identifier: EPL-2.0
- *
- *  Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.internal.tools.pomversion;
-
-import java.util.HashSet;
-
-import org.eclipse.core.filebuffers.FileBuffers;
-import org.eclipse.core.filebuffers.ITextFileBuffer;
-import org.eclipse.core.filebuffers.ITextFileBufferManager;
-import org.eclipse.core.filebuffers.LocationKind;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.releng.tools.RelEngPlugin;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.views.markers.WorkbenchMarkerResolution;
-
-
-/**
- * Marker resolution for when version in pom.xml does not match the plug-in version.
- * Replaces the version string to one based on the version in the manifest.  The corrected
- * version must have been stored on the marker at creation time.
- */
-public class PomVersionMarkerResolution extends WorkbenchMarkerResolution {
-
-	private IMarker marker;
-	private String correctedVersion;
-
-	/**
-	 * New marker resolution that will offer to replace the current POM version with corrected version
-	 * @param correctedVersion new version to insert
-	 * @deprecated Use PomVersionMarkerResolution(IMarker marker,String correctedVersion) instead
-	 */
-	@Deprecated
-	public PomVersionMarkerResolution(String correctedVersion) {
-		this.correctedVersion = correctedVersion;
-	}
-
-	public PomVersionMarkerResolution(IMarker marker,String correctedVersion) {
-		this.marker = marker;
-		this.correctedVersion = correctedVersion;
-	}
-
-	@Override
-	public String getLabel() {
-		return NLS.bind(Messages.PomVersionMarkerResolution_label, correctedVersion);
-	}
-
-	@Override
-	public void run(IMarker marker) {
-		try {
-			correctedVersion = (String) marker.getAttribute(IPomVersionConstants.POM_CORRECT_VERSION);
-		} catch (CoreException e1) {
-			RelEngPlugin.log(e1);
-		}
-		if (correctedVersion == null || correctedVersion.trim().length() == 0) {
-			return;
-		}
-		int charstart = marker.getAttribute(IMarker.CHAR_START, -1);
-		int charend = marker.getAttribute(IMarker.CHAR_END, -1);
-		if(charstart < 0 || charend < 0) {
-			return;
-		}
-		IResource resource = marker.getResource();
-		if (resource.exists() && resource.getType() == IResource.FILE) {
-			IFile file = (IFile) resource;
-			if (!file.isReadOnly()) {
-				NullProgressMonitor monitor = new NullProgressMonitor();
-				ITextFileBufferManager fbm = FileBuffers.getTextFileBufferManager();
-				IPath location = file.getFullPath();
-				ITextFileBuffer buff = null;
-				try {
-					fbm.connect(location, LocationKind.IFILE, monitor);
-					buff = fbm.getTextFileBuffer(location, LocationKind.IFILE);
-					if(buff != null) {
-						IDocument doc = buff.getDocument();
-						try {
-							if(charstart > -1 && charend > -1) {
-								doc.replace(charstart, charend-charstart, correctedVersion);
-								buff.commit(monitor, true);
-							}
-						} catch(BadLocationException ble) {
-							RelEngPlugin.log(ble);
-						}
-					}
-				} catch (CoreException e) {
-					RelEngPlugin.log(e);
-				} finally {
-					try {
-						if (buff != null)
-							fbm.disconnect(location, LocationKind.IFILE, monitor);
-					} catch (CoreException e) {
-						RelEngPlugin.log(e);
-					}
-				}
-			}
-		}
-	}
-
-	@Override
-	public String getDescription() {
-		return null;
-	}
-
-	@Override
-	public Image getImage() {
-		return null ;
-	}
-
-	@Override
-	public IMarker[] findOtherMarkers(IMarker[] markers) {
-		HashSet<IMarker> mset = new HashSet<>(markers.length);
-		for (IMarker iMarker : markers) {
-			if (iMarker.equals(marker))
-				continue;
-			try {
-				if (iMarker.getType().equals(IPomVersionConstants.PROBLEM_MARKER_TYPE))
-					mset.add(iMarker);
-			} catch (CoreException e) {
-
-			}
-		}
-		int size = mset.size();
-		return mset.toArray(new IMarker[size]);
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/PomVersionResolutionGenerator.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/PomVersionResolutionGenerator.java
deleted file mode 100644
index 279e309..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/PomVersionResolutionGenerator.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2013, 2017 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.internal.tools.pomversion;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.releng.tools.RelEngPlugin;
-import org.eclipse.ui.IMarkerResolution;
-import org.eclipse.ui.IMarkerResolutionGenerator;
-
-
-public class PomVersionResolutionGenerator implements IMarkerResolutionGenerator {
-
-	private static IMarkerResolution[] NO_RESOLUTIONS = new IMarkerResolution[0];
-
-	@Override
-	public IMarkerResolution[] getResolutions(IMarker marker) {
-		int charstart = marker.getAttribute(IMarker.CHAR_START, -1);
-		int charend = marker.getAttribute(IMarker.CHAR_END, -1);
-		if(charstart > -1 && charend > -1) {
-			try {
-				if (marker.getType().equals(IPomVersionConstants.PROBLEM_MARKER_TYPE)){
-					String correctedVersion = (String) marker.getAttribute(IPomVersionConstants.POM_CORRECT_VERSION);
-					if (correctedVersion != null && correctedVersion.length() > 0){
-						return new IMarkerResolution[] {new PomVersionMarkerResolution(marker,correctedVersion)};
-					}
-				}
-			} catch (CoreException e){
-				RelEngPlugin.log(e);
-			}
-		}
-		return NO_RESOLUTIONS;
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/messages.properties b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/messages.properties
deleted file mode 100644
index edc1bac..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/internal/tools/pomversion/messages.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-###############################################################################
-# Copyright (c) 2013 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-PomVersionErrorReporter_pom_version_error_marker_message=POM artifact version {0} does not match bundle version {1}
-PomVersionErrorReporter_pom_version_error_marker_message_feature=POM artifact version {0} does not match feature version {1}
-PomVersionMarkerResolution_label=Replace version in pom.xml with {0}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/AdvancedCopyrightComment.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/AdvancedCopyrightComment.java
deleted file mode 100644
index 9ad7bbb..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/AdvancedCopyrightComment.java
+++ /dev/null
@@ -1,408 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2016 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     Martin Oberhuber (Wind River) - [276255] fix insertion of extra space chars
- *     Leo Ufimtsev lufimtse@redhat.com - [369991] Major re-write to handle multiple years. + added test cases.
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import java.io.PrintWriter;
-import java.io.StringWriter;
-import java.util.ArrayList;
-import java.util.StringTokenizer;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.TextUtilities;
-import org.eclipse.releng.tools.preferences.RelEngCopyrightConstants;
-
-/**
- * <h2>Handle incomming 'raw' comments and convert them <br>
- * into a comment format with access to creation/revision year. <br>
- * When retrieving the comment, update the revision year or append one if it's not there.</h2>
- *
- * <p>
- * Tested in {@link org.eclipse.releng.tests.AdvancedCopyrightCommentTestsJunit4}<br>
- * Please verify that tests run after modifications.
- * </p>
- *
- */
-public class AdvancedCopyrightComment extends CopyrightComment {
-
-	/** A regex mattern to match years in the range {@code 19** to 23** } */
-	private static final String YEAR_REGEX = "(19|20|21|22|23)\\d{2}"; //$NON-NLS-1$
-
-	private static final String DATE_VAR = "${date}"; //$NON-NLS-1$
-	private static final String NEW_LINE = "\n"; //$NON-NLS-1$
-
-	/** Everything before the line with the year(s) on it. */
-	private String preYearLinesString = null;
-
-	/** The line with the year(s) on it. */
-	private String yearLineString = null; // this is updated when we return a comment.
-
-	/** Everything after the line with the year(s) on it. */
-	private String postYearLineString = null;
-
-	/** Number of year units matching {@link #YEAR_REGEX YEAR_REGEX} in the comment. e.g '2000, 2011-2014' has 3 */
-	private int yearsCount;
-
-	/**
-	 * Return the body of this copyright comment or null if it cannot be built.
-	 */
-	@Override
-	public String getCopyrightComment() {
-
-		if ((preYearLinesString != null || postYearLineString != null)) {
-			StringBuilder copyrightComment = new StringBuilder();
-
-			// Pre-append everything before the years
-			if (preYearLinesString != null) {
-				copyrightComment.append(preYearLinesString);
-			}
-
-			// Check if the comment has a revised year. Fix the years on the line if so.
-			if (hasRevisionYear() && (getRevisionYear() != getCreationYear())) {
-
-				String fixedYearLine;
-				if (yearsCount == 1) {
-					// Insert a 2nd year '2000' -> '2000-2010'.
-					fixedYearLine = insertRevisedYear(yearLineString, getRevisionYear());
-				} else {
-					// update the last found year on line: '2000 ... 2005' -> '2000 ... 2015'
-					fixedYearLine = updateLastYear(yearLineString, getRevisionYear());
-					if (fixedYearLine == null) {
-						return null; //failed to update last year.
-					}
-				}
-
-				copyrightComment.append(fixedYearLine);
-			} else {
-				// Otherwise put back the original year line.
-				copyrightComment.append(yearLineString);
-			}
-
-			// Post append everything after the year line
-			copyrightComment.append(postYearLineString);
-
-			return copyrightComment.toString();
-		}
-
-		String linePrefix = getCommentPrefix();
-		if (linePrefix == null)
-			return null;
-
-		StringWriter out = new StringWriter();
-
-		try (PrintWriter writer = new PrintWriter(out)) {
-			writeCommentStart(writer);
-			writeLegal(writer, linePrefix);
-			writeCommentEnd(writer);
-			return out.toString();
-		}
-	}
-
-	/**
-	 * <h1>Parse a raw comment.</h1>
-	 * <p>
-	 * Create an instance the same as the argument comment but with the revision year <br>
-	 * updated if needed. Return the default comment if the argument comment is null <br>
-	 * or an empty string.
-	 * </p>
-	 *
-	 * @param comment
-	 *            the original comment from the file.
-	 * @param commentStyle
-	 *            the comment style. {@link CopyrightComment}
-	 * @return {@link AdvancedCopyrightComment} an copyright comment with the year updated.
-	 *
-	 */
-	public static AdvancedCopyrightComment parse(BlockComment commentBock, int commentStyle) {
-		// If the given comment is empty, return the default comment.
-		if (commentBock == null) {
-			return defaultComment(commentStyle);
-		}
-
-		String comment = commentBock.getContents();
-
-		// identify which line delimiter is used. (for writing back to file )
-		String fileLineDelimiter = TextUtilities.determineLineDelimiter(comment, "\n"); //$NON-NLS-1$
-
-		// Split Comment into Seperate lines for easier proccessing:
-		String commentLines[] = comment.split("\\r?\\n"); //$NON-NLS-1$
-
-		// lines before the line with the year comment on it.
-		StringBuilder preYearLines = new StringBuilder();
-
-		// line with the year(s) on it. 'copyright 2002, 2010-2011 ... etc..
-		String yearLine = null;
-
-		// Lines after the line with the year comment on it.
-		StringBuilder postYearLines = new StringBuilder();
-
-		// Break down the comment into the three sections.
-		boolean yearFound = false;
-		String line;
-		for (int i = 0; i < commentLines.length; i++) {
-
-			line = commentLines[i]; // for clarity.
-
-			if (yearFound) {
-				// We have already found the year line and are just appending the last lines.
-
-				// Conditionally append a newline delimiter.
-				if (i != (commentLines.length - 1)) {
-					// normally, append a new line.
-					postYearLines.append(line + fileLineDelimiter);
-				} else {
-					// for the last line, only append if the original comment had a newline delimiter.
-					Character lastchar = comment.charAt(comment.length() - 1);
-					if (Character.isWhitespace(lastchar)) {
-						postYearLines.append(line + lastchar);
-					} else {
-						postYearLines.append(line);
-					}
-				}
-
-			} else if (line.matches(".*" + YEAR_REGEX + ".*")) { //$NON-NLS-1$ //$NON-NLS-2$
-				// We found the line with the copy-right years on it.
-				yearFound = true;
-				yearLine = line + fileLineDelimiter;
-			} else {
-				// We are parsting the top part of the comment and have not reached the year-line yet.
-				preYearLines.append(line + fileLineDelimiter);
-			}
-		}
-
-		// The comment didn't contain any years that we can update.
-		if (!yearFound) {
-			return null;
-		}
-
-		// Determine first year.
-		int createdYear = getFirstYear(yearLine);
-		if (createdYear == 0) {
-			return null; //Failed to read a year.
-		}
-
-
-		int yearsOnLine = countYearsOnLine(yearLine);
-		// Determine the last year
-		int revisedYear;
-		if (yearsOnLine == 1) {
-			revisedYear = -1;
-		} else {
-			revisedYear = getLastYear(yearLine);
-		}
-
-		return new AdvancedCopyrightComment(commentStyle, createdYear, revisedYear, yearsOnLine,
-				preYearLines.toString(), yearLine, postYearLines.toString());
-	}
-
-	/**
-	 * <p> Construct a new default comment for the file.</p>
-	 *
-	 * @param commentStyle            As defined in: CopyrightComment
-	 * @return                        a newly created comment.
-	 */
-	public static AdvancedCopyrightComment defaultComment(int commentStyle) {
-		return new AdvancedCopyrightComment(commentStyle, -1, -1, 1, null, null, null);
-	}
-
-
-	private AdvancedCopyrightComment(int commentStyle, int creationYear, int revisionYear,
-			int yearsCount, String preYearComment, String middleYearsComment, String postYearComment) {
-		super(commentStyle, creationYear == -1 ? getPreferenceStore().getInt(
-				RelEngCopyrightConstants.CREATION_YEAR_KEY) : creationYear, revisionYear);
-		this.preYearLinesString = preYearComment;
-		this.yearLineString = middleYearsComment;
-		this.postYearLineString = postYearComment;
-		this.yearsCount = yearsCount;
-	}
-
-	/**
-	 * Get the copyright tool preference store.
-	 *
-	 * @return preference store used the releng plugin.
-	 */
-	private static IPreferenceStore getPreferenceStore() {
-		return RelEngPlugin.getDefault().getPreferenceStore();
-	}
-
-	/**
-	 * Get the copyright statement in form of an array of Strings where
-	 * each item is a line of the copyright statement.
-	 *
-	 * @return String[]  array of lines making up the comment. Containing $date template.
-	 */
-	private static String[] getLegalLines() {
-		StringTokenizer st = new StringTokenizer(getPreferenceStore().getString(
-				RelEngCopyrightConstants.COPYRIGHT_TEMPLATE_KEY), NEW_LINE, true);
-		ArrayList<String> lines = new ArrayList<>();
-		String previous = NEW_LINE;
-		while (st.hasMoreTokens()) {
-			String current = st.nextToken();
-			// add empty lines to array as well
-			if (NEW_LINE.equals(previous)) {
-				lines.add(current);
-			}
-			previous = current;
-		}
-		String[] stringLines = new String[lines.size()];
-		stringLines = lines.toArray(stringLines);
-		return stringLines;
-	}
-
-	/**
-	 * Write out the copyright statement, line by line, adding in the created/revision
-	 * year as well as comment line prefixes.
-	 *
-	 * @param writer
-	 * @param linePrefix
-	 */
-	private void writeLegal(PrintWriter writer, String linePrefix) {
-		String[] legalLines = getLegalLines();
-		for (String currentLine : legalLines) {
-			int offset = currentLine.indexOf(DATE_VAR);
-			// if this is the line, containing the ${date}, add in the year
-			if (offset > -1) {
-				writer.print(linePrefix + ' ' + currentLine.substring(0, offset)
-						+ getCreationYear());
-				if (hasRevisionYear() && getRevisionYear() != getCreationYear()) {
-					writer.print(", " + getRevisionYear()); //$NON-NLS-1$
-				}
-				println(writer,
-						currentLine.substring(offset + DATE_VAR.length(), currentLine.length()));
-			} else {
-				// just write out the line
-				if (NEW_LINE.equals(currentLine)) {
-					// handle empty lines
-					println(writer, linePrefix);
-				} else {
-					println(writer, linePrefix + ' ' + currentLine);
-				}
-			}
-		}
-	}
-
-	/**
-	 * Replace the last year in the provided string that matches {@link #YEAR_REGEX}.
-	 *
-	 * @param line
-	 *            the line that contains the year that you want to update.
-	 * @param newYear
-	 *            the new year that you want to update to.
-	 * @return    the string with the last year updated or null if it fails to find a year.
-	 */
-	private static String updateLastYear(String line, int newYear) {
-
-		Matcher matcher = Pattern.compile(YEAR_REGEX).matcher(line);
-
-		// Find position of last year in the string.
-		int lastStart = -1;
-		while (matcher.find()) {
-			lastStart = matcher.start();
-		}
-
-		// Failed to find a year. Return the original line.
-		if (lastStart == -1) {
-			return null;
-		}
-
-		// Insert new year
-		String before = line.substring(0, lastStart);
-		String after = line.substring(lastStart + 4);
-		String updatedLine = before + Integer.toString(newYear) + after;
-
-		return updatedLine;
-	}
-
-	/**
-	 * In the situation that a line only has a single year 'Copyright 2000 IBM ... '. <br>
-	 * append the revision year to make it like: 'Copyright 2000-2010 IBM ... '. <br>
-	 *
-	 * <p>
-	 * This should <b>only</b> be used for lines that have a single year.
-	 * </p>
-	 *
-	 * @param line
-	 * @param year
-	 * @return
-	 */
-	private static String insertRevisedYear(String line, int year) {
-		Matcher matcher = Pattern.compile(YEAR_REGEX).matcher(line);
-
-		if (!matcher.find())
-			return line; // no year found. Return original.
-
-		// Insert new year.
-		String before = line.substring(0, matcher.end());
-		String after = line.substring(matcher.end());
-		String updatedLine = before + ", " + Integer.toString(year) + after; //$NON-NLS-1$
-
-		return updatedLine;
-	}
-
-	/**
-	 * Given a line with one or multiple years on it, count how many years occur on it.
-	 *
-	 * @param line
-	 * @return
-	 */
-	private static int countYearsOnLine(String line) {
-		Matcher yearMatcher = Pattern.compile(YEAR_REGEX).matcher(line);
-		int count = 0;
-		while (yearMatcher.find()) {
-			count++;
-		}
-		return count;
-	}
-
-	/**
-	 * <h1>Get first year in line. </h1>
-	 * <p> For example given a line like '2000, 2012, 2011, IMB..' it would return 2000. <br>
-	 *
-	 * Pre-condition: The line must contain a valid year in the range YEAR_REGEX
-	 *
-	 * @see #YEAR_REGEX
-	 * @param line       Line containing a year.
-	 * @return           the first found year. 0 if none found. (caller should check).
-	 */
-	private static int getFirstYear(String line) {
-		Matcher yearMatcher = Pattern.compile(YEAR_REGEX).matcher(line);
-		if (yearMatcher.find()) {
-			return Integer.parseInt(yearMatcher.group()); // exception never thrown since match only matches integer.
-		}
-		return 0; //No year was found on this line.
-	}
-
-	/**
-	 * <h2>Get the last year in a line. '2000, 2012, 2011, IMB..'</h2> Pre-condition: The line must contain a valid year
-	 * in the range YEAR_REGEX
-	 *
-	 * @see #YEAR_REGEX
-	 * @param line
-	 * @return e.g 2011
-	 */
-	private static int getLastYear(String line) {
-		Matcher yearMatcher = Pattern.compile(YEAR_REGEX).matcher(line);
-
-		int lastYear = -1;
-		// loop till the last occurance.
-		while (yearMatcher.find()) {
-			lastYear = Integer.parseInt(yearMatcher.group()); // exception never thrown since match only matches
-															  // integer.
-		}
-		return lastYear;
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/AdvancedFixCopyrightAction.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/AdvancedFixCopyrightAction.java
deleted file mode 100644
index 5e6fdf8..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/AdvancedFixCopyrightAction.java
+++ /dev/null
@@ -1,578 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2020 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     IBH SYSTEMS GmbH - allow removing the consoles
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Calendar;
-import java.util.GregorianCalendar;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceVisitor;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.resources.WorkspaceJob;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.SubMonitor;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.releng.tools.preferences.RelEngCopyrightConstants;
-import org.eclipse.team.core.RepositoryProvider;
-import org.eclipse.team.core.RepositoryProviderType;
-import org.eclipse.ui.IActionDelegate;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkingSet;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IConsole;
-import org.eclipse.ui.console.IConsoleConstants;
-import org.eclipse.ui.console.MessageConsole;
-import org.eclipse.ui.console.MessageConsoleStream;
-
-public class AdvancedFixCopyrightAction implements IObjectActionDelegate {
-
-	final class FixConsole extends MessageConsole {
-		private FixConsole() {
-			super(Messages.getString("AdvancedFixCopyrightAction.0"), null); //$NON-NLS-1$
-		}
-	}
-
-
-	public class FixCopyrightVisitor implements IResourceVisitor {
-		private final IProgressMonitor monitor;
-		private final RepositoryProviderCopyrightAdapter adapter;
-
-		public FixCopyrightVisitor(RepositoryProviderCopyrightAdapter adapter, IProgressMonitor monitor) {
-			this.adapter = adapter;
-			this.monitor = monitor;
-		}
-
-		@Override
-		public boolean visit(IResource resource) throws CoreException {
-			if (!monitor.isCanceled()) {
-				if (resource.getType() == IResource.FILE) {
-					monitor.subTask(((IFile) resource).getFullPath().toOSString());
-					processFile((IFile) resource, adapter, monitor);
-					monitor.worked(1);
-				}
-			}
-			return true;
-		}
-	}
-
-	/**
-	 * Visit each file to count total number of files that we will traverse.
-	 * This is used to show the progress correctly.
-	 */
-	private class FileCountVisitor implements IResourceVisitor {
-		private int fileCount;
-
-		public FileCountVisitor() {
-			this.fileCount = 0;
-		}
-
-		@Override
-		public boolean visit(IResource resource) throws CoreException {
-			if (resource.getType() == IResource.FILE) {
-				fileCount += 1;
-			}
-			return true;
-		}
-
-		public int getfileCount() {
-			return this.fileCount;
-		}
-	}
-
-	private String newLine = System.lineSeparator();
-	private Map<String, List<String>> log = new HashMap<>();
-	private MessageConsole console;
-
-	// The current selection
-	protected IStructuredSelection selection;
-
-	private static final int currentYear = new GregorianCalendar().get(Calendar.YEAR);
-
-	/**
-	 * Returns the selected resources.
-	 *
-	 * @return the selected resources
-	 */
-	protected IResource[] getSelectedResources() {
-		ArrayList<IResource> resources = new ArrayList<>();
-		if (!selection.isEmpty()) {
-
-			Iterator<?> elements = selection.iterator();
-			while (elements.hasNext()) {
-				addResource(elements.next(), resources);
-			}
-		}
-		IResource[] result = new IResource[resources.size()];
-		resources.toArray(result);
-		return result;
-	}
-
-	private void addResource(Object element, ArrayList<IResource> resources) {
-		if (element instanceof IResource) {
-			resources.add((IResource) element);
-		} else if (element instanceof IWorkingSet) {
-			IWorkingSet ws = (IWorkingSet) element;
-			IAdaptable[] elements = ws.getElements();
-			for (int i = 0; i < elements.length; i++)
-				addResource(elements[i], resources);
-		} else if (element instanceof IAdaptable) {
-			IAdaptable a = (IAdaptable) element;
-			addResource(a.getAdapter(IResource.class), resources);
-		}
-	}
-
-	/**
-	 * @see IObjectActionDelegate#setActivePart(IAction, IWorkbenchPart)
-	 */
-	@Override
-	public void setActivePart(IAction action, IWorkbenchPart targetPart) {
-	}
-
-	/**
-	 * @see IActionDelegate#run(IAction)
-	 */
-	@Override
-	public void run(IAction action) {
-		log = new HashMap<>();
-		console = new FixConsole();
-		ConsolePlugin.getDefault().getConsoleManager().addConsoles(new IConsole[] { console });
-		try {
-			PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage()
-					.showView(IConsoleConstants.ID_CONSOLE_VIEW);
-		} catch (PartInitException e) {
-			// Don't fail if we can't show the console
-			RelEngPlugin.log(e);
-		}
-		final MessageConsoleStream stream = console.newMessageStream();
-
-		WorkspaceJob wJob = new WorkspaceJob(Messages.getString("AdvancedFixCopyrightAction.1")) { //$NON-NLS-1$
-			@Override
-			public IStatus runInWorkspace(IProgressMonitor monitor) throws CoreException {
-				try {
-					long start = System.currentTimeMillis();
-					stream.println(Messages.getString("AdvancedFixCopyrightAction.2")); //$NON-NLS-1$
-					IResource[] results = getSelectedResources();
-					stream.println(NLS.bind(Messages.getString("AdvancedFixCopyrightAction.3"), //$NON-NLS-1$
-							Integer.toString(results.length)));
-
-					int totalFileCount = countFiles(results);
-					SubMonitor subMonitor = SubMonitor.convert(monitor, totalFileCount);
-					subMonitor.beginTask(Messages.getString("AdvancedFixCopyrightAction.4"), totalFileCount); //$NON-NLS-1$
-
-					RepositoryProviderCopyrightAdapter adapter = createCopyrightAdapter(results);
-					if (adapter == null) {
-						if (!RelEngPlugin.getDefault().getPreferenceStore()
-								.getBoolean(RelEngCopyrightConstants.USE_DEFAULT_REVISION_YEAR_KEY)) {
-							throw new CoreException(new Status(IStatus.ERROR, RelEngPlugin.ID, 0,
-									Messages.getString("AdvancedFixCopyrightAction.5"), null)); //$NON-NLS-1$
-						}
-					} else {
-						adapter.initialize(subMonitor);
-					}
-					List<CoreException> exceptions = new ArrayList<>();
-					for (IResource resource : results) {
-						stream.println(
-								NLS.bind(Messages.getString("AdvancedFixCopyrightAction.6"), resource.getName())); //$NON-NLS-1$
-						try {
-							resource.accept(new FixCopyrightVisitor(adapter, subMonitor));
-						} catch (CoreException e1) {
-							exceptions.add(e1);
-						}
-					}
-
-					writeLogs();
-					displayLogs(stream);
-					stream.println(Messages.getString("AdvancedFixCopyrightAction.7")); //$NON-NLS-1$
-					long end = System.currentTimeMillis();
-					stream.println(
-							NLS.bind(Messages.getString("AdvancedFixCopyrightAction.8"), Long.toString(end - start))); //$NON-NLS-1$
-					if (!exceptions.isEmpty()) {
-						stream.println(Messages.getString("AdvancedFixCopyrightAction.9")); //$NON-NLS-1$
-						if (exceptions.size() == 1) {
-							throw exceptions.get(0);
-						} else {
-							List<Status> status = new ArrayList<>();
-							for (CoreException ce : exceptions) {
-								status.add(new Status(ce.getStatus().getSeverity(), ce.getStatus().getPlugin(),
-										ce.getStatus().getCode(), ce.getStatus().getMessage(), ce));
-							}
-							throw new CoreException(
-									new MultiStatus(RelEngPlugin.ID, 0, status.toArray(new IStatus[status.size()]),
-											Messages.getString("AdvancedFixCopyrightAction.10"), //$NON-NLS-1$
-											null));
-						}
-					}
-				} finally {
-					monitor.done();
-				}
-				return Status.OK_STATUS;
-			}
-
-			private int countFiles(IResource[] results) {
-				int sum = 0;
-				for (IResource file : results) {
-					FileCountVisitor fileCountVisitor = new FileCountVisitor();
-					try {
-						file.accept(fileCountVisitor);
-					} catch (CoreException e) {
-						// This exception can be ignored.
-						// Here we are only counting files.
-						// It will be handled when files are actually
-						// proccessed.
-					}
-					sum += fileCountVisitor.getfileCount();
-				}
-				return sum;
-			}
-		};
-
-		wJob.setRule(ResourcesPlugin.getWorkspace().getRoot());
-		wJob.setUser(true);
-		wJob.schedule();
-	}
-
-	protected RepositoryProviderCopyrightAdapter createCopyrightAdapter(IResource[] results) throws CoreException {
-		RepositoryProviderType providerType = null;
-		for (IResource resource : results) {
-			RepositoryProvider p = RepositoryProvider.getProvider(resource.getProject());
-			if (p != null) {
-				if (providerType == null) {
-					providerType = RepositoryProviderType.getProviderType(p.getID());
-				} else if (!providerType.getID().equals(p.getID())) {
-					throw new CoreException(new Status(IStatus.ERROR, RelEngPlugin.ID, 0,
-							Messages.getString("AdvancedFixCopyrightAction.11"), null)); //$NON-NLS-1$
-				}
-			}
-		}
-		if (providerType == null) {
-			return null;
-		}
-		IRepositoryProviderCopyrightAdapterFactory factory = providerType
-				.getAdapter(IRepositoryProviderCopyrightAdapterFactory.class);
-		if (factory == null) {
-			factory = (IRepositoryProviderCopyrightAdapterFactory) Platform.getAdapterManager()
-					.loadAdapter(providerType, IRepositoryProviderCopyrightAdapterFactory.class.getName());
-			if (factory == null) {
-				throw new CoreException(new Status(IStatus.ERROR, RelEngPlugin.ID, 0,
-						NLS.bind(Messages.getString("AdvancedFixCopyrightAction.12"), providerType.getID()), null)); //$NON-NLS-1$
-			}
-		}
-		return factory.createAdapater(results);
-	}
-
-	/**
-	 *
-	 */
-	private void writeLogs() {
-
-		FileOutputStream aStream;
-		try {
-			File aFile = new File(Platform.getLocation().toFile(), "copyrightLog.txt"); //$NON-NLS-1$
-			aStream = new FileOutputStream(aFile);
-			Set<Map.Entry<String, List<String>>> aSet = log.entrySet();
-			Iterator<Map.Entry<String, List<String>>> errorIterator = aSet.iterator();
-			while (errorIterator.hasNext()) {
-				Map.Entry<String, List<String>> anEntry = errorIterator.next();
-				String errorDescription = anEntry.getKey();
-				aStream.write(errorDescription.getBytes());
-				aStream.write(newLine.getBytes());
-				List<String> fileList = anEntry.getValue();
-				Iterator<String> listIterator = fileList.iterator();
-				while (listIterator.hasNext()) {
-					String fileName = listIterator.next();
-					aStream.write("     ".getBytes()); //$NON-NLS-1$
-					aStream.write(fileName.getBytes());
-					aStream.write(newLine.getBytes());
-				}
-			}
-			aStream.close();
-		} catch (FileNotFoundException e) {
-			e.printStackTrace();
-		} catch (IOException e) {
-			e.printStackTrace();
-		}
-	}
-
-	private void displayLogs(MessageConsoleStream stream) {
-
-		Set<Map.Entry<String, List<String>>> aSet = log.entrySet();
-		Iterator<Map.Entry<String, List<String>>> errorIterator = aSet.iterator();
-		while (errorIterator.hasNext()) {
-			Map.Entry<String, List<String>> anEntry = errorIterator.next();
-			String errorDescription = anEntry.getKey();
-			stream.println(errorDescription);
-			List<String> fileList = anEntry.getValue();
-			Iterator<String> listIterator = fileList.iterator();
-			while (listIterator.hasNext()) {
-				String fileName = listIterator.next();
-				stream.println("     " + fileName); //$NON-NLS-1$
-			}
-		}
-	}
-
-	/**
-	 * Handle an induvidual file at a time
-	 *
-	 * <p>
-	 * Functions:
-	 * <ul>
-	 * -
-	 * <li>get user defined default date</li> -
-	 * <li>identify if multiple comments inserted.</li>
-	 * <li>update existing comment or insert a new one</li>
-	 * </ul>
-	 *
-	 * @param file
-	 *            - file to be proccessed (.java, .bat, .xml etc...)
-	 * @param adapter
-	 * @param monitor
-	 */
-	private void processFile(IFile file, RepositoryProviderCopyrightAdapter adapter, IProgressMonitor monitor) {
-
-		// Missign file Extension
-		if (!checkFileExtension(file)) {
-			return;
-		}
-
-		// Create an instance of the appropriate Source container.
-		// (xml/java/bash etc..)
-		SourceFile aSourceFile = SourceFile.createFor(file);
-		if (!checkSourceCreatedOk(aSourceFile, file)) {
-			return;
-		}
-
-		// Aquire user settings
-		IPreferenceStore prefStore = RelEngPlugin.getDefault().getPreferenceStore();
-
-		// Check if user wants to skip over this file
-		if (!checkUserFileIgnoreSettings(prefStore, aSourceFile)) {
-			return;
-		}
-
-		// Skip over source files that have multiple copy-right notes
-		if (!checkMultipleCopyright(file, aSourceFile)) {
-			return;
-		}
-
-		// Extract 'current' 'raw' comment from the document.
-		BlockComment copyrightComment = aSourceFile.getFirstCopyrightComment();
-
-		CopyrightComment ibmCopyright = null;
-
-		// if replacing all comments, don't even parse, just use default
-		// copyright comment
-		if (prefStore.getBoolean(RelEngCopyrightConstants.REPLACE_ALL_EXISTING_KEY)) {
-
-			// Aquire user default comments from settings.
-			ibmCopyright = AdvancedCopyrightComment.defaultComment(aSourceFile.getFileType());
-		} else {
-
-			// Parse the raw comment and update the last revision year.
-			// (inserting a revision year if neccessary).
-			ibmCopyright = AdvancedCopyrightComment.parse(copyrightComment, aSourceFile.getFileType());
-
-			// Check that the newly created comment was constructed correctly.
-			if (ibmCopyright == null) {
-
-				// Check against a standard IBM copyright header.
-				// Let's see if the file is EPL
-				ibmCopyright = IBMCopyrightComment.parse(copyrightComment, aSourceFile.getFileType());
-				if (ibmCopyright != null) {
-					// Could not proccess file at all.
-					warn(file, copyrightComment, Messages.getString("AdvancedFixCopyrightAction.15")); //$NON-NLS-1$
-				}
-			}
-		}
-
-		// Could not determine the 'new' 'copyright' header. Do not procces
-		// file.
-		if (ibmCopyright == null) {
-			warn(file, copyrightComment, Messages.getString("AdvancedFixCopyrightAction.16")); //$NON-NLS-1$
-			return;
-		}
-
-		ibmCopyright.setLineDelimiter(aSourceFile.getLineDelimiter());
-
-		// year last revised as listed in the copyright header.
-		int revised = ibmCopyright.getRevisionYear();
-
-		// lasdMod = last touched by user. (e.g as defined 'default' in
-		// options).
-		int lastMod = revised;
-
-		// Read user defined year from options.
-		if (prefStore.getBoolean(RelEngCopyrightConstants.USE_DEFAULT_REVISION_YEAR_KEY) || adapter == null)
-			lastMod = prefStore.getInt(RelEngCopyrightConstants.REVISION_YEAR_KEY);
-		else {
-			// figure out if the comment should be updated by comparing the date
-			// range
-			// in the comment to the last modification time provided by adapter
-			if (lastMod < currentYear) {
-				try {
-					lastMod = adapter.getLastModifiedYear(file, monitor);
-				} catch (CoreException e) {
-					// Let's log the exception and continue
-					RelEngPlugin.log(IStatus.ERROR,
-							NLS.bind(Messages.getString("AdvancedFixCopyrightAction.17"), file.getFullPath()), e); //$NON-NLS-1$
-				}
-				if (lastMod > currentYear) {
-					// Don't allow future years to be used in the copyright
-					lastMod = currentYear;
-				}
-				if (lastMod == 0) {
-					warn(file, copyrightComment, Messages.getString("AdvancedFixCopyrightAction.18")); //$NON-NLS-1$
-					return;
-				}
-				// use default revision year
-				if (lastMod == -1) {
-					lastMod = prefStore.getInt(RelEngCopyrightConstants.REVISION_YEAR_KEY);
-				}
-				if (lastMod < revised) {
-					// Don't let the copyright date go backwards
-					lastMod = revised;
-				}
-			}
-		}
-
-		// only exit if existing copyright comment already contains the year
-		// of last modification and not overwriting all comments
-		if (lastMod <= revised && (copyrightComment != null)
-				&& (!prefStore.getBoolean(RelEngCopyrightConstants.REPLACE_ALL_EXISTING_KEY)))
-			return;
-
-		// either replace old copyright or put the new one at the top of the
-		// file
-		ibmCopyright.setRevisionYear(lastMod);
-		if (copyrightComment == null) // do this on files without comments
-			aSourceFile.insert(ibmCopyright.getCopyrightComment());
-		else { // do this with files that have a copy-right comment already.
-
-			// Verify that the comment is at the top of the file. Warn
-			// otherwise.
-			// [276257] XML file is a special case because it can have an
-			// xml-header and other headers, thus it can start at an arbirary
-			// position.
-			if (!copyrightComment.atTop() && (aSourceFile.getFileType() != CopyrightComment.XML_COMMENT)) {
-				warn(file, copyrightComment, Messages.getString("AdvancedFixCopyrightAction.19")); //$NON-NLS-1$
-			}
-			aSourceFile.replace(copyrightComment, ibmCopyright.getCopyrightComment());
-		}
-	}
-
-	private boolean checkFileExtension(IFile file) {
-		if (file.getFileExtension() == null) {
-			warn(file, null, Messages.getString("AdvancedFixCopyrightAction.13")); //$NON-NLS-1$
-			return false;
-		} else {
-			return true;
-		}
-	}
-
-	private boolean checkSourceCreatedOk(SourceFile sourceFile, IFile file) {
-		if (sourceFile == null) {
-			// Warn if source creation failed.
-			warn(file, null, Messages.getString("AdvancedFixCopyrightAction.20")); //$NON-NLS-1$
-			return false;
-		} else {
-			return true;
-		}
-
-	}
-
-	/**
-	 * Check if user chose to skip files of this kind.
-	 *
-	 * @param prefStore
-	 *            Copyright preference store
-	 * @param aSourceFile
-	 *            Instance of the file to be checked.
-	 * @return false if user wishes to skip over the file.
-	 */
-	private boolean checkUserFileIgnoreSettings(IPreferenceStore prefStore, SourceFile aSourceFile) {
-
-		// -- Skip file if it's a property file and user chose to ignore
-		// property files.
-		if (aSourceFile.getFileType() == CopyrightComment.PROPERTIES_COMMENT
-				&& prefStore.getBoolean(RelEngCopyrightConstants.IGNORE_PROPERTIES_KEY)) {
-			return false;
-		}
-		// -- Skip over xml file if the user selected to skip xml files.
-		if (aSourceFile.getFileType() == CopyrightComment.XML_COMMENT
-				&& prefStore.getBoolean(RelEngCopyrightConstants.IGNORE_XML_KEY)) {
-			return false;
-		}
-		return true;
-	}
-
-	/**
-	 * Check if the file has multiple copyright notices. Skip such files.
-	 *
-	 * @param file
-	 * @param aSourceFile
-	 * @return true if it has a single notice.
-	 */
-	private boolean checkMultipleCopyright(IFile file, SourceFile aSourceFile) {
-		if (aSourceFile.hasMultipleCopyrights()) {
-			warn(file, null, Messages.getString("AdvancedFixCopyrightAction.14")); //$NON-NLS-1$
-			return false;
-		} else {
-			return true;
-		}
-	}
-
-	private void warn(IFile file, BlockComment firstBlockComment, String errorDescription) {
-		List<String> aList = log.get(errorDescription);
-		if (aList == null) {
-			aList = new ArrayList<>();
-			log.put(errorDescription, aList);
-		}
-		aList.add(file.getFullPath().toString());
-	}
-
-	/**
-	 * @see IActionDelegate#selectionChanged(IAction, ISelection)
-	 */
-	@Override
-	public void selectionChanged(IAction action, ISelection selection) {
-		if (selection instanceof IStructuredSelection) {
-			this.selection = (IStructuredSelection) selection;
-		}
-	}
-
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/BatFile.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/BatFile.java
deleted file mode 100644
index 093f937..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/BatFile.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2010 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- * Martin Oberhuber (Wind River) - [235572] detect existing comments in bat files
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import java.util.regex.Pattern;
-
-import org.eclipse.core.resources.IFile;
-
-
-public class BatFile extends SourceFile {
-
-	public BatFile(IFile file) {
-		super(file);
-	}
-
-	//Optional Whitespace, #, optional whitespace, then at least 2 non-word chars repeated till EOL
-	private static Pattern p = Pattern.compile("\\s*@?[rR][eE][mM]\\s+\\W{2,}\\s*"); //$NON-NLS-1$
-
-	@Override
-	public boolean isCommentStart(String aLine) {
-		return p.matcher(aLine).matches();
-	}
-
-	@Override
-	public boolean isCommentEnd(String aLine, String commentStartString) {
-		String s = commentStartString.trim();
-		s = s.substring(s.length()-2);
-		return aLine.trim().endsWith(s);
-	}
-
-	@Override
-	public String getCommentStart() {
-		return "@rem **";  //unused, Pattern matcher above will be used instead //$NON-NLS-1$
-	}
-
-	@Override
-	public String getCommentEnd() {
-		return "**";  //unused, Pattern matcher above will be used instead //$NON-NLS-1$
-	}
-
-	@Override
-	public int getFileType() {
-		return CopyrightComment.BAT_COMMENT;
-	}
-
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/BlockComment.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/BlockComment.java
deleted file mode 100644
index 2939888..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/BlockComment.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2020 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.StringReader;
-import java.util.ArrayList;
-import java.util.List;
-
-
-/**
- * @author droberts
- */
-public class BlockComment {
-
-	int start;
-	int end;
-	private String contents;
-	private static String newLine = System.lineSeparator();
-	private String copyrightHolder;
-	private List<String> nonIBMContributors = new ArrayList<>();
-	private String commentEnd;
-
-
-	/**
-	 * @param commentStart
-	 * @param commentEnd
-	 * @param comment
-	 */
-	public BlockComment(int commentStartLine, int commentEndLine, String comment, String commentStartString, String commentEndString) {
-		start = commentStartLine;
-		end = commentEndLine;
-		commentEnd = commentEndString;
-		contents = comment;
-	}
-
-	public String getContents() {
-		return contents;
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public boolean isCopyright() {
-		return contents.toLowerCase().indexOf("copyright") != -1;
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public boolean atTop() {
-		return start == 0;
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public boolean notIBM() {
-
-		String lowerCaseContents = contents.toLowerCase();
-		if (copyrightHolder == null) {
-			int start = lowerCaseContents.indexOf("copyright");
-			if (start == -1) {
-				return false;
-			}
-
-			int end = lowerCaseContents.indexOf(newLine, start);
-
-			copyrightHolder = contents.substring(start + "copyright".length(), end);
-		}
-
-		String lowercaseCopyrightHolder = copyrightHolder.toLowerCase();
-
-		int result = lowercaseCopyrightHolder.indexOf("ibm");
-		if (result != -1) {
-			return false;
-		}
-
-		result = lowercaseCopyrightHolder.indexOf("international business machine");
-		if (result != -1) {
-			return false;
-		}
-
-		return true;
-	}
-
-	/**
-	 * @return String
-	 */
-	public String getCopyrightHolder() {
-		return copyrightHolder;
-	}
-
-	/**
-	 *
-	 */
-	public List<String> nonIBMContributors() {
-
-		String lowerCaseContents = contents.toLowerCase();
-		int start = lowerCaseContents.indexOf("contributors");
-		if (start == -1) {
-			return nonIBMContributors;
-		}
-
-		start = lowerCaseContents.indexOf(newLine, start);
-		if (start == -1) {
-			return nonIBMContributors;
-		}
-
-		start = start + newLine.length();
-		BufferedReader aReader = new BufferedReader(new StringReader(lowerCaseContents.substring(start)));
-
-		String aLine;
-		try {
-			aLine = aReader.readLine();
-			while (aLine != null) {
-				aLine = aLine.trim();
-				if ((aLine.length() > 0) && (aLine.indexOf(commentEnd) == -1)) {
-					if ((aLine.indexOf("ibm") == -1) && (aLine.indexOf("international business machine") == -1)) {
-						nonIBMContributors.add(aLine);
-					}
-				}
-				aLine = aReader.readLine();
-			}
-		} catch (IOException e) {
-			e.printStackTrace();
-		}
-
-		return nonIBMContributors;
-	}
-
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/CFile.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/CFile.java
deleted file mode 100644
index d694d1d..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/CFile.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2010 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-
-import org.eclipse.core.resources.IFile;
-
-public class CFile extends SourceFile {
-
-	public CFile(IFile file) {
-		super(file);
-	}
-
-	@Override
-	public String getCommentStart() {
-		return "/*"; //$NON-NLS-1$
-	}
-
-	@Override
-	public String getCommentEnd() {
-		return "*/"; //$NON-NLS-1$
-	}
-
-	@Override
-	public int getFileType() {
-		return CopyrightComment.C_COMMENT;
-	}
-
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/CopyrightComment.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/CopyrightComment.java
deleted file mode 100644
index 9dd7395..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/CopyrightComment.java
+++ /dev/null
@@ -1,146 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008, 2012 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- * Martin Oberhuber (Wind River) - [276255] fix insertion of extra space chars
- * Martin Oberhuber (Wind River) - [234872] avoid rem's that echo to the console
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import java.io.PrintWriter;
-import java.util.Calendar;
-
-
-public abstract class CopyrightComment {
-
-	public static final int UNKNOWN_COMMENT = -1;
-	public static final int JAVA_COMMENT = 1;
-	public static final int PROPERTIES_COMMENT = 2;
-	public static final int C_COMMENT = 3;
-	public static final int SHELL_MAKE_COMMENT = 4;
-	public static final int BAT_COMMENT = 5;
-	public static final int JAVASCRIPT_COMMENT = 6;
-	public static final int XML_COMMENT = 7;
-
-	private int commentStyle;
-	private int creationYear = -1;
-	private int revisionYear = -1;
-	private String lineDelimiter;
-
-	protected CopyrightComment(int commentStyle, int creationYear, int revisionYear) {
-		this.commentStyle = commentStyle;
-		this.creationYear = creationYear == -1 ? (Calendar.getInstance().get(Calendar.YEAR)) : creationYear;
-		this.revisionYear = revisionYear;
-	}
-
-	public static String getLinePrefix(int commentStyle) {
-		switch(commentStyle) {
-			case JAVA_COMMENT:
-			case C_COMMENT:
-			case JAVASCRIPT_COMMENT:
-				return " *";  //$NON-NLS-1$
-			case PROPERTIES_COMMENT:
-				return "#"; //$NON-NLS-1$
-			case SHELL_MAKE_COMMENT:
-				return "#"; //$NON-NLS-1$
-			case BAT_COMMENT:
-				return "@rem"; //$NON-NLS-1$
-			case XML_COMMENT:
-				return "   "; //$NON-NLS-1$
-			default:
-				return null;
-		}
-	}
-
-	protected void writeCommentStart(PrintWriter writer) {
-		switch(commentStyle) {
-		case JAVA_COMMENT:
-		case C_COMMENT:
-		case JAVASCRIPT_COMMENT:
-			println(writer, "/*******************************************************************************"); //$NON-NLS-1$
-			break;
-		case PROPERTIES_COMMENT:
-			println(writer, "###############################################################################"); //$NON-NLS-1$
-			break;
-		case SHELL_MAKE_COMMENT:
-			println(writer, "#*******************************************************************************"); //$NON-NLS-1$
-			break;
-		case BAT_COMMENT:
-			println(writer, "@rem ***************************************************************************"); //$NON-NLS-1$
-			break;
-		case XML_COMMENT:
-			println(writer, "<!--"); //$NON-NLS-1$
-			break;
-		}
-	}
-
-	protected void writeCommentEnd(PrintWriter writer) {
-		switch(commentStyle) {
-		case JAVA_COMMENT:
-		case C_COMMENT:
-		case JAVASCRIPT_COMMENT:
-			println(writer, " *******************************************************************************/"); //$NON-NLS-1$
-			break;
-		case PROPERTIES_COMMENT:
-			println(writer, "###############################################################################"); //$NON-NLS-1$
-			break;
-		case SHELL_MAKE_COMMENT:
-			println(writer, "#*******************************************************************************"); //$NON-NLS-1$
-			break;
-		case BAT_COMMENT:
-			println(writer, "@rem ***************************************************************************"); //$NON-NLS-1$
-			break;
-		case XML_COMMENT:
-			println(writer, " -->"); //$NON-NLS-1$
-			break;
-		}
-	}
-
-
-	public int getRevisionYear() {
-		return revisionYear == -1 ? creationYear : revisionYear;
-	}
-
-	public boolean hasRevisionYear() {
-		return revisionYear != -1;
-	}
-
-	public void setRevisionYear(int year) {
-		if (revisionYear != -1 || creationYear != year)
-			revisionYear = year;
-	}
-
-	/**
-	 * @param lineDelimiter
-	 * @since 3.7
-	 */
-	public void setLineDelimiter(String lineDelimiter) {
-		this.lineDelimiter= lineDelimiter;
-	}
-
-	public int getCreationYear() {
-		return creationYear;
-	}
-
-	public String getCommentPrefix() {
-		return getLinePrefix(commentStyle);
-	}
-
-	public abstract String getCopyrightComment();
-
-	/**
-	 * @since 3.7
-	 */
-	protected void println(PrintWriter writer, String line) {
-		writer.print(line);
-		writer.print(lineDelimiter);
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/FixPageParticipant.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/FixPageParticipant.java
deleted file mode 100644
index b127544..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/FixPageParticipant.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2014, 2016 IBH SYSTEMS GmbH.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBH SYSTEMS GmbH - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.console.IConsole;
-import org.eclipse.ui.console.IConsoleConstants;
-import org.eclipse.ui.console.IConsolePageParticipant;
-import org.eclipse.ui.part.IPageBookViewPage;
-
-public class FixPageParticipant implements IConsolePageParticipant {
-
-	@Override
-	public <T> T getAdapter(Class<T> adapter) {
-		return null;
-	}
-
-	@Override
-	public void init(IPageBookViewPage page, IConsole console) {
-		IActionBars actionBars = page.getSite().getActionBars();
-		actionBars.getToolBarManager().appendToGroup(
-				IConsoleConstants.LAUNCH_GROUP,
-				new RemoveConsoleAction(console));
-		actionBars.getToolBarManager().appendToGroup(
-				IConsoleConstants.LAUNCH_GROUP, new RemoveAllConsolesAction());
-	}
-
-	@Override
-	public void dispose() {
-	}
-
-	@Override
-	public void activated() {
-	}
-
-	@Override
-	public void deactivated() {
-	}
-
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/IBMCopyrightComment.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/IBMCopyrightComment.java
deleted file mode 100644
index e3e6fcd..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/IBMCopyrightComment.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010, 2060 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import java.io.PrintWriter;
-import java.io.StringWriter;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.StringTokenizer;
-
-
-public class IBMCopyrightComment extends CopyrightComment {
-
-	private static final int DEFAULT_CREATION_YEAR = 2005;
-
-	private List<String> contributors;
-	private int yearRangeStart, yearRangeEnd;
-	private String originalText;
-
-	private IBMCopyrightComment(int commentStyle, int creationYear, int revisionYear, List<String> contributors, int yearRangeStart, int yearRangeEnd, String originalText) {
-		super(commentStyle, creationYear == -1 ? DEFAULT_CREATION_YEAR : creationYear, revisionYear);
-		this.contributors = contributors;
-		this.yearRangeStart = yearRangeStart;
-		this.yearRangeEnd = yearRangeEnd;
-		this.originalText = originalText;
-	}
-
-	public static IBMCopyrightComment defaultComment(int commentStyle) {
-		return new IBMCopyrightComment(commentStyle, DEFAULT_CREATION_YEAR, -1, null, 0, 0, null);
-	}
-
-	/**
-	 * Create an instance the same as the argument comment but with the revision year
-	 * updated if needed.  Return the default comment if the argument comment is null
-	 * or an empty string.  Return null if the argument comment is not recognized as
-	 * an IBM copyright comment.
-	 */
-	public static IBMCopyrightComment parse(BlockComment comment, int commentStyle) {
-		if (comment == null)
-			return defaultComment(commentStyle);
-
-		String body = comment.getContents();
-
-		final String copyrightLabel = "Copyright (c) "; //$NON-NLS-1$
-		int start = body.indexOf(copyrightLabel);
-		if (start == -1) return null;
-		int contrib = body.indexOf("Contributors:", start); //$NON-NLS-1$
-		int rangeEnd = body.indexOf(" IBM Corp", start); //$NON-NLS-1$ // catch both IBM Corporation and IBM Corp.
-
-		if (rangeEnd == -1 || rangeEnd > contrib) // IBM must be on the copyright line, not the contributor line
-			return null;
-
-		int rangeStart = start + copyrightLabel.length();
-		String yearRange = body.substring(rangeStart, rangeEnd);
-
-		int comma = yearRange.indexOf(","); //$NON-NLS-1$
-		if (comma == -1) {
-			comma = yearRange.indexOf("-"); //$NON-NLS-1$
-		}
-
-		String startStr = comma == -1 ? yearRange : yearRange.substring(0, comma);
-		if (comma != -1 && Character.isWhitespace(yearRange.charAt(comma))) comma++;
-		String endStr = comma == -1 ? null : yearRange.substring(comma + 1);
-
-		int startYear = -1;
-		if (startStr != null) {
-			try {
-				startYear = Integer.parseInt(startStr.trim());
-			} catch(NumberFormatException e) {
-				// do nothing
-			}
-		}
-
-		int endYear = -1;
-		if (endStr != null) {
-			try {
-				endYear = Integer.parseInt(endStr.trim());
-			} catch(NumberFormatException e) {
-				// do nothing
-			}
-		}
-
-		String contribComment = body.substring(contrib);
-		StringTokenizer tokens = new StringTokenizer(contribComment, "\r\n"); //$NON-NLS-1$
-		tokens.nextToken();
-		ArrayList<String> contributors = new ArrayList<>();
-		String linePrefix = getLinePrefix(commentStyle);
-		while(tokens.hasMoreTokens()) {
-			String contributor = tokens.nextToken();
-			if (contributor.indexOf("***********************************") == -1 //$NON-NLS-1$
-			 && contributor.indexOf("###################################") == -1) { //$NON-NLS-1$
-				int c = contributor.indexOf(linePrefix);
-				if (c == -1 && linePrefix.equals(" *")) { //$NON-NLS-1$
-					// special case: old prefix was "*" and new prefix is " *"
-					c = contributor.indexOf("*"); //$NON-NLS-1$
-				}
-				if (c == 0) {
-					// prefix has to be at the beginning of the line
-					contributor = contributor.substring(c + linePrefix.length());
-				}
-				contributors.add(contributor);
-			}
-		}
-
-		return new IBMCopyrightComment(commentStyle, startYear, endYear, contributors, rangeStart, rangeEnd, body);
-	}
-
-	/**
-	 * Return the body of this copyright comment or null if it cannot be built.
-	 */
-	@Override
-	public String getCopyrightComment() {
-		String linePrefix = getCommentPrefix();
-		if (linePrefix == null)
-			return null;
-
-		StringWriter out = new StringWriter();
-
-		try (PrintWriter writer = new PrintWriter(out)) {
-			writeCommentStart(writer);
-			writeLegal(writer, linePrefix);
-			writeContributions(writer, linePrefix);
-			writeCommentEnd(writer);
-			return out.toString();
-		}
-	}
-
-	/**
-	 * Return the body of the original copyright comment with new dates.
-	 */
-	public String getOriginalCopyrightComment() {
-		StringWriter out = new StringWriter();
-
-		try (PrintWriter writer = new PrintWriter(out)) {
-			writer.print(originalText.substring(0, yearRangeStart));
-			writer.print(getCreationYear());
-			if (hasRevisionYear() && getRevisionYear() != getCreationYear())
-				writer.print(", " + getRevisionYear()); //$NON-NLS-1$
-			writer.print(originalText.substring(yearRangeEnd));
-			return out.toString();
-		}
-	}
-
-	private void writeLegal(PrintWriter writer, String linePrefix) {
-		writer.print(linePrefix + " Copyright (c) " + getCreationYear()); //$NON-NLS-1$
-		if (hasRevisionYear() && getRevisionYear() != getCreationYear())
-			writer.print(", " + getRevisionYear()); //$NON-NLS-1$
-		println(writer, " IBM Corporation and others."); //$NON-NLS-1$
-
-		println(writer, linePrefix + " All rights reserved. This program and the accompanying materials"); //$NON-NLS-1$
-		println(writer, linePrefix + " are made available under the terms of the Eclipse Public License v1.0"); //$NON-NLS-1$
-		println(writer, linePrefix + " which accompanies this distribution, and is available at"); //$NON-NLS-1$
-		println(writer, linePrefix + " http://www.eclipse.org/legal/epl-v10.html"); //$NON-NLS-1$
-	}
-
-	private void writeContributions(PrintWriter writer, String linePrefix) {
-		println(writer, linePrefix);
-		println(writer, linePrefix + " Contributors:"); //$NON-NLS-1$
-
-		if (contributors == null || contributors.size() <= 0)
-			println(writer, linePrefix + "     IBM Corporation - initial API and implementation"); //$NON-NLS-1$
-		else {
-			Iterator<String> i = contributors.iterator();
-			while (i.hasNext()) {
-				String contributor = i.next();
-				if (contributor.length() > 0) {
-					if (Character.isWhitespace(contributor.charAt(0))) {
-						println(writer, linePrefix + contributor);
-					} else {
-						println(writer, linePrefix + " " + contributor);  //$NON-NLS-1$
-					}
-				} else {
-					println(writer, linePrefix);
-				}
-			}
-		}
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/IRepositoryProviderCopyrightAdapterFactory.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/IRepositoryProviderCopyrightAdapterFactory.java
deleted file mode 100644
index 4ee67b8..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/IRepositoryProviderCopyrightAdapterFactory.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IAdapterManager;
-
-/**
- * This interface supports the creation of a {@link RepositoryProviderCopyrightAdapter}
- * that can be used by the {@link AdvancedFixCopyrightAction} to determine the last modified year
- * for a set of files. It should be obtained by adapting the repository provider type to an instance
- * of this interface using the {@link IAdapterManager}.
- *
- */
-public interface IRepositoryProviderCopyrightAdapterFactory {
-
-	/**
-	 * Create an adapter for the given set of resources
-	 * @param resources the resources
-	 * @return an adapter
-	 */
-	public RepositoryProviderCopyrightAdapter createAdapater(IResource[] resources);
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/JavaFile.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/JavaFile.java
deleted file mode 100644
index e6b36da..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/JavaFile.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import org.eclipse.core.resources.IFile;
-
-
-public class JavaFile extends SourceFile {
-
-	/**
-	 * @param file
-	 */
-	public JavaFile(IFile file) {
-		super(file);
-	}
-
-	@Override
-	public String getCommentStart() {
-		return "/*"; //$NON-NLS-1$
-	}
-
-	@Override
-	public String getCommentEnd() {
-		return "*/"; //$NON-NLS-1$
-	}
-
-	@Override
-	public int getFileType() {
-		return CopyrightComment.JAVA_COMMENT;
-	}
-
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/JavaScriptFile.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/JavaScriptFile.java
deleted file mode 100644
index cfa00e5..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/JavaScriptFile.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009, 2017 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import org.eclipse.core.resources.IFile;
-
-
-public class JavaScriptFile extends SourceFile {
-
-	public JavaScriptFile(IFile file) {
-		super(file);
-	}
-
-	@Override
-	public String getCommentStart() {
-		return "/*"; //$NON-NLS-1$
-	}
-
-	@Override
-	public String getCommentEnd() {
-		return "*/"; //$NON-NLS-1$
-	}
-	@Override
-	public int getFileType() {
-		return CopyrightComment.JAVASCRIPT_COMMENT;
-	}
-
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/Messages.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/Messages.java
deleted file mode 100644
index a29d493..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/Messages.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class Messages {
-	private static final String BUNDLE_NAME = "org.eclipse.releng.tools.messages";//$NON-NLS-1$
-	private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle
-			.getBundle(BUNDLE_NAME);
-
-	private Messages() {
-	}
-
-	public static String getString(String key) {
-		try {
-			return RESOURCE_BUNDLE.getString(key);
-		} catch (MissingResourceException e) {
-			return '!' + key + '!';
-		}
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/PropertiesFile.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/PropertiesFile.java
deleted file mode 100644
index 50725a0..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/PropertiesFile.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import org.eclipse.core.resources.IFile;
-
-
-public class PropertiesFile extends SourceFile {
-
-	/**
-	 * @param file
-	 */
-	public PropertiesFile(IFile file) {
-		super(file);
-	}
-
-	@Override
-	public String getCommentStart() {
-		return "##"; //$NON-NLS-1$
-	}
-
-	@Override
-	public String getCommentEnd() {
-		return "##"; //$NON-NLS-1$
-	}
-
-	@Override
-	public int getFileType() {
-		return CopyrightComment.PROPERTIES_COMMENT;
-	}
-
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/RelEngPlugin.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/RelEngPlugin.java
deleted file mode 100644
index 8fd8894..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/RelEngPlugin.java
+++ /dev/null
@@ -1,197 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResourceChangeEvent;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.resources.WorkspaceJob;
-import org.eclipse.core.runtime.Assert;
-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.core.runtime.preferences.IEclipsePreferences;
-import org.eclipse.core.runtime.preferences.InstanceScope;
-import org.eclipse.releng.internal.tools.pomversion.IPomVersionConstants;
-import org.eclipse.releng.internal.tools.pomversion.PomVersionErrorReporter;
-import org.eclipse.team.core.RepositoryProvider;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.osgi.framework.BundleContext;
-
-
-/**
- * A Plugin for performing certain important RelEng tasks.
- * <p>
- * Currently this Plugin provides support for:
- *    <li>RelEng Map File Validator
- *    <li>Builder and associated project nature
- *    <li>Fix Copyright action
- */
-public class RelEngPlugin extends AbstractUIPlugin {
-
-	public static final String ID = "org.eclipse.releng.tools"; //$NON-NLS-1$
-	public static final String MAP_PROJECT_NAME = Messages.getString("RelEngPlugin.1"); //$NON-NLS-1$
-	public static final String MAP_FOLDER = Messages.getString("RelEngPlugin.2"); //$NON-NLS-1$
-	private static final String BINARY_REPOSITORY_PROVIDER_CLASS_NAME= "org.eclipse.pde.internal.core.BinaryRepositoryProvider"; //$NON-NLS-1$
-
-	private PomVersionErrorReporter fPomReporter = new PomVersionErrorReporter();
-
-
-	//The shared instance.
-	private static RelEngPlugin plugin;
-	//Resource bundle.
-	private ResourceBundle resourceBundle;
-
-	/**
-	 * The constructor.
-	 */
-	public RelEngPlugin() {
-		plugin = this;
-		try {
-			resourceBundle= ResourceBundle.getBundle(ID + Messages.getString("RelEngPlugin.3")); //$NON-NLS-1$
-		} catch (MissingResourceException x) {
-			resourceBundle = null;
-		}
-	}
-
-	@Override
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-		IEclipsePreferences node = InstanceScope.INSTANCE.getNode(ID);
-		if(node != null) {
-			node.addPreferenceChangeListener(fPomReporter);
-			String severity = getPreferenceStore().getString(IPomVersionConstants.POM_VERSION_ERROR_LEVEL);
-			if(!IPomVersionConstants.VALUE_IGNORE.equals(severity)) {
-				ResourcesPlugin.getWorkspace().addResourceChangeListener(fPomReporter, IResourceChangeEvent.POST_BUILD);
-				int workspaceValidated= node.getInt(IPomVersionConstants.WORKSPACE_VALIDATED, 0);
-				if (workspaceValidated < PomVersionErrorReporter.VERSION) {
-					new WorkspaceJob(Messages.getString("RelEngPlugin.0")) { //$NON-NLS-1$
-						@Override
-						public IStatus runInWorkspace(IProgressMonitor monitor) throws CoreException {
-							fPomReporter.validateWorkspace();
-							return Status.OK_STATUS;
-						}
-					}.schedule();
-				}
-			}
-		}
-	}
-
-	@Override
-	public void stop(BundleContext context) throws Exception {
-		IEclipsePreferences node = InstanceScope.INSTANCE.getNode(ID);
-		if(node != null) {
-			node.removePreferenceChangeListener(fPomReporter);
-			ResourcesPlugin.getWorkspace().removeResourceChangeListener(fPomReporter);
-		}
-		super.stop(context);
-	}
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static RelEngPlugin 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= RelEngPlugin.getDefault().getResourceBundle();
-		try {
-			return bundle.getString(key);
-		} catch (MissingResourceException e) {
-			return key;
-		}
-	}
-
-	/**
-	 * Returns the plugin's resource bundle,
-	 */
-	public ResourceBundle getResourceBundle() {
-		return resourceBundle;
-	}
-	/**
-	 * Convenience method for logging CoreExceptions to the plugin log
-	 */
-	public static void log(CoreException e) {
-		log(e.getStatus().getSeverity(), e.getMessage(), e);
-	}
-
-	/**
-	 * Log the given exception along with the provided message and severity indicator
-	 */
-	public static void log(int severity, String message, Throwable e) {
-		log(new Status(severity, ID, 0, message, e));
-	}
-
-	/**
-	 * Log the given exception as an error.
-	 *
-	 * @param e exception to log
-	 */
-	public static void log(Throwable e){
-		log(new Status(IStatus.ERROR, ID, 0, e.getMessage(), e));
-	}
-
-	/**
-	 * Log the given status. Do not use this method for the IStatus from a CoreException.
-	 * Use<code>log(CoreException)</code> instead so the stack trace is not lost.
-	 */
-	public static void log(IStatus status) {
-		getPlugin().getLog().log(status);
-	}
-	/**
-	 * Returns the singleton plug-in instance.
-	 *
-	 * @return the plugin instance
-	 */
-	public static RelEngPlugin getPlugin() {
-		// If the instance has not been initialized, we will wait.
-		// This can occur if multiple threads try to load the plugin at the same
-		// time (see bug 33825: http://bugs.eclipse.org/bugs/show_bug.cgi?id=33825)
-		while (plugin == null) {
-			try {
-				Thread.sleep(50);
-			} catch (InterruptedException e) {
-				// ignore and keep trying
-			}
-		}
-		return plugin;
-	}
-
-	/**
-	 * Tells whether the given project is shared.
-	 *
-	 * @param project the project
-	 * @return <code>true</code> if the project is shared
-	 * @since 3.7
-	 */
-	static boolean isShared(IProject project) {
-		Assert.isLegal(project != null);
-		if (!RepositoryProvider.isShared(project))
-			return false;
-
-		// Check for PDE's binary projects that also connect a provider to the project
-		RepositoryProvider provider= RepositoryProvider.getProvider(project);
-		return provider != null && !BINARY_REPOSITORY_PROVIDER_CLASS_NAME.equals(provider.getClass().getName());
-	}
-
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/RemoveAllConsolesAction.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/RemoveAllConsolesAction.java
deleted file mode 100644
index f6df86a..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/RemoveAllConsolesAction.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2014, 2019 IBH SYSTEMS GmbH.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBH SYSTEMS GmbH - initial API and implementation
- *     Alexander Fedorov <alexander.fedorov@arsysop.ru> - Bug 548799
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.resource.ResourceLocator;
-import org.eclipse.releng.tools.AdvancedFixCopyrightAction.FixConsole;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IConsole;
-
-public class RemoveAllConsolesAction extends Action {
-	public RemoveAllConsolesAction() {
-		super(Messages.getString("RemoveAllConsolesAction.Text")); //$NON-NLS-1$
-		ResourceLocator.imageDescriptorFromBundle(RelEngPlugin.ID, "icons/full/elcl16/console_remall.png").ifPresent(d-> setImageDescriptor(d)); //$NON-NLS-1$
-	}
-
-	@Override
-	public void run() {
-		List<IConsole> consolesList = new ArrayList<>();
-
-		for (IConsole console : ConsolePlugin.getDefault().getConsoleManager()
-				.getConsoles()) {
-			if (console instanceof FixConsole) {
-				consolesList.add(console);
-			}
-		}
-
-		if (consolesList.isEmpty())
-			return;
-
-		IConsole[] consoles = new IConsole[consolesList.size()];
-		for (int i = 0; i < consoles.length; i++) {
-			consoles[i] = consolesList.get(i);
-		}
-
-		ConsolePlugin.getDefault().getConsoleManager().removeConsoles(consoles);
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/RemoveConsoleAction.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/RemoveConsoleAction.java
deleted file mode 100644
index 0e58cab..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/RemoveConsoleAction.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2014, 2019 IBH SYSTEMS GmbH.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBH SYSTEMS GmbH - initial API and implementation
- *     Alexander Fedorov <alexander.fedorov@arsysop.ru> - Bug 548799
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.resource.ResourceLocator;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IConsole;
-
-public class RemoveConsoleAction extends Action {
-
-	private final IConsole console;
-
-	public RemoveConsoleAction(IConsole console) {
-		super(Messages.getString("RemoveConsoleAction.Text")); //$NON-NLS-1$
-		ResourceLocator.imageDescriptorFromBundle(RelEngPlugin.ID, "icons/full/elcl16/console_rem.png").ifPresent(d-> setImageDescriptor(d)); //$NON-NLS-1$
-		this.console = console;
-	}
-
-	@Override
-	public void run() {
-		ConsolePlugin.getDefault().getConsoleManager().removeConsoles(new IConsole[]{console});
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/RepositoryProviderCopyrightAdapter.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/RepositoryProviderCopyrightAdapter.java
deleted file mode 100644
index 87b1865..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/RepositoryProviderCopyrightAdapter.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-
-/**
- * This class allows the repository provider to plug into the Fix Copyright action
- * in order to provide the last modified year for one or more files.
- */
-public abstract class RepositoryProviderCopyrightAdapter {
-
-	private final IResource[] resources;
-
-	public RepositoryProviderCopyrightAdapter(IResource[] resources) {
-		this.resources = resources;
-	}
-
-	/**
-	 * Initialize the adapter. This call is provided to support the batch fetching
-	 * of the last modifies year for all the files of interest.
-	 * @param monitor a progress monitor
-	 */
-	public abstract void initialize(IProgressMonitor monitor) throws CoreException;
-
-	/**
-	 * Return the last modified year for the given file or -1 if the
-	 * last modified year could not be determined.
-	 * @param file the file
-	 * @param monitor a progress monitor
-	 * @return the last modified year or -1
-	 * @throws CoreException
-	 */
-	public abstract int getLastModifiedYear(IFile file, IProgressMonitor monitor) throws CoreException;
-
-	/**
-	 * Return the resources that are involved in this operation
-	 * @return the resources
-	 */
-	public IResource[] getResources() {
-		return resources;
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/ShellMakeFile.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/ShellMakeFile.java
deleted file mode 100644
index c04af16..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/ShellMakeFile.java
+++ /dev/null
@@ -1,107 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2014 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- * Martin Oberhuber (Wind River) - [235572] detect existing comments in bat files
- * Leo Ufimtsev adding fix of : Gunnar Wagenknecht  (wagenknecht) - [276253] detect '#!/bin/sh' header.
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import java.io.IOException;
-import java.util.regex.Pattern;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-
-
-public class ShellMakeFile extends SourceFile {
-
-	public ShellMakeFile(IFile file) {
-		super(file);
-	}
-
-	//Optional Whitespace, #, optional whitespace, then at least 2 non-word chars repeated till EOL
-	private static Pattern p = Pattern.compile("\\s*#\\s*\\W{2,}\\s*"); //$NON-NLS-1$
-
-	@Override
-	public boolean isCommentStart(String aLine) {
-		return p.matcher(aLine).matches();
-	}
-
-	@Override
-	public boolean isCommentEnd(String aLine, String commentStartString) {
-		String s = commentStartString.trim();
-		s = s.substring(s.length()-2);
-		return aLine.trim().endsWith(s);
-	}
-
-	@Override
-	public String getCommentStart() {
-		return "#*"; //unused, Pattern matcher above will be used instead //$NON-NLS-1$
-	}
-
-	@Override
-	public String getCommentEnd() {
-		return "**"; //unused, Pattern matcher above will be used instead //$NON-NLS-1$
-	}
-
-	@Override
-	public int getFileType() {
-		return CopyrightComment.SHELL_MAKE_COMMENT;
-	}
-
-	@Override
-	protected void doInsert(final String comment, IDocument document) throws BadLocationException, IOException {
-		// find insert offset (we must skip instructions)
-		int insertOffset = findInsertOffset(document);
-
-		// insert comment
-		document.replace(insertOffset, 0, comment);
-	}
-
-	private int findInsertOffset(IDocument document) throws BadLocationException {
-		boolean inInstruction = false;
-		int insertOffset = 0;
-
-		for (int offset = 0; offset < document.getLength(); offset++) {
-			char c = document.getChar(offset);
-
-			// also look at next char
-			char c2 = ((offset + 1) < document.getLength()) ? document.getChar(offset + 1) : 0;
-
-			// look for line ending
-			if (inInstruction) {
-				if (c == '\n' && c2 == '\r' || c == '\r' && c2 == '\n') {
-					insertOffset = offset + 2;
-					break; // done
-				} else if (c == '\n') {
-					insertOffset = offset + 1;
-					break; // done
-				} else {
-					// continue looking for ending
-					continue;
-				}
-			}
-
-			// next chars must start an instruction
-			if (c == '#' && c2 == '!') {
-				inInstruction = true;
-				offset++; // don't need to analyse c2 again
-				continue;
-			} else {
-				// if it's something else, we can stop seeking
-				break;
-			}
-		}
-		return insertOffset;
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/SourceFile.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/SourceFile.java
deleted file mode 100644
index 0a546da..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/SourceFile.java
+++ /dev/null
@@ -1,328 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2016 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     Martin Oberhuber (Wind River) - [235572] detect existing comments in bat files
- *     Leo Ufimtsev lufimtse@redhat.com [276257] fix xml issues.
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import java.io.BufferedReader;
-import java.io.BufferedWriter;
-import java.io.IOException;
-import java.io.StringReader;
-import java.io.StringWriter;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.filebuffers.FileBuffers;
-import org.eclipse.core.filebuffers.ITextFileBuffer;
-import org.eclipse.core.filebuffers.ITextFileBufferManager;
-import org.eclipse.core.filebuffers.LocationKind;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.TextUtilities;
-import org.eclipse.osgi.util.NLS;
-
-
-/**
- * @author droberts
- */
-public abstract class SourceFile {
-
-	IFile file;
-	List<BlockComment> comments = new ArrayList<>();
-	StringWriter contents = new StringWriter();
-	private ITextFileBufferManager textFileBufferManager;
-	private String lineDelimiter;
-
-	public static SourceFile createFor(IFile file) {
-		String extension = file.getFileExtension();
-		if (extension != null) {
-			extension = extension.toLowerCase();
-			if (extension.equals("java")) { //$NON-NLS-1$
-				return new JavaFile(file);
-			} else if (extension.equals("c") || extension.equals("h") || extension.equals("rc") || extension.equals("cc") || extension.equals("cpp")) { //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
-				return new CFile(file);
-			} else if (extension.equals("properties")) { //$NON-NLS-1$
-				return new PropertiesFile(file);
-			} else if (extension.equals("sh") || extension.equals("csh") || extension.equals("mak") || extension.equals("pl") || extension.equals("tcl")) { //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
-				return new ShellMakeFile(file);
-			} else if (extension.equals("bat")) { //$NON-NLS-1$
-				return new BatFile(file);
-			} else if (extension.equals("js")) { //$NON-NLS-1$
-				return new JavaScriptFile(file);
-			} else if (extension.equals("xml")) { //$NON-NLS-1$
-			//[276257] re-enable xml support.
-			return new XmlFile(file);
-			}
-		}
-		return null;
-	}
-
-	public SourceFile(IFile file) {
-		super();
-		this.file = file;
-		initialize();
-	}
-
-	/**
-	 * Test if the given line marks the start of a potential Copyright comment.
-	 * Can be overridden in subclasses to perform advanced detection.
-	 * @param aLine a line of text to check
-	 * @return <code>true</code> if the line can mark a copyright comment start.
-	 * @since 3.5
-	 */
-	public boolean isCommentStart(String aLine) {
-		return aLine.trim().startsWith(getCommentStart());
-	}
-	/**
-	 * Test if the given line marks the end of a potential Copyright comment.
-	 * Can be overridden in subclasses to perform advanced detection.
-	 * @param aLine a line of text to check
-	 * @param commentStartString the line which started the block comment
-	 * @return <code>true</code> if the line can mark a copyright comment end.
-	 * @since 3.5
-	 */
-	public boolean isCommentEnd(String aLine, String commentStartString) {
-		return aLine.trim().endsWith(getCommentEnd());
-	}
-	public abstract String getCommentStart();
-	public abstract String getCommentEnd();
-
-
-	private void initialize() {
-		textFileBufferManager= FileBuffers.createTextFileBufferManager();
-		try {
-
-			IDocument document;
-			try {
-				//connect file buffer.
-				ITextFileBuffer fileBuffer = openFileBuffer();
-				if (fileBuffer == null)
-					return;
-
-				document = fileBuffer.getDocument();
-			} finally {
-				//Close file buffer.
-				closeFileBuffer();
-			}
-
-			lineDelimiter= TextUtilities.getDefaultLineDelimiter(document);
-			try (BufferedReader aReader = new BufferedReader(new StringReader(document.get()))) {
-				String aLine = aReader.readLine();
-				String comment = ""; //$NON-NLS-1$
-				BufferedWriter contentsWriter = new BufferedWriter(contents);
-				int lineNumber = 0;
-				int commentStart = 0;
-				int commentEnd = 0;
-				boolean inComment = false;
-				String commentStartString = ""; //$NON-NLS-1$
-
-				// Loop over the document, extract the comment.
-				while (aLine != null) {
-					contentsWriter.write(aLine);
-					contentsWriter.newLine();
-					if (!inComment && isCommentStart(aLine)) {
-						// start saving comment
-						inComment = true;
-						commentStart = lineNumber;
-						commentStartString = aLine;
-					}
-
-					if (inComment) {
-						comment = comment + aLine + lineDelimiter;
-
-						if (isCommentEnd(aLine, commentStartString) && commentStart != lineNumber) {
-							// stop saving comment
-							inComment = false;
-							commentEnd = lineNumber;
-							String commentEndString = aLine.trim();
-							commentEndString = commentEndString.substring(commentEndString.length() - 2);
-							BlockComment aComment = new BlockComment(commentStart, commentEnd, comment.toString(),
-									commentStartString, commentEndString);
-							comments.add(aComment);
-							comment = ""; //$NON-NLS-1$
-							commentStart = 0;
-							commentEnd = 0;
-							commentStartString = ""; //$NON-NLS-1$
-						}
-					}
-
-					aLine = aReader.readLine();
-					lineNumber++;
-				}
-
-			}
-		} catch (IOException e) {
-			e.printStackTrace();
-		}
-	}
-
-	/**
-	 * @return BlockComment
-	 */
-	public BlockComment firstBlockComment() {
-		if (comments.isEmpty()) {
-			return null;
-		} else {
-			return comments.get(0);
-		}
-	}
-
-	/**
-	 * If this method is called, <b>ensure</b> that you close the file buffer after usage. <br>
-	 * Otherwise you leave a memory leak. {@link #closeFileBuffer()}
-	 * {@code textFileBufferManager.disconnect(file.getFullPath(), LocationKind.IFILE, null); }
-	 * @return
-	 */
-	private ITextFileBuffer openFileBuffer() {
-		try {
-			textFileBufferManager.connect(file.getFullPath(), LocationKind.IFILE, null);
-		} catch (CoreException e) {
-			e.printStackTrace();
-			return null;
-		}
-
-		ITextFileBuffer fileBuffer= textFileBufferManager.getTextFileBuffer(file.getFullPath(), LocationKind.IFILE);
-		if (fileBuffer != null)
-			return fileBuffer;
-
-		System.err.println(NLS.bind(Messages.getString("SourceFile.0"), file.getFullPath())); //$NON-NLS-1$
-			return null;
-	}
-
-	/**
-	 * This should be called before ending a file operation. <br>
-	 * Companion function to getFileBuffer();
-	 */
-	private void closeFileBuffer() {
-			try {
-				textFileBufferManager.disconnect(file.getFullPath(), LocationKind.IFILE, null);
-			} catch (CoreException e) {
-				e.printStackTrace();
-			}
-	}
-
-
-	/**
-	 * Given the copyright comment, this method inserts it into the right place in the file.
-	 *
-	 * @param copyRightComment  the complete comment that will be inserted.
-	 */
-	public void insert(String copyRightComment) {
-		try {
-			ITextFileBuffer fileBuffer= openFileBuffer();
-			if (fileBuffer == null)
-				return;
-
-			IDocument document= fileBuffer.getDocument();
-			doInsert(copyRightComment, document);
-			fileBuffer.commit(null, false);
-		} catch (BadLocationException e) {
-			e.printStackTrace();
-		} catch (CoreException e) {
-			e.printStackTrace();
-		} catch (IOException e) {
-			e.printStackTrace();
-		} finally {
-			closeFileBuffer();
-		}
-	}
-
-	protected void doInsert(String comment, IDocument document) throws BadLocationException, CoreException, IOException {
-		document.replace(0, 0, comment);
-	}
-
-	/**
-	 * @return BlockComment
-	 */
-	public BlockComment getFirstCopyrightComment() {
-		Iterator<BlockComment> anIterator = comments.iterator();
-		while (anIterator.hasNext()) {
-			BlockComment aComment = anIterator.next();
-			if (aComment.isCopyright()) {
-				return aComment;
-			}
-		}
-
-		return null;
-	}
-
-	/**
-	 * @param aCommet
-	 * @param newCopyrightComment          Comment to be inserted.
-	 */
-	public void replace(BlockComment aComment, String newCopyrightComment) {
-
-
-		try {
-			ITextFileBuffer fileBuffer = openFileBuffer();
-			if (fileBuffer == null)
-				return;
-
-			IDocument document= fileBuffer.getDocument();
-
-			IRegion startLine= document.getLineInformation(aComment.start);
-			IRegion endLine= document.getLineInformation(aComment.end + 1);
-			document.replace(startLine.getOffset(), endLine.getOffset() - startLine.getOffset(), newCopyrightComment);
-
-			fileBuffer.commit(null, false);
-
-		} catch (BadLocationException e) {
-			e.printStackTrace();
-		} catch (CoreException e) {
-			e.printStackTrace();
-		} finally  {
-			closeFileBuffer();
-			try {
-				FileBuffers.getTextFileBufferManager().disconnect(file.getFullPath(), LocationKind.IFILE, null);
-			} catch (CoreException e) {
-				e.printStackTrace();
-				return;
-			}
-		}
-	}
-
-	/**
-	 * @return boolean
-	 */
-	public boolean hasMultipleCopyrights() {
-		int count = 0;
-		Iterator<BlockComment> anIterator = comments.iterator();
-		while (anIterator.hasNext()) {
-			BlockComment aComment = anIterator.next();
-			if (aComment.isCopyright()) {
-				count++;
-			}
-			if (count > 1) {
-				return true;
-			}
-		}
-		return false;
-	}
-
-	public abstract int getFileType();
-
-	/**
-	 * Returns the line delimiter.
-	 *
-	 * @return the line delimiter
-	 * @since 3.7
-	 */
-	public String getLineDelimiter() {
-		return lineDelimiter;
-	}
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/XmlFile.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/XmlFile.java
deleted file mode 100644
index 26e0123..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/XmlFile.java
+++ /dev/null
@@ -1,262 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008, 2014 Gunnar Wagenknecht and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     Gunnar Wagenknecht - initial API and implementation
- *     Leo Ufimtsev lufimtse@redhat.com - fixed xml header issues.
- *      https://bugs.eclipse.org/381147
- *      https://bugs.eclipse.org/bugs/show_bug.cgi?id=276257  //used.
- *
- *
- *******************************************************************************/
-package org.eclipse.releng.tools;
-
-import java.io.IOException;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-
-
-/*
- * Test notes:
- * [x] Empty Document
- * [x] Empty Document with XML header
- * [x] Document with content, no XML header.
- * [x] Document with XML header and content on 2nd line
- * [x] Document with XML header, copyright on first line with content on first line.
- * [x] Document with XML header, content on the first line that doesn't close properly.
- * Example:
- *      <?xml version="1.0" encoding="UTF-8"?><fragment><extension
- *     //Copy-right comment is executed correctly, '<fragment ..' is put onto new line.
- *
- * [x] Document with XML header, copyright on 2nd line, stuff.
- * [x] test with non-IBM header.
- * 2014.07.15 tested.
- *
- */
-
-/**
- * <h2> XML File handler. </h2>
- *
- * <p> This class deals with the special case of 'xml' files.</p>
- *
- * <p> * If an xml header exists for example: {@code <?xml version="1.0" encoding="UTF-8"?> } <br>
- * then the copyright comment is inserted exactly at the end of it, on a new line, <br>
- * moving any content down below the xml header. </p>
- *
- * <p> It does take into account multiple headers also. e.g:<br>
- * {@code <?xml version="1.0" encoding="UTF-8"?>}<br>
-   {@code <?eclipse version="3.2"?> }<br>
-   In this case, the copy right comment is inserted below the last header. </p>
-
- * <p> If no xml header exists, then the copyright comment is inserted at the top of the xml file.<p>
- */
-public class XmlFile extends SourceFile {
-
-	public XmlFile(IFile file) {
-		super(file);
-	}
-
-	/**
-	 * Deals with the fact that XML files can start with a header and the copy <br>
-	 * right comment can start at the end of the header. <br>
-	 *
-	 * <p> For example: {@code <?xml?> <!-- } </p>
-	 *
-	 * {@inheritDoc}
-	 */
-	@Override
-	public boolean isCommentStart(String aLine) {
-		return aLine.trim().contains(getCommentStart());
-
-		//Note, above is a bit different from parent, contains/startswithd:
-		//Parent:
-		//return aLine.trim().STARTSWITH(getCommentStart());
-
-	}
-
-	/**
-	 * Deals with the fact that XML files can end with a header and the copy <br>
-	 * right comment can start at the end of the header. <br>
-	 *
-	 * <p> For exaple: {@code <?xml?> <!-- } </p>
-	 *
-	 * {@inheritDoc}
-	 */
-	@Override
-	public boolean isCommentEnd(String aLine, String commentStartString) {
-		return aLine.trim().contains(getCommentEnd());
-		//Similarly, uses 'contains' instead of 'starts with'
-	}
-
-	@Override
-	public String getCommentStart() {
-		return "<!--"; //$NON-NLS-1$
-	}
-
-	@Override
-	public String getCommentEnd() {
-		return "-->"; //$NON-NLS-1$
-	}
-
-	@Override
-	public int getFileType() {
-		return CopyrightComment.XML_COMMENT;
-	}
-
-	/**
-	 * Given the new constructed copyright comment, it inserts it into the the document.
-	 *
-	 * <p> Note, this is only called if inserting an actual comment.<br>
-	 *  If only updating the year, this method is not called. </p>
-	 * @see org.eclipse.releng.tools.SourceFile#doInsert(java.lang.String, org.eclipse.jface.text.IDocument)
-	 */
-	@Override
-	protected void doInsert(final String comment, IDocument document) throws BadLocationException, IOException {
-
-		//----------------- XML COMMENT CLEAN UP
-		// XML comments need extra-tidy up because we need to consider the existance of an XML header
-		String tidyComment = comment.trim();
-
-		//Append new-line at the end for cleaner look.
-		tidyComment += '\n';
-
-		// check for existance of an xml header (<?xml)
-		// If so, put the comment 'below' it.
-		// example:
-		//<?xml .... ?>
-		//<--
-		//    comment start....
-		if (containsXmlEncoding(document)) {
-			// If encoding is present, pre-append a new line.
-			tidyComment = '\n' + tidyComment;
-		}
-
-		//------------------ COMMENT INSERT
-		// find insert offset (we must skip instructions)
-		int insertOffset = findInsertOffset(document);
-
-		// insert comment
-		document.replace(insertOffset, 0, tidyComment);
-	}
-
-	/**
-	 * Given the document, find the place after the xml header to insert the comment.
-	 * @param document
-	 * @return
-	 * @throws BadLocationException
-	 */
-	private int findInsertOffset(IDocument document) throws BadLocationException {
-		boolean inInstruction = false;
-		int insertOffset = 0;
-
-		for (int offset = 0; offset < document.getLength(); offset++) {
-			char c = document.getChar(offset);
-
-			// ignore whitespace and new lines
-			if(Character.isWhitespace(c)) {
-				// we update the offset to ignore whitespaces
-				// after instruction ends
-				insertOffset = offset;
-				continue;
-			}
-
-			// look at next char
-			char c2 = ((offset+1) < document.getLength()) ? document.getChar(offset+1) : 0;
-
-			// look for instruction ending
-			if(inInstruction) {
-				if(c == '?' && c2 == '>') {
-
-					//Offset is '+2' not '+1' because of '?' in '?>'
-					insertOffset = offset + 2;
-					inInstruction = false;
-					offset++; // don't need to analyse c2 again
-					// we continue in case there are more instructions
-					continue;
-				} else {
-					// look for ending
-					continue;
-				}
-			}
-
-			// next chars must start an instruction
-			if(c == '<' && c2 =='?') {
-				inInstruction = true;
-				offset++; // don't need to analyse c2 again
-				continue;
-			} else {
-				// if it's something else, we can stop seeking
-				break;
-			}
-		}
-		return insertOffset;
-	}
-
-	/**
-	 * Find out if an XML document contains an XML meta header.
-	 *
-	 * <p> XML documents <b> sometimes </b> contain a header specifying various attributes such as  <br>
-	 * version, encoding etc... </p>
-	 *
-	 * <p> Examples include: <br>
-	 * {@literal <?xml version="1.0" encoding="UTF-8"?> }<br>
-	 * {@literal<?xml version="1.0" encoding="UTF-8" standalone="no"?> } <br>
-	 * {@literal <?xml version="1.0" ?> } </p>
-	 *
-	 * @param xmlDoc
-	 * @return             True if it contains a header.
-	 * @throws BadLocationException
-	 */
-	public boolean containsXmlEncoding(IDocument xmlDoc) throws BadLocationException {
-
-		//XML attribute headers *must* reside on the first line.
-		//We identify if the xml document contains a header by checking the first tag and see if it starts with: <?xml
-
-		//-- Check to see if the document is long enough to contain the minimum '<?xml?>' tag
-		if (xmlDoc.getLength() < 7) {
-			return false;
-		}
-
-		for (int offset = 0; offset < xmlDoc.getLength(); offset++) {
-
-			//Read Char.
-			char c = xmlDoc.getChar(offset);
-
-				// ignore whitespace and new lines
-				if(Character.isWhitespace(c)) {
-						continue;
-				}
-
-				//Once we've found the first '<', check that it's a '<?xml'
-				if (c == '<') {
-
-					//check that document is long enough to close a header if we are to read it: '<?xml
-					if ((offset + 4) < xmlDoc.getLength()) {
-
-						//Read "<?xml" equivalent.
-						String xmlTag = "" + c + xmlDoc.getChar(offset+1) + xmlDoc.getChar(offset+2) + //$NON-NLS-1$
-												 xmlDoc.getChar(offset+3) + xmlDoc.getChar(offset+4);
-
-						if ( xmlTag.compareToIgnoreCase("<?xml") == 0) { //$NON-NLS-1$
-							return true;
-						} else {
-							return false;
-						}
-					}
-				}
-		}
-
-		//if parsing an empty xml document, return false.
-		return false;
-	}
-
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/git/GitCopyrightAdapter.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/git/GitCopyrightAdapter.java
deleted file mode 100644
index 2a3f770..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/git/GitCopyrightAdapter.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010, 2019 AGETO Service GmbH and others.
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License 2.0 which accompanies this distribution,
-t https://www.eclipse.org/legal/epl-2.0/
-t
-t SPDX-License-Identifier: EPL-2.0.
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation of CVS adapter
- *     Gunnar Wagenknecht - initial API and implementation of Git adapter
- *     IBM Corporation - ongoing maintenance
- *******************************************************************************/
-package org.eclipse.releng.tools.git;
-
-import java.io.IOException;
-import java.util.Calendar;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-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.egit.core.project.RepositoryMapping;
-import org.eclipse.jgit.lib.Constants;
-import org.eclipse.jgit.lib.ObjectId;
-import org.eclipse.jgit.lib.Repository;
-import org.eclipse.jgit.revwalk.RevCommit;
-import org.eclipse.jgit.revwalk.RevWalk;
-import org.eclipse.jgit.treewalk.filter.AndTreeFilter;
-import org.eclipse.jgit.treewalk.filter.PathFilter;
-import org.eclipse.jgit.treewalk.filter.TreeFilter;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.releng.tools.RelEngPlugin;
-import org.eclipse.releng.tools.RepositoryProviderCopyrightAdapter;
-
-public class GitCopyrightAdapter extends RepositoryProviderCopyrightAdapter {
-
-	private static String filterString = "copyright"; // lowercase //$NON-NLS-1$
-
-	/**
-	 * Bugs to be filtered because they modified a lot of files in a trivial way
-	 * and should not change the copyright year.
-	 * <p>
-	 * If the last commit message for a checked file starts with one of these
-	 * strings the year will not be modified for this file.
-	 * </p>
-	 */
-	private static final String[] FILTER_BUGS = new String[] {
-			"Bug 535802", // license version update //$NON-NLS-1$
-			"Bug 543933", // build javadocs with Java 11  //$NON-NLS-1$
-	};
-
-	public GitCopyrightAdapter(IResource[] resources) {
-		super(resources);
-	}
-
-	@Override
-	public int getLastModifiedYear(IFile file, IProgressMonitor monitor) throws CoreException {
-			final RepositoryMapping mapping = RepositoryMapping.getMapping(file);
-			if (mapping != null) {
-				final Repository repo = mapping.getRepository();
-				if (repo != null) {
-					try (RevWalk walk = new RevWalk(repo)) {
-						final ObjectId start = repo.resolve(Constants.HEAD);
-
-						walk.setTreeFilter(AndTreeFilter.create(PathFilter.create(mapping.getRepoRelativePath(file)),
-								TreeFilter.ANY_DIFF));
-						walk.markStart(walk.lookupCommit(start));
-						// dramatically increase performance for this use case
-						// see https://bugs.eclipse.org/bugs/show_bug.cgi?id=468850#c17
-						walk.setRewriteParents(false);
-						final RevCommit commit = walk.next();
-						if (commit != null) {
-							if (filterString != null
-									&& commit.getFullMessage().toLowerCase().indexOf(filterString) != -1) {
-								// the last update was a copyright check in -
-								// ignore
-								return 0;
-							}
-
-							for (String bugId : FILTER_BUGS) {
-								if (commit.getShortMessage().startsWith(bugId)) {
-									return 0;
-								}
-							}
-
-							boolean isSWT = file.getProject().getName().startsWith("org.eclipse.swt"); //$NON-NLS-1$
-							String logComment = commit.getFullMessage();
-							if (isSWT && (logComment.indexOf("restore HEAD after accidental deletion") != -1 //$NON-NLS-1$
-									|| logComment.indexOf("fix permission of files") != -1)) { //$NON-NLS-1$
-								// ignore commits with above comments
-								return 0;
-							}
-
-							boolean isPlatform = file.getProject().getName().equals("eclipse.platform"); //$NON-NLS-1$
-							if (isPlatform && (logComment.indexOf("Merge in ant and update from origin/master") != -1 //$NON-NLS-1$
-									|| logComment.indexOf(
-											"Fixed bug 381684: Remove update from repository and map files") != -1)) { //$NON-NLS-1$
-								// ignore commits with above comments
-								return 0;
-							}
-
-							final Calendar calendar = Calendar.getInstance();
-							calendar.setTimeInMillis(0);
-							calendar.add(Calendar.SECOND, commit.getCommitTime());
-							return calendar.get(Calendar.YEAR);
-						}
-					} catch (final IOException e) {
-						throw new CoreException(new Status(IStatus.ERROR, RelEngPlugin.ID, 0,
-								NLS.bind("An error occured when processing {0}", file.getName()), e)); //$NON-NLS-1$
-					}
-				}
-			}
-		return -1;
-	}
-
-	@Override
-	public void initialize(IProgressMonitor monitor) throws CoreException {
-	}
-
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/git/GitCopyrightAdapterFactory.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/git/GitCopyrightAdapterFactory.java
deleted file mode 100644
index 9b38c9e..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/git/GitCopyrightAdapterFactory.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2010, 2016 AGETO Service GmbH and others.
- * All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License 2.0 which accompanies this distribution,
-t https://www.eclipse.org/legal/epl-2.0/
-t
-t SPDX-License-Identifier: EPL-2.0.
- *
- * Contributors:
- *     Gunnar Wagenknecht - initial API and implementation
- *     IBM Corporation - ongoing maintenance
- *******************************************************************************/
-package org.eclipse.releng.tools.git;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.releng.tools.IRepositoryProviderCopyrightAdapterFactory;
-import org.eclipse.releng.tools.RepositoryProviderCopyrightAdapter;
-import org.eclipse.team.core.RepositoryProviderType;
-
-public class GitCopyrightAdapterFactory implements IAdapterFactory,
-		IRepositoryProviderCopyrightAdapterFactory {
-
-	private static final Class<?>[] ADAPTER_LIST = new Class[] { IRepositoryProviderCopyrightAdapterFactory.class };
-
-	@Override
-	public <T> T getAdapter(Object adaptableObject, Class<T> adapterType) {
-		if (IRepositoryProviderCopyrightAdapterFactory.class
-				.equals(adapterType)) {
-			return adapterType.cast(getGitCopyrightAdapter(adaptableObject));
-		}
-		return null;
-	}
-
-	private Object getGitCopyrightAdapter(Object adaptableObject) {
-		if (!(adaptableObject instanceof RepositoryProviderType))
-			return null;
-		return this;
-	}
-
-	@Override
-	public Class<?>[] getAdapterList() {
-		return ADAPTER_LIST;
-	}
-
-	@Override
-	public RepositoryProviderCopyrightAdapter createAdapater(
-			IResource[] resources) {
-		return new GitCopyrightAdapter(resources);
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/messages.properties b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/messages.properties
deleted file mode 100644
index 5c1ac7e..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/messages.properties
+++ /dev/null
@@ -1,53 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2019 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-RelEngPlugin.0=POM version validation
-RelEngPlugin.1=org.eclipse.releng
-RelEngPlugin.2=maps
-RelEngPlugin.3=RelEngPluginResources
-RelEngPreferenceInitializer.0=Copyright (c) ${date} IBM Corporation and others.\n\nThis program and the accompanying materials\nare made available under the terms of the Eclipse Public License 2.0\nwhich accompanies this distribution, and is available at\nhttps://www.eclipse.org/legal/epl-2.0/\n\nSPDX-License-Identifier: EPL-2.0\n\nContributors:\n    IBM Corporation - initial API and implementation
-RemoveConsoleAction.Text=Remove
-RemoveAllConsolesAction.Text=Remove All
-CopyrightPreferencePage.0=Use "${date}" to substitute in "creation_year, revision_year"
-CopyrightPreferencePage.1=Default creation year:
-CopyrightPreferencePage.2=Replace all existing copyright comments with this copyright template
-CopyrightPreferencePage.4=Skip over properties files
-CopyrightPreferencePage.5=Copyright template
-CopyrightPreferencePage.6=Default year must be a positive number
-CopyrightPreferencePage.7=Default revision year:
-CopyrightPreferencePage.8=Always use default revision year instead of repository lookup
-CopyrightPreferencePage.9=Skip over XML files
-SourceFile.0=The file buffer could not be acquired for: {0}
-AdvancedFixCopyrightAction.0=Fix Copyrights
-AdvancedFixCopyrightAction.1=Fixing copyrights
-AdvancedFixCopyrightAction.9=Errors occurred during the operation. Consult the error log for details
-AdvancedFixCopyrightAction.10=The following errors occurred while fixing copyrights
-AdvancedFixCopyrightAction.11=The selected resources do not all belong to the same repository provider
-AdvancedFixCopyrightAction.12=Copyright adapter could not be found for {0}
-AdvancedFixCopyrightAction.13=File has no extension. File UNCHANGED.
-AdvancedFixCopyrightAction.14=Multiple copyrights found. File UNCHANGED.
-AdvancedFixCopyrightAction.15=File is licensed under IBM EPL. Revision year may be updated.
-AdvancedFixCopyrightAction.16=Could not interpret copyright comment. File UNCHANGED.
-AdvancedFixCopyrightAction.17=The year could not be determined for {0}
-AdvancedFixCopyrightAction.18=Last commit was copyright change. File UNCHANGED.
-AdvancedFixCopyrightAction.19=Old copyright not at start of file, new copyright replaces old in same location
-AdvancedFixCopyrightAction.20=Failed to create internal source file for proccessing the file
-AdvancedFixCopyrightAction.21=Failed to find the first year in the copyright heading.
-AdvancedFixCopyrightAction.22=Initializing...
-AdvancedFixCopyrightAction.2=Start Fixing Copyrights
-AdvancedFixCopyrightAction.3=Resources selected: {0}
-AdvancedFixCopyrightAction.4=Fixing copyrights...
-AdvancedFixCopyrightAction.5=None of the selected resources is shared in a team repository
-AdvancedFixCopyrightAction.6=Fixing copyrights for {0}
-AdvancedFixCopyrightAction.7=Done Fixing Copyrights
-AdvancedFixCopyrightAction.8=Total time: {0} ms
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/ConfigurationBlock.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/ConfigurationBlock.java
deleted file mode 100644
index a8e2404..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/ConfigurationBlock.java
+++ /dev/null
@@ -1,170 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2013, 2016 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools.preferences;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.FocusEvent;
-import org.eclipse.swt.events.FocusListener;
-import org.eclipse.swt.events.MouseAdapter;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.events.MouseListener;
-import org.eclipse.swt.events.MouseMoveListener;
-import org.eclipse.swt.events.MouseTrackAdapter;
-import org.eclipse.swt.events.PaintEvent;
-import org.eclipse.swt.events.PaintListener;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-
-/**
- * General functions useful to all widgets that create preference blocks
- *
- * @since 3.8
- */
-public abstract class ConfigurationBlock {
-
-	private static final int HIGHLIGHT_FOCUS = SWT.COLOR_WIDGET_DARK_SHADOW;
-	private static final int HIGHLIGHT_MOUSE = SWT.COLOR_WIDGET_NORMAL_SHADOW;
-	private static final int HIGHLIGHT_NONE = SWT.NONE;
-
-	protected void addHighlight(final Composite parent, final Label labelControl, final Combo comboBox) {
-		comboBox.addFocusListener(new FocusListener() {
-			@Override
-			public void focusLost(FocusEvent e) {
-				highlight(parent, labelControl, comboBox, HIGHLIGHT_NONE);
-			}
-			@Override
-			public void focusGained(FocusEvent e) {
-				highlight(parent, labelControl, comboBox, HIGHLIGHT_FOCUS);
-			}
-		});
-
-		MouseTrackAdapter labelComboListener= new MouseTrackAdapter() {
-			@Override
-			public void mouseEnter(MouseEvent e) {
-				highlight(parent, labelControl, comboBox, comboBox.isFocusControl() ? HIGHLIGHT_FOCUS : HIGHLIGHT_MOUSE);
-			}
-			@Override
-			public void mouseExit(MouseEvent e) {
-				if (! comboBox.isFocusControl())
-					highlight(parent, labelControl, comboBox, HIGHLIGHT_NONE);
-			}
-		};
-		comboBox.addMouseTrackListener(labelComboListener);
-		labelControl.addMouseTrackListener(labelComboListener);
-
-		class MouseMoveTrackListener extends MouseTrackAdapter implements MouseMoveListener, MouseListener {
-			@Override
-			public void mouseExit(MouseEvent e) {
-				if (! comboBox.isFocusControl())
-					highlight(parent, labelControl, comboBox, HIGHLIGHT_NONE);
-			}
-			@Override
-			public void mouseMove(MouseEvent e) {
-				int color= comboBox.isFocusControl() ? HIGHLIGHT_FOCUS : isAroundLabel(e) ? HIGHLIGHT_MOUSE : HIGHLIGHT_NONE;
-				highlight(parent, labelControl, comboBox, color);
-			}
-			@Override
-			public void mouseDown(MouseEvent e) {
-				if (isAroundLabel(e))
-					comboBox.setFocus();
-			}
-			@Override
-			public void mouseDoubleClick(MouseEvent e) {
-				// not used
-			}
-			@Override
-			public void mouseUp(MouseEvent e) {
-				// not used
-			}
-			private boolean isAroundLabel(MouseEvent e) {
-				int lx= labelControl.getLocation().x;
-				Rectangle c= comboBox.getBounds();
-				int x= e.x;
-				int y= e.y;
-				boolean isAroundLabel= lx - 5 < x && x < c.x && c.y - 2 < y && y < c.y + c.height + 2;
-				return isAroundLabel;
-			}
-		}
-		MouseMoveTrackListener parentListener= new MouseMoveTrackListener();
-		parent.addMouseMoveListener(parentListener);
-		parent.addMouseTrackListener(parentListener);
-		parent.addMouseListener(parentListener);
-
-		MouseAdapter labelClickListener= new MouseAdapter() {
-			@Override
-			public void mouseDown(MouseEvent e) {
-				comboBox.setFocus();
-			}
-		};
-		labelControl.addMouseListener(labelClickListener);
-	}
-
-	protected void highlight(final Composite parent, final Label labelControl, final Combo comboBox, final int color) {
-
-		class HighlightPainter implements PaintListener {
-
-			private int fColor= color;
-
-			@Override
-			public void paintControl(PaintEvent e) {
-				if (((GridData) labelControl.getLayoutData()).exclude) {
-					parent.removePaintListener(this);
-					labelControl.setData(null);
-					return;
-				}
-
-				int GAP= 7;
-				int ARROW= 3;
-				Rectangle l= labelControl.getBounds();
-				Point c= comboBox.getLocation();
-
-				e.gc.setForeground(e.display.getSystemColor(fColor));
-				int x2= c.x - GAP;
-				int y= l.y + l.height / 2 + 1;
-
-				e.gc.drawLine(l.x + l.width + GAP, y, x2, y);
-				e.gc.drawLine(x2 - ARROW, y - ARROW, x2, y);
-				e.gc.drawLine(x2 - ARROW, y + ARROW, x2, y);
-			}
-		}
-
-		Object data= labelControl.getData();
-		if (data == null) {
-			if (color != HIGHLIGHT_NONE) {
-				PaintListener painter= new HighlightPainter();
-				parent.addPaintListener(painter);
-				labelControl.setData(painter);
-			} else {
-				return;
-			}
-		} else {
-			if (color == HIGHLIGHT_NONE) {
-				parent.removePaintListener((PaintListener) data);
-				labelControl.setData(null);
-			} else if (color != ((HighlightPainter) data).fColor){
-				((HighlightPainter) data).fColor= color;
-			} else {
-				return;
-			}
-		}
-
-		parent.redraw();
-		parent.update();
-	}
-
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/CopyrightPreferencePage.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/CopyrightPreferencePage.java
deleted file mode 100644
index 0f585d0..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/CopyrightPreferencePage.java
+++ /dev/null
@@ -1,324 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2016 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools.preferences;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.preferences.InstanceScope;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.preference.PreferencePage;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.source.SourceViewer;
-import org.eclipse.jface.text.source.SourceViewerConfiguration;
-import org.eclipse.releng.tools.Messages;
-import org.eclipse.releng.tools.RelEngPlugin;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.KeyAdapter;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.events.KeyListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPreferencePage;
-import org.osgi.service.prefs.BackingStoreException;
-
-/**
- * Copyright tools preference page
- */
-public class CopyrightPreferencePage extends PreferencePage implements IWorkbenchPreferencePage {
-	private final String NEW_LINE = "\n"; //$NON-NLS-1$
-	private Composite fComposite;
-	private Label fCopyrightLabel;
-	private SourceViewer fEditor;
-	private Text fInstructions;
-	private Label fCreationYearLabel;
-	private Text fCreationYear;
-	private Label fRevisionYearLabel;
-	private Text fRevisionYear;
-	private Button fUseDefaultRevisionYear;
-	private Button fReplaceAllExisting;
-	// disable fix up existing copyright till it works better
-//	private Button fFixExisting;
-	private Button fIgnoreProperties;
-	private Button fIgnoreXml;
-
-	@Override
-	public void init(IWorkbench workbench) {
-		// TODO Auto-generated method stub
-
-	}
-
-	@Override
-	protected Control createContents(Composite parent) {
-
-		//The main composite
-		fComposite = new Composite(parent, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 2;
-		layout.marginWidth = 0;
-		layout.marginHeight = 0;
-		fComposite.setLayout(layout);
-		fComposite.setLayoutData(new GridData(GridData.FILL_BOTH));
-
-		// copyright template editor
-		fEditor = createEditor(fComposite);
-
-		GridData data = new GridData(GridData.FILL_HORIZONTAL);
-		data.horizontalSpan = 2;
-		data.horizontalIndent = 0;
-		fInstructions = new Text(fComposite, SWT.READ_ONLY);
-		fInstructions.setText(Messages.getString("CopyrightPreferencePage.0")); //$NON-NLS-1$
-		fInstructions.setLayoutData(data);
-
-		// default creation year
-		fCreationYearLabel = new Label(fComposite, SWT.NONE);
-		fCreationYearLabel.setText(Messages.getString("CopyrightPreferencePage.1")); //$NON-NLS-1$
-		fCreationYear = new Text(fComposite, SWT.BORDER);
-		fCreationYear.setTextLimit(4);
-
-		// default revision year
-		fRevisionYearLabel = new Label(fComposite, SWT.NONE);
-		fRevisionYearLabel.setText(Messages.getString("CopyrightPreferencePage.7")); //$NON-NLS-1$
-		fRevisionYear = new Text(fComposite, SWT.BORDER);
-		fRevisionYear.setTextLimit(4);
-
-		// always use default revision year instead of cvs lookup
-		fUseDefaultRevisionYear = new Button(fComposite, SWT.CHECK);
-		fUseDefaultRevisionYear.setText(Messages.getString("CopyrightPreferencePage.8")); //$NON-NLS-1$
-		data = new GridData();
-		data.horizontalSpan = 2;
-		fUseDefaultRevisionYear.setLayoutData(data);
-
-		// replace all existing copyright statement
-		fReplaceAllExisting = new Button(fComposite, SWT.CHECK);
-		fReplaceAllExisting.setText(Messages.getString("CopyrightPreferencePage.2")); //$NON-NLS-1$
-		data = new GridData();
-		data.horizontalSpan = 2;
-		fReplaceAllExisting.setLayoutData(data);
-
-		// disable fix up existing copyright till it works better
-//		// fix up existing copyright statement
-//		fFixExisting = new Button(fComposite, SWT.CHECK);
-//		fFixExisting.setText(Messages.getString("CopyrightPreferencePage.3")); //$NON-NLS-1$
-//		data = new GridData();
-//		data.horizontalSpan = 2;
-//		fFixExisting.setLayoutData(data);
-
-		// ignore properties files
-		fIgnoreProperties = new Button(fComposite, SWT.CHECK);
-		fIgnoreProperties.setText(Messages.getString("CopyrightPreferencePage.4")); //$NON-NLS-1$
-		data = new GridData();
-		data.horizontalSpan = 2;
-		fIgnoreProperties.setLayoutData(data);
-
-
-		//[276257] re-enabling xml files
-		fIgnoreXml = new Button(fComposite, SWT.CHECK);
-		fIgnoreXml.setText(Messages.getString("CopyrightPreferencePage.9")); //$NON-NLS-1$
-		data = new GridData();
-		data.horizontalSpan = 2;
-		fIgnoreXml.setLayoutData(data);
-
-
-		KeyListener listener1 = new KeyAdapter() {
-			@Override
-			public void keyReleased(KeyEvent e) {
-				validateValues();
-			}
-		};
-		fCreationYear.addKeyListener(listener1);
-		fRevisionYear.addKeyListener(listener1);
-
-		initializeValues();
-		applyDialogFont(fComposite);
-		return fComposite;
-	}
-
-	/**
-	 * Create the sourceviewer editor to be used to edit the copyright template
-	 */
-	private SourceViewer createEditor(Composite parent) {
-		fCopyrightLabel = new Label(parent, SWT.NONE);
-		fCopyrightLabel.setText(Messages.getString("CopyrightPreferencePage.5")); //$NON-NLS-1$
-		GridData data= new GridData();
-		data.horizontalSpan= 2;
-		fCopyrightLabel.setLayoutData(data);
-
-		SourceViewer viewer= createViewer(parent);
-
-		IDocument document= new Document();
-		viewer.setEditable(true);
-		viewer.setDocument(document);
-
-		// just use a default 10 lines
-		int nLines = 10;
-//		int nLines= document.getNumberOfLines();
-//		if (nLines < 5) {
-//			nLines= 5;
-//		} else if (nLines > 12) {
-//			nLines= 12;
-//		}
-
-		Control control= viewer.getControl();
-		data= new GridData(GridData.FILL_HORIZONTAL);
-		data.widthHint= convertWidthInCharsToPixels(80);
-		data.heightHint= convertHeightInCharsToPixels(nLines);
-		data.horizontalSpan = 2;
-		control.setLayoutData(data);
-
-		return viewer;
-	}
-
-	/**
-	 * Creates the viewer to be used to display the copyright.
-	 *
-	 * @param parent the parent composite of the viewer
-	 * @return a configured <code>SourceViewer</code>
-	 */
-	private SourceViewer createViewer(Composite parent) {
-		SourceViewer viewer= new SourceViewer(parent, null, null, false, SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
-		SourceViewerConfiguration configuration= new SourceViewerConfiguration();
-		viewer.configure(configuration);
-		return viewer;
-	}
-
-	/**
-	 * Initialize the control values in this preference page
-	 */
-	private void initializeValues() {
-		IPreferenceStore store = getPreferenceStore();
-
-		fEditor.getDocument().set(store.getString(RelEngCopyrightConstants.COPYRIGHT_TEMPLATE_KEY));
-		fCreationYear.setText(store.getString(RelEngCopyrightConstants.CREATION_YEAR_KEY));
-		fRevisionYear.setText(store.getString(RelEngCopyrightConstants.REVISION_YEAR_KEY));
-		fUseDefaultRevisionYear.setSelection(store.getBoolean(RelEngCopyrightConstants.USE_DEFAULT_REVISION_YEAR_KEY));
-		fReplaceAllExisting.setSelection(store.getBoolean(RelEngCopyrightConstants.REPLACE_ALL_EXISTING_KEY));
-		// disable fix up existing copyright till it works better
-//		handleReplaceAllEnabled(fReplaceAllExisting.getSelection(), store.getBoolean(RelEngCopyrightConstants.FIX_UP_EXISTING_KEY));
-		fIgnoreProperties.setSelection(store.getBoolean(RelEngCopyrightConstants.IGNORE_PROPERTIES_KEY));
-
-		//[276257] re-enabling xml files
-		fIgnoreXml.setSelection(store.getBoolean(RelEngCopyrightConstants.IGNORE_XML_KEY));
-	}
-
-	/**
-	 * Validate the control values in this preference page
-	 */
-	private void validateValues() {
-		String ERROR_MESSAGE = Messages.getString("CopyrightPreferencePage.6"); //$NON-NLS-1$
-
-		String errorMsg = null;
-
-		// creation & revision year must be an integer
-		String creationYear = fCreationYear.getText();
-		String revisionYear = fRevisionYear.getText();
-		try {
-			int year = Integer.parseInt(creationYear);
-			if (year < 0) {
-				errorMsg = ERROR_MESSAGE;
-			}
-			year = Integer.parseInt(revisionYear);
-			if (year < 0) {
-				errorMsg = ERROR_MESSAGE;
-			}
-		} catch (NumberFormatException e) {
-			errorMsg = ERROR_MESSAGE;
-		}
-		setErrorMessage(errorMsg);
-		setValid(errorMsg == null);
-	}
-
-	@Override
-	protected IPreferenceStore doGetPreferenceStore() {
-		return RelEngPlugin.getDefault().getPreferenceStore();
-	}
-
-	@Override
-	protected void performDefaults() {
-		IPreferenceStore store = getPreferenceStore();
-
-		fEditor.getDocument().set(store.getDefaultString(RelEngCopyrightConstants.COPYRIGHT_TEMPLATE_KEY));
-		fCreationYear.setText(store.getDefaultString(RelEngCopyrightConstants.CREATION_YEAR_KEY));
-		fRevisionYear.setText(store.getDefaultString(RelEngCopyrightConstants.REVISION_YEAR_KEY));
-		fUseDefaultRevisionYear.setSelection(getPreferenceStore().getDefaultBoolean(RelEngCopyrightConstants.USE_DEFAULT_REVISION_YEAR_KEY));
-		fReplaceAllExisting.setSelection(getPreferenceStore().getDefaultBoolean(RelEngCopyrightConstants.REPLACE_ALL_EXISTING_KEY));
-		// disable fix up existing copyright till it works better
-//		handleReplaceAllEnabled(fReplaceAllExisting.getSelection(), getPreferenceStore().getDefaultBoolean(RelEngCopyrightConstants.FIX_UP_EXISTING_KEY));
-		fIgnoreProperties.setSelection(getPreferenceStore().getDefaultBoolean(RelEngCopyrightConstants.IGNORE_PROPERTIES_KEY));
-
-		//[276257] re-enabling xml files
-		fIgnoreXml.setSelection(getPreferenceStore().getDefaultBoolean(RelEngCopyrightConstants.IGNORE_XML_KEY));
-
-		super.performDefaults();
-	}
-
-	@Override
-	public boolean performOk() {
-		IPreferenceStore store = getPreferenceStore();
-
-		store.setValue(RelEngCopyrightConstants.COPYRIGHT_TEMPLATE_KEY, fixupLineDelimiters(fEditor.getDocument()));
-		store.setValue(RelEngCopyrightConstants.CREATION_YEAR_KEY, fCreationYear.getText());
-		store.setValue(RelEngCopyrightConstants.REVISION_YEAR_KEY, fRevisionYear.getText());
-		store.setValue(RelEngCopyrightConstants.USE_DEFAULT_REVISION_YEAR_KEY, fUseDefaultRevisionYear.getSelection());
-		store.setValue(RelEngCopyrightConstants.REPLACE_ALL_EXISTING_KEY, fReplaceAllExisting.getSelection());
-		// disable fix up existing copyright till it works better
-//		store.setValue(RelEngCopyrightConstants.FIX_UP_EXISTING_KEY, fFixExisting.getSelection());
-		store.setValue(RelEngCopyrightConstants.IGNORE_PROPERTIES_KEY, fIgnoreProperties.getSelection());
-
-		//[276257] re-enabling xml files
-		store.setValue(RelEngCopyrightConstants.IGNORE_XML_KEY, fIgnoreXml.getSelection());
-
-		try {
-			InstanceScope.INSTANCE.getNode(RelEngPlugin.ID).flush();
-		} catch (BackingStoreException e) {
-			RelEngPlugin.log(IStatus.ERROR, "could not save preferences", e); //$NON-NLS-1$
-		}
-
-		return super.performOk();
-	}
-
-	/**
-	 * Fix up line delimiters in doc to use only \n
-	 * @param doc
-	 * @return
-	 */
-	private String fixupLineDelimiters(IDocument doc) {
-		String docContents = doc.get();
-		String newText = ""; //$NON-NLS-1$
-		int lineCount = doc.getNumberOfLines();
-		for (int i = 0; i < lineCount; i++) {
-			try {
-				IRegion lineInfo = doc.getLineInformation(i);
-				int lineStartOffset = lineInfo.getOffset();
-				int lineLength = lineInfo.getLength();
-				int lineEndOffset = lineStartOffset + lineLength;
-				newText += docContents.substring(lineStartOffset, lineEndOffset);
-
-				if ((i < lineCount - 1) && (fEditor.getDocument().getLineDelimiter(i) != null))
-					newText += NEW_LINE;
-			}
-			catch (BadLocationException exception) {
-				// exception
-			}
-		}
-		return newText;
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/Messages.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/Messages.java
deleted file mode 100644
index f608a83..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/Messages.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2013 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools.preferences;
-
-import org.eclipse.osgi.util.NLS;
-
-
-final class Messages extends NLS {
-
-	private static final String BUNDLE_NAME = "org.eclipse.releng.tools.preferences.messages"; //$NON-NLS-1$
-
-	public static String PomErrorLevelBlock_mismatched_pom_versions_pref;
-	public static String PomVersionPreferencePage_pom_pref_message;
-
-	static {
-		// initialize resource bundle
-		NLS.initializeMessages(BUNDLE_NAME, Messages.class);
-	}
-
-	private Messages() {
-		// Do not instantiate
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/PomErrorLevelBlock.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/PomErrorLevelBlock.java
deleted file mode 100644
index 2a0d7ad..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/PomErrorLevelBlock.java
+++ /dev/null
@@ -1,397 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2013, 2016 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools.preferences;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.preferences.DefaultScope;
-import org.eclipse.core.runtime.preferences.IEclipsePreferences;
-import org.eclipse.core.runtime.preferences.IScopeContext;
-import org.eclipse.core.runtime.preferences.InstanceScope;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.releng.internal.tools.pomversion.IPomVersionConstants;
-import org.eclipse.releng.tools.RelEngPlugin;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.preferences.IWorkbenchPreferenceContainer;
-import org.eclipse.ui.preferences.IWorkingCopyManager;
-import org.eclipse.ui.preferences.WorkingCopyManager;
-import org.osgi.service.prefs.BackingStoreException;
-
-/**
- * This block is used to add error/warning combos to the {@link PomVersionPreferencePage}
- *
- */
-public class PomErrorLevelBlock extends ConfigurationBlock {
-	/**
-	 * Provides data information for created controls
-	 */
-	protected static class ControlData {
-		Key key;
-		private String[] values;
-
-		/**
-		 * Constructor
-		 * @param key
-		 * @param values
-		 */
-		public ControlData(Key key, String[] values) {
-			this.key = key;
-			this.values = values;
-		}
-
-		public Key getKey() {
-			return key;
-		}
-
-		public String getValue(boolean selection) {
-			int index= selection ? 0 : 1;
-			return values[index];
-		}
-
-		public String getValue(int index) {
-			return values[index];
-		}
-
-		public int getSelection(String value) {
-			if (value != null) {
-				for (int i= 0; i < values.length; i++) {
-					if (value.equals(values[i])) {
-						return i;
-					}
-				}
-			}
-			return values.length -1; // assume the last option is the least severe
-		}
-	}
-
-	/**
-	 * Provides management for changed/stored values for a given preference key
-	 */
-	protected static class Key {
-
-		private String qualifier;
-		private String key;
-
-		/**
-		 * Constructor
-		 * @param qualifier
-		 * @param key
-		 */
-		public Key(String qualifier, String key) {
-			this.qualifier= qualifier;
-			this.key= key;
-		}
-
-		/**
-		 * Returns the {@link IEclipsePreferences} node for the given context and {@link IWorkingCopyManager}
-		 * @param context
-		 * @param manager
-		 * @return the {@link IEclipsePreferences} node or <code>null</code>
-		 */
-		private IEclipsePreferences getNode(IScopeContext context, IWorkingCopyManager manager) {
-			IEclipsePreferences node = context.getNode(qualifier);
-			if (manager != null) {
-				return manager.getWorkingCopy(node);
-			}
-			return node;
-		}
-
-		/**
-		 * Returns the value stored in the {@link IEclipsePreferences} node from the given context and working copy manager
-		 * @param context
-		 * @param manager
-		 * @return the value from the {@link IEclipsePreferences} node or <code>null</code>
-		 */
-		public String getStoredValue(IScopeContext context, IWorkingCopyManager manager) {
-			IEclipsePreferences node = getNode(context, manager);
-			if(node != null) {
-				return node.get(key, null);
-			}
-			return null;
-		}
-
-		/**
-		 * Returns the stored value of this {@link IEclipsePreferences} node using a given lookup order, and allowing the
-		 * top scope to be ignored
-		 * @param lookupOrder
-		 * @param ignoreTopScope
-		 * @param manager
-		 * @return the value from the {@link IEclipsePreferences} node or <code>null</code>
-		 */
-		public String getStoredValue(IScopeContext[] lookupOrder, boolean ignoreTopScope, IWorkingCopyManager manager) {
-			for (int i = ignoreTopScope ? 1 : 0; i < lookupOrder.length; i++) {
-				String value = getStoredValue(lookupOrder[i], manager);
-				if (value != null) {
-					return value;
-				}
-			}
-			return null;
-		}
-
-		/**
-		 * Sets the value of this key
-		 * @param context
-		 * @param value
-		 * @param manager
-		 */
-		public void setStoredValue(IScopeContext context, String value, IWorkingCopyManager manager) {
-			IEclipsePreferences node = getNode(context, manager);
-			if (value != null) {
-				node.put(key, value);
-			} else {
-				node.remove(key);
-			}
-		}
-
-		@Override
-		public String toString() {
-			return qualifier + '/' + key;
-		}
-	}
-
-	private static final Key KEY_POM_VERSION_ERROR_LEVEL = new Key(RelEngPlugin.ID, IPomVersionConstants.POM_VERSION_ERROR_LEVEL);
-
-	/**
-	 * An array of all of the keys for the page
-	 */
-	private static Key[] fgAllKeys = {
-		KEY_POM_VERSION_ERROR_LEVEL
-	};
-
-	/**
-	 * Constant representing the severity values presented in the combo boxes for each option
-	 */
-	private static final String[] SEVERITIES_LABELS = {
-		"Error", //$NON-NLS-1$
-		"Warning", //$NON-NLS-1$
-		"Ignore" //$NON-NLS-1$
-	};
-
-	/**
-	 * Constant representing the severity values presented in the combo boxes for each option
-	 */
-	private static final String[] SEVERITIES = {
-		IPomVersionConstants.VALUE_ERROR,
-		IPomVersionConstants.VALUE_WARNING,
-		IPomVersionConstants.VALUE_IGNORE,
-	};
-
-	/**
-	 * Default selection listener for controls on the page
-	 */
-	private SelectionListener selectionlistener = new SelectionAdapter() {
-		@Override
-		public void widgetSelected(SelectionEvent e) {
-			if(e.widget instanceof Combo) {
-				Combo combo = (Combo) e.widget;
-				ControlData data = (ControlData) combo.getData();
-				data.key.setStoredValue(fLookupOrder[0], combo.getText(), fManager);
-				fDirty = true;
-			}
-		}
-	};
-
-	/**
-	 * Listing of all of the {@link Combo}s added to the block
-	 */
-	private Combo fCombo = null;
-
-	/**
-	 * The context of settings locations to search for values in
-	 */
-	IScopeContext[] fLookupOrder = null;
-
-	/**
-	 * the working copy manager to work with settings
-	 */
-	IWorkingCopyManager fManager = null;
-
-	/**
-	 * The main composite for the configuration block, used for enabling/disabling the block
-	 */
-	private Composite fMainComp = null;
-
-
-	/**
-	 * Flag used to know if the page needs saving or not
-	 */
-	boolean fDirty = false;
-
-	/**
-	 * Constructor
-	 * @param project
-	 */
-	public PomErrorLevelBlock(IWorkbenchPreferenceContainer container) {
-		fLookupOrder = new IScopeContext[] {
-			InstanceScope.INSTANCE,
-			DefaultScope.INSTANCE
-		};
-		if(container == null) {
-			fManager = new WorkingCopyManager();
-		}
-		else {
-			fManager = container.getWorkingCopyManager();
-		}
-	}
-
-	/**
-	 * Creates the control in the parent control
-	 *
-	 * @param parent the parent control
-	 */
-	public Control createControl(Composite parent) {
-		fMainComp = new Composite(parent, SWT.NONE);
-		GridLayout gl = new GridLayout(2, false);
-		gl.marginHeight = 0;
-		gl.marginWidth = 0;
-		fMainComp.setLayout(gl);
-		fMainComp.setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, true, false));
-		fMainComp.setFont(parent.getFont());
-		this.fCombo = createComboControl(fMainComp, Messages.PomErrorLevelBlock_mismatched_pom_versions_pref, KEY_POM_VERSION_ERROR_LEVEL);
-		Dialog.applyDialogFont(fMainComp);
-		return fMainComp;
-	}
-
-	/**
-	 * Saves all of the changes on the page
-	 */
-	public void performOK()  {
-		save();
-	}
-
-	/**
-	 * Directly applies all of the changes on the page
-	 */
-	public void performApply() {
-		save();
-	}
-
-	/**
-	 * Performs the save operation on the working copy manager
-	 */
-	private void save() {
-		if(fDirty) {
-			try {
-				ArrayList<Key> changes = new ArrayList<>();
-				collectChanges(fLookupOrder[0], changes);
-				if(changes.size() > 0) {
-					fManager.applyChanges();
-				}
-				fDirty = false;
-			}
-			catch(BackingStoreException bse) {
-				RelEngPlugin.log(new Status(IStatus.ERROR, RelEngPlugin.ID, bse.getMessage(), bse));
-			}
-		}
-	}
-
-	/**
-	 * Cancels all of the changes on the page
-	 */
-	public void performCancel() {}
-
-	/**
-	 * Reverts all of the settings back to their defaults
-	 */
-	public void performDefaults() {
-		String defval = null;
-		for(int i = 0; i < fgAllKeys.length; i++) {
-			defval = fgAllKeys[i].getStoredValue(fLookupOrder, true, fManager);
-			fgAllKeys[i].setStoredValue(fLookupOrder[0], defval, fManager);
-		}
-		updateCombos();
-		fDirty = true;
-	}
-
-	/**
-	 * Updates all of the registered {@link Combo}s on the page.
-	 * Registration implies that the {@link Combo} control was added to the listing
-	 * of fCombos
-	 */
-	private void updateCombos() {
-		if (this.fCombo != null) {
-			ControlData data = (ControlData) fCombo.getData();
-			this.fCombo.select(data.getSelection(data.getKey().getStoredValue(fLookupOrder, false, fManager)));
-		}
-	}
-
-	/**
-	 * Disposes the controls from this page
-	 */
-	public void dispose() {
-		fMainComp.getParent().dispose();
-	}
-
-	/**
-	 * Creates a {@link Label} | {@link Combo} control. The combo is initialised from the given {@link Key}
-	 * @param parent
-	 * @param label
-	 * @param key
-	 */
-	protected Combo createComboControl(Composite parent, String label, Key key) {
-		Label lbl = new Label(parent, SWT.NONE);
-		GridData gd = new GridData(GridData.BEGINNING, GridData.CENTER, true, false);
-		lbl.setLayoutData(gd);
-		lbl.setText(label);
-		Combo combo = new Combo(parent, SWT.DROP_DOWN | SWT.READ_ONLY);
-		gd = new GridData(GridData.END, GridData.CENTER, false, false);
-		combo.setLayoutData(gd);
-		ControlData data = new ControlData(key, SEVERITIES);
-		combo.setData(data);
-		combo.setItems(SEVERITIES_LABELS);
-		combo.addSelectionListener(selectionlistener);
-		combo.select(data.getSelection(key.getStoredValue(fLookupOrder, false, fManager)));
-		addHighlight(parent, lbl, combo);
-		return combo;
-	}
-
-	/**
-	 * Collects the keys that have changed on the page into the specified list
-	 * @param changes the {@link List} to collect changed keys into
-	 */
-	private void collectChanges(IScopeContext context, List<Key> changes) {
-		String origval = null,
-			   newval = null;
-		for (Key key : fgAllKeys) {
-			origval = key.getStoredValue(context, null);
-			newval = key.getStoredValue(context, fManager);
-			if(newval == null) {
-				if(origval != null) {
-					changes.add(key);
-				}
-					key.setStoredValue(context, key.getStoredValue(fLookupOrder, true, fManager), fManager);
-					changes.add(key);
-			}
-			else if(!newval.equals(origval)) {
-				changes.add(key);
-			}
-		}
-	}
-
-	public static Key[] getAllKeys() {
-		return fgAllKeys;
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/PomVersionPreferencePage.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/PomVersionPreferencePage.java
deleted file mode 100644
index 18feb37..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/PomVersionPreferencePage.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2013, 2016 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools.preferences;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.preference.PreferencePage;
-import org.eclipse.releng.tools.RelEngPlugin;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPreferencePage;
-import org.eclipse.ui.preferences.IWorkbenchPreferenceContainer;
-
-/**
- * This preference page allows the error level of the POM version tool to be set
- */
-public class PomVersionPreferencePage extends PreferencePage implements
-		IWorkbenchPreferencePage {
-
-	public static final String ID = RelEngPlugin.ID + "PomVersionPreferencePage"; //$NON-NLS-1$
-
-	/**
-	 * The main configuration block for the page
-	 */
-	private PomErrorLevelBlock block = null;
-
-	@Override
-	protected Control createContents(Composite parent) {
-		Composite comp = new Composite(parent, SWT.NONE);
-		GridLayout gl = new GridLayout();
-		gl.marginHeight = 0;
-		gl.marginWidth = 0;
-		comp.setLayout(gl);
-		comp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
-
-		Label label = new Label(comp, SWT.WRAP);
-		GridData gd = new GridData(SWT.FILL, SWT.BEGINNING, true, false);
-		gd.widthHint = 400;
-		label.setLayoutData(gd);
-		label.setText(Messages.PomVersionPreferencePage_pom_pref_message);
-		label.setFont(comp.getFont());
-
-		block = new PomErrorLevelBlock((IWorkbenchPreferenceContainer)getContainer());
-		block.createControl(comp);
-		Dialog.applyDialogFont(comp);
-		return comp;
-	}
-
-	@Override
-	public void init(IWorkbench workbench) {
-	}
-
-	@Override
-	public boolean performCancel() {
-		if (this.block != null) {
-			this.block.performCancel();
-		}
-		return super.performCancel();
-	}
-
-	@Override
-	public boolean performOk() {
-		this.block.performOK();
-		return true;
-	}
-
-	@Override
-	protected void performApply() {
-		this.block.performApply();
-	}
-
-	@Override
-	protected void performDefaults() {
-		this.block.performDefaults();
-	}
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/RelEngCopyrightConstants.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/RelEngCopyrightConstants.java
deleted file mode 100644
index 17a92ba..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/RelEngCopyrightConstants.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2014 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools.preferences;
-
-/**
- * Contains all the constants used by the releng copyright tool
- */
-public class RelEngCopyrightConstants {
-	public final static String COPYRIGHT_TEMPLATE_KEY = "org.eclipse.releng.tools.copyrightTemplate"; //$NON-NLS-1$
-	public final static String CREATION_YEAR_KEY = "org.eclipse.releng.tools.creationYear"; //$NON-NLS-1$
-	public final static String REVISION_YEAR_KEY = "org.eclipse.releng.tools.revisionYear"; //$NON-NLS-1$
-	public final static String USE_DEFAULT_REVISION_YEAR_KEY = "org.eclipse.releng.tools.useDefaultRevisionYear"; //$NON-NLS-1$
-	// disable fix up existing copyright till it works better
-//	public final static String FIX_UP_EXISTING_KEY = "org.eclipse.releng.tools.fixUpExisting"; //$NON-NLS-1$
-	public final static String REPLACE_ALL_EXISTING_KEY = "org.eclipse.releng.tools.replaceAllExisting"; //$NON-NLS-1$
-	public final static String IGNORE_PROPERTIES_KEY = "org.eclipse.releng.tools.ignoreProperties"; //$NON-NLS-1$
-	public final static String IGNORE_XML_KEY = "org.eclipse.releng.tools.ignoreXml"; //$NON-NLS-1$
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/RelEngPreferenceInitializer.java b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/RelEngPreferenceInitializer.java
deleted file mode 100644
index 1a2cade..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/RelEngPreferenceInitializer.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2013 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.releng.tools.preferences;
-
-import java.util.Calendar;
-
-import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.releng.internal.tools.pomversion.IPomVersionConstants;
-import org.eclipse.releng.tools.Messages;
-import org.eclipse.releng.tools.RelEngPlugin;
-
-/**
- * Initializes default preferences for release engineering tool
- */
-public class RelEngPreferenceInitializer extends AbstractPreferenceInitializer {
-	private final String LEGAL_LINE = Messages.getString("RelEngPreferenceInitializer.0"); //$NON-NLS-1$
-
-	@Override
-	public void initializeDefaultPreferences() {
-		IPreferenceStore store = RelEngPlugin.getDefault().getPreferenceStore();
-		int year = Calendar.getInstance().get(Calendar.YEAR);
-		store.setDefault(RelEngCopyrightConstants.COPYRIGHT_TEMPLATE_KEY, LEGAL_LINE);
-		store.setDefault(RelEngCopyrightConstants.CREATION_YEAR_KEY, year);
-		store.setDefault(RelEngCopyrightConstants.REVISION_YEAR_KEY, year);
-		store.setDefault(RelEngCopyrightConstants.USE_DEFAULT_REVISION_YEAR_KEY, false);
-		// disable fix up existing copyright till it works better
-//        store.setDefault(RelEngCopyrightConstants.FIX_UP_EXISTING_KEY, false);
-		store.setDefault(RelEngCopyrightConstants.REPLACE_ALL_EXISTING_KEY, false);
-		store.setDefault(RelEngCopyrightConstants.IGNORE_PROPERTIES_KEY, false);
-		store.setDefault(RelEngCopyrightConstants.IGNORE_XML_KEY, false);
-
-		store.setDefault(IPomVersionConstants.POM_VERSION_ERROR_LEVEL, IPomVersionConstants.VALUE_ERROR);
-	}
-
-}
diff --git a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/messages.properties b/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/messages.properties
deleted file mode 100644
index 168baa3..0000000
--- a/bundles/org.eclipse.releng.tools/src/org/eclipse/releng/tools/preferences/messages.properties
+++ /dev/null
@@ -1,16 +0,0 @@
-###############################################################################
-# Copyright (c) 2013 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-PomErrorLevelBlock_mismatched_pom_versions_pref=&Mismatched plug-in and pom.xml version numbers
-PomVersionPreferencePage_pom_pref_message=The POM Version tool will compare the artifact version in a pom.xml file at the root of the project to the plug-in version in the manifest. If the two versions do not match a problem marker will be created. The severity of this problem can be configured on this page.
diff --git a/bundles/org.eclipse.test.performance.ui/.classpath b/bundles/org.eclipse.test.performance.ui/.classpath
deleted file mode 100644
index e801ebf..0000000
--- a/bundles/org.eclipse.test.performance.ui/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/bundles/org.eclipse.test.performance.ui/.gitignore b/bundles/org.eclipse.test.performance.ui/.gitignore
deleted file mode 100644
index c388520..0000000
--- a/bundles/org.eclipse.test.performance.ui/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-/bin
-/target
-*.jpage
\ No newline at end of file
diff --git a/bundles/org.eclipse.test.performance.ui/.project b/bundles/org.eclipse.test.performance.ui/.project
index 857c94e..b608c59 100644
--- a/bundles/org.eclipse.test.performance.ui/.project
+++ b/bundles/org.eclipse.test.performance.ui/.project
@@ -1,33 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <projectDescription>
-    <name>org.eclipse.test.performance.ui</name>
-    <comment></comment>
-    <projects>
-    </projects>
-    <buildSpec>
-        <buildCommand>
-            <name>org.eclipse.jdt.core.javabuilder</name>
-            <arguments>
-            </arguments>
-        </buildCommand>
-        <buildCommand>
-            <name>org.eclipse.pde.ManifestBuilder</name>
-            <arguments>
-            </arguments>
-        </buildCommand>
-        <buildCommand>
-            <name>org.eclipse.pde.SchemaBuilder</name>
-            <arguments>
-            </arguments>
-        </buildCommand>
-        <buildCommand>
-            <name>org.eclipse.wst.validation.validationbuilder</name>
-            <arguments>
-            </arguments>
-        </buildCommand>
-    </buildSpec>
-    <natures>
-        <nature>org.eclipse.pde.PluginNature</nature>
-        <nature>org.eclipse.jdt.core.javanature</nature>
-    </natures>
+	<name>org.eclipse.test.performance.ui</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.wst.validation.validationbuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
 </projectDescription>
diff --git a/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.core.resources.prefs b/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.core.runtime.prefs b/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.jdt.core.prefs b/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index d751ad5..0000000
--- a/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,510 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.codeComplete.argumentPrefixes=
-org.eclipse.jdt.core.codeComplete.argumentSuffixes=
-org.eclipse.jdt.core.codeComplete.fieldPrefixes=
-org.eclipse.jdt.core.codeComplete.fieldSuffixes=
-org.eclipse.jdt.core.codeComplete.localPrefixes=
-org.eclipse.jdt.core.codeComplete.localSuffixes=
-org.eclipse.jdt.core.codeComplete.staticFieldPrefixes=
-org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
-org.eclipse.jdt.core.codeComplete.staticFinalFieldPrefixes=
-org.eclipse.jdt.core.codeComplete.staticFinalFieldSuffixes=
-org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
-org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
-org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
-org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
-org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullanalysis=enabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=11
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.APILeak=warning
-org.eclipse.jdt.core.compiler.problem.annotatedTypeArgumentToUnannotated=info
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=warning
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=enabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
-org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=warning
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
-org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
-org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
-org.eclipse.jdt.core.compiler.problem.nullReference=error
-org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
-org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=error
-org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.suppressWarningsNotFullyAnalysed=info
-org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.terminalDeprecation=warning
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=disabled
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentType=warning
-org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentTypeStrict=disabled
-org.eclipse.jdt.core.compiler.problem.unlikelyEqualsArgumentType=info
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unstableAutoModuleName=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=warning
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.release=enabled
-org.eclipse.jdt.core.compiler.source=11
-org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false
-org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.align_variable_declarations_on_columns=false
-org.eclipse.jdt.core.formatter.align_with_spaces=false
-org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_loops=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression_chain=0
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
-org.eclipse.jdt.core.formatter.alignment_for_logical_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
-org.eclipse.jdt.core.formatter.alignment_for_module_statements=16
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_record_components=16
-org.eclipse.jdt.core.formatter.alignment_for_relational_operator=0
-org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_shift_operator=0
-org.eclipse.jdt.core.formatter.alignment_for_string_concatenation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_record_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
-org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
-org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_last_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_abstract_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=0
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_statement_group_in_switch=0
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_record_constructor=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_record_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.align_tags_descriptions_grouped=true
-org.eclipse.jdt.core.formatter.comment.align_tags_names_descriptions=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=true
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=true
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=false
-org.eclipse.jdt.core.formatter.comment.indent_tag_description=false
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_between_different_tags=do not insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
-org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
-org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
-org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=false
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_record_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_default=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_record_components=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_switch_case_expressions=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_after_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_not_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_record_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
-org.eclipse.jdt.core.formatter.insert_space_after_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_case=insert
-org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_default=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_record_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_record_components=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_switch_case_expressions=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_before_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_constructor=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_record_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.join_lines_in_comments=true
-org.eclipse.jdt.core.formatter.join_wrapped_lines=true
-org.eclipse.jdt.core.formatter.keep_annotation_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_anonymous_type_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_code_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_enum_constant_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_enum_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_if_then_body_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_lambda_body_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_loop_body_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_method_body_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_record_constructor_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_record_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_simple_do_while_body_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_simple_for_body_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_simple_getter_setter_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_simple_while_body_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_type_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.lineSplit=120
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_after_code_block=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_code_block=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_code_block=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_before_code_block=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_record_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=tab
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.text_block_indentation=0
-org.eclipse.jdt.core.formatter.use_on_off_tags=false
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_additive_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
-org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
-org.eclipse.jdt.core.formatter.wrap_before_relational_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_shift_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
-org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
-org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.jdt.ui.prefs b/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 90e7a79..0000000
--- a/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,141 +0,0 @@
-cleanup.add_default_serial_version_id=false
-cleanup.add_generated_serial_version_id=true
-cleanup.add_missing_annotations=true
-cleanup.add_missing_deprecated_annotations=true
-cleanup.add_missing_methods=true
-cleanup.add_missing_nls_tags=false
-cleanup.add_missing_override_annotations=true
-cleanup.add_missing_override_annotations_interface_methods=true
-cleanup.add_serial_version_id=true
-cleanup.always_use_blocks=true
-cleanup.always_use_parentheses_in_expressions=true
-cleanup.always_use_this_for_non_static_field_access=false
-cleanup.always_use_this_for_non_static_method_access=false
-cleanup.convert_functional_interfaces=false
-cleanup.convert_to_enhanced_for_loop=false
-cleanup.correct_indentation=true
-cleanup.format_source_code=true
-cleanup.format_source_code_changes_only=false
-cleanup.insert_inferred_type_arguments=false
-cleanup.make_local_variable_final=true
-cleanup.make_parameters_final=true
-cleanup.make_private_fields_final=true
-cleanup.make_type_abstract_if_missing_method=false
-cleanup.make_variable_declarations_final=true
-cleanup.never_use_blocks=false
-cleanup.never_use_parentheses_in_expressions=false
-cleanup.organize_imports=true
-cleanup.qualify_static_field_accesses_with_declaring_class=false
-cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-cleanup.qualify_static_member_accesses_with_declaring_class=true
-cleanup.qualify_static_method_accesses_with_declaring_class=false
-cleanup.remove_private_constructors=true
-cleanup.remove_redundant_type_arguments=true
-cleanup.remove_trailing_whitespaces=true
-cleanup.remove_trailing_whitespaces_all=true
-cleanup.remove_trailing_whitespaces_ignore_empty=false
-cleanup.remove_unnecessary_casts=true
-cleanup.remove_unnecessary_nls_tags=true
-cleanup.remove_unused_imports=true
-cleanup.remove_unused_local_variables=false
-cleanup.remove_unused_private_fields=false
-cleanup.remove_unused_private_members=true
-cleanup.remove_unused_private_methods=false
-cleanup.remove_unused_private_types=true
-cleanup.sort_members=true
-cleanup.sort_members_all=false
-cleanup.use_anonymous_class_creation=false
-cleanup.use_blocks=true
-cleanup.use_blocks_only_for_return_and_throw=false
-cleanup.use_lambda=true
-cleanup.use_parentheses_in_expressions=true
-cleanup.use_this_for_non_static_field_access=true
-cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-cleanup.use_this_for_non_static_method_access=true
-cleanup.use_this_for_non_static_method_access_only_if_necessary=true
-cleanup.use_type_arguments=false
-cleanup_profile=_Eclipse Releng
-cleanup_settings_version=2
-eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_profile=org.eclipse.jdt.ui.default.eclipse_profile
-formatter_settings_version=19
-org.eclipse.jdt.ui.exception.name=e
-org.eclipse.jdt.ui.gettersetter.use.is=true
-org.eclipse.jdt.ui.ignorelowercasenames=true
-org.eclipse.jdt.ui.importorder=java;javax;org;com;
-org.eclipse.jdt.ui.javadoc=false
-org.eclipse.jdt.ui.keywordthis=false
-org.eclipse.jdt.ui.ondemandthreshold=99
-org.eclipse.jdt.ui.overrideannotation=true
-org.eclipse.jdt.ui.staticondemandthreshold=99
-org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\n * \n */</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="true" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/* (non-Javadoc)\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
-sp_cleanup.add_default_serial_version_id=true
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_methods=false
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_missing_override_annotations_interface_methods=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=true
-sp_cleanup.always_use_parentheses_in_expressions=false
-sp_cleanup.always_use_this_for_non_static_field_access=false
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_functional_interfaces=true
-sp_cleanup.convert_to_enhanced_for_loop=true
-sp_cleanup.correct_indentation=false
-sp_cleanup.format_source_code=false
-sp_cleanup.format_source_code_changes_only=false
-sp_cleanup.insert_inferred_type_arguments=false
-sp_cleanup.lazy_logical_operator=false
-sp_cleanup.make_local_variable_final=true
-sp_cleanup.make_parameters_final=false
-sp_cleanup.make_private_fields_final=true
-sp_cleanup.make_type_abstract_if_missing_method=false
-sp_cleanup.make_variable_declarations_final=false
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=true
-sp_cleanup.number_suffix=false
-sp_cleanup.on_save_use_additional_actions=true
-sp_cleanup.organize_imports=true
-sp_cleanup.push_down_negation=false
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=true
-sp_cleanup.remove_redundant_modifiers=true
-sp_cleanup.remove_redundant_semicolons=true
-sp_cleanup.remove_redundant_type_arguments=true
-sp_cleanup.remove_trailing_whitespaces=true
-sp_cleanup.remove_trailing_whitespaces_all=true
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
-sp_cleanup.remove_unnecessary_array_creation=true
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=true
-sp_cleanup.remove_unused_imports=true
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=true
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=true
-sp_cleanup.remove_unused_private_types=true
-sp_cleanup.simplify_lambda_expression_and_method_ref=true
-sp_cleanup.sort_members=false
-sp_cleanup.sort_members_all=false
-sp_cleanup.use_anonymous_class_creation=false
-sp_cleanup.use_autoboxing=false
-sp_cleanup.use_blocks=false
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_directly_map_method=false
-sp_cleanup.use_lambda=true
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=false
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
-sp_cleanup.use_this_for_non_static_method_access=false
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
-sp_cleanup.use_unboxing=false
-sp_cleanup.use_var=false
diff --git a/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.pde.prefs b/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index ba85338..0000000
--- a/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,32 +0,0 @@
-compilers.f.unresolved-features=1
-compilers.f.unresolved-plugins=1
-compilers.incompatible-environment=0
-compilers.p.build=1
-compilers.p.build.bin.includes=1
-compilers.p.build.encodings=2
-compilers.p.build.java.compiler=2
-compilers.p.build.java.compliance=1
-compilers.p.build.missing.output=2
-compilers.p.build.output.library=1
-compilers.p.build.source.library=1
-compilers.p.build.src.includes=1
-compilers.p.deprecated=1
-compilers.p.discouraged-class=1
-compilers.p.internal=1
-compilers.p.missing-packages=0
-compilers.p.missing-version-export-package=2
-compilers.p.missing-version-import-package=2
-compilers.p.missing-version-require-bundle=2
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=1
-compilers.p.unknown-attribute=0
-compilers.p.unknown-class=0
-compilers.p.unknown-element=0
-compilers.p.unknown-identifier=1
-compilers.p.unknown-resource=0
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.s.create-docs=false
-compilers.s.doc-folder=doc
-compilers.s.open-tags=1
-eclipse.preferences.version=1
diff --git a/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.wst.validation.prefs b/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.wst.validation.prefs
deleted file mode 100644
index 8ba670c..0000000
--- a/bundles/org.eclipse.test.performance.ui/.settings/org.eclipse.wst.validation.prefs
+++ /dev/null
@@ -1,8 +0,0 @@
-DELEGATES_PREFERENCE=delegateValidatorList
-USER_BUILD_PREFERENCE=enabledBuildValidatorList
-USER_MANUAL_PREFERENCE=enabledManualValidatorList
-USER_PREFERENCE=overrideGlobalPreferencestruedisableAllValidationfalseversion1.2.700.v201508251749
-eclipse.preferences.version=1
-override=true
-suspend=false
-vf.version=3
diff --git a/bundles/org.eclipse.test.performance.ui/META-INF/MANIFEST.MF b/bundles/org.eclipse.test.performance.ui/META-INF/MANIFEST.MF
deleted file mode 100644
index 8499858..0000000
--- a/bundles/org.eclipse.test.performance.ui/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,19 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %Bundle-Name
-Bundle-SymbolicName: org.eclipse.test.performance.ui; singleton:=true
-Bundle-Version: 3.10.0.qualifier
-Bundle-ClassPath: .
-Bundle-ActivationPolicy: lazy
-Bundle-Vendor: %Bundle-Vendor
-Bundle-Localization: plugin
-Require-Bundle: org.eclipse.core.runtime,
- org.junit,
- org.eclipse.test.performance;bundle-version="3.14.0",
- org.eclipse.swt;bundle-version="3.5.0";resolution:=optional
-Bundle-RequiredExecutionEnvironment: JavaSE-11
-Export-Package: org.eclipse.test.internal.performance.results.db;x-internal:=true,
- org.eclipse.test.internal.performance.results.ui;x-internal:=true,
- org.eclipse.test.internal.performance.results.utils;x-internal:=true,
- org.eclipse.test.performance.ui
-Automatic-Module-Name: org.eclipse.test.performance.ui
diff --git a/bundles/org.eclipse.test.performance.ui/about.html b/bundles/org.eclipse.test.performance.ui/about.html
deleted file mode 100644
index 8caed82..0000000
--- a/bundles/org.eclipse.test.performance.ui/about.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<meta name="copyright" content="Copyright (c) IBM Corporation and others 2000, 2005. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." >
-<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>February 24, 2005</p>    
-<h3>License</h3>
-
-<p>The Eclipse Foundation 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
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content.  Check the Redistributor's license that was provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.test.performance.ui/bin/.project b/bundles/org.eclipse.test.performance.ui/bin/.project
new file mode 100644
index 0000000..b608c59
--- /dev/null
+++ b/bundles/org.eclipse.test.performance.ui/bin/.project
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.test.performance.ui</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.wst.validation.validationbuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/bundles/org.eclipse.test.performance.ui/build.properties b/bundles/org.eclipse.test.performance.ui/build.properties
deleted file mode 100644
index 8519760..0000000
--- a/bundles/org.eclipse.test.performance.ui/build.properties
+++ /dev/null
@@ -1,28 +0,0 @@
-###############################################################################
-# Copyright (c) 2003, 2006 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-bin.includes = about.html,\
-               META-INF/,\
-               images/,\
-               plugin.xml,\
-               readme.html,\
-               scripts/,\
-               icons/,\
-               doc/,\
-               plugin.properties,\
-               .
-src.includes = about.html,\
-               doc/,\
-               icons/,\
-               images/,\
-               readme.html,\
-               scripts/
-source.. = src/
diff --git a/bundles/org.eclipse.test.performance.ui/doc/help.html b/bundles/org.eclipse.test.performance.ui/doc/help.html
deleted file mode 100644
index 54f914c..0000000
--- a/bundles/org.eclipse.test.performance.ui/doc/help.html
+++ /dev/null
@@ -1,173 +0,0 @@
-<html>
-<head>
-<meta
-  http-equiv="Content-Type"
-  content="text/html; charset=iso-8859-1">
-<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
-}
-
-.indextop {
-     font-size: x-large;;
-     font-family: Verdana, Arial, Helvetica, sans-serif;
-     font-weight: bold
-}
-
-.indexsub {
-     font-size: xx-small;;
-     font-family: Arial, Helvetica, sans-serif;
-     color: #8080FF
-}
-</style>
-<body>
-
-  <h1>Table of contents</h1>
-  <ul>
-    <li><a href="#scales">Scales</a>
-      <ul>
-        <li><a href="#percent">Percentage</a></li>
-        <li><a href="#time">Time linear</a></li>
-        <li><a href="#time">Time logarithmic</a></li>
-      </ul></li>
-    <li><a href="#tips">Tips for time scales</a></li>
-  </ul>
-  <h1 id="scales">Scales></h1>
-  Since 3.5, it's possible to see results in fingerprints with three different kinds of scale.
-  <h3 id="percent">Percentage scale</h3>
-  <p>The X axis represents percentage of the variation vs. the given baseline</p>
-  <p>
-    This is the way fingerprints were displayed since the beginning: <img src="images/percentage.png">
-  </p>
-  <ul>
-    <li>Red bar means a regression, even if it's less than the 10% threshold.</li>
-    <li>Green bar means an improvement</li>
-    <li>Gray bar means an 'explained' regression.</li>
-  </ul>
-  <h3 id="time">Linear and logarithmic time scales</h3>
-  <p>
-    For these scales, the X axis represents the duration time of the test.<br> The colors meanings are the same than for the percentage scale.<br> These kind of graphs give a better idea of
-    time duration for each test.
-  </p>
-  <p>Typically use linear scale if you want to see the tests relativeness for all the component tests:</p>
-  <p>
-    <img src="images/linear.png">
-  <p>But the logarithmic scale is more appropriate when there are a strong duration differences between tests, hence makes short duration tests easier to survey:</p>
-  <p>
-    <img src="images/log.png">
-  <p>
-    Each test have two bars: the former is white and shows the baseline result, the latter is colored (red, green or gray) and shows the current build result.<br> The variation between the
-    baseline and the build is displayed as a percentage on top of both bars.
-  </p>
-  <h1 id="tips">Tips for time scales</h1>
-  <p>Tips are almost the same for linear and logarithmic scales:</p>
-  <table style="border: 0" >
-    <tr>
-      <td valign="top"><img src="../images/light.gif"></td>
-      <td><b>Flying over a bar displays its time value</b>:</td>
-    </tr>
-    <tr>
-      <td></td>
-      <td><img src="images/help_time_baseline.png"></td>
-    </tr>
-    <tr>
-      <td></td>
-      <td><img src="images/help_time_current.png"></td>
-    </tr>
-    <tr>
-      <td><br></td>
-    </tr>
-    <tr>
-      <td valign="top"><img src="../images/light.gif"></td>
-      <td><b>For linear scale only, when the error on the time result is noticeable, then the measurement uncertainty is shown in yellow at the end of the bar</b>:</td>
-    </tr>
-    <tr>
-      <td></td>
-      <td><img src="images/help_time_error.png"></td>
-    </tr>
-    <tr>
-      <td><br></td>
-    </tr>
-    <tr>
-      <td valign="top"><img src="../images/light.gif"></td>
-      <td><b>A performance regression may sometimes have a known good reason</b>.<br> In this case, the current build bar is grayed and flying over it also shows the given explanation:</td>
-    </tr>
-    <tr>
-      <td></td>
-      <td><img src="images/help_explained_regression.png"></td>
-    </tr>
-    <tr>
-      <td><br></td>
-    </tr>
-    <tr>
-      <td valign="top"><img src="../images/light.gif"></td>
-      <td><b>Test result may have big error which can make the test result not fully reliable</b>.<br> In this case, a warning icon is shown after the variation value and flying over it
-        gives the offending error value:</td>
-    </tr>
-    <tr>
-      <td></td>
-      <td><img src="images/help_error_warning.png"></td>
-    </tr>
-    <tr>
-      <td><br></td>
-    </tr>
-    <tr>
-      <td valign="top"><img src="../images/light.gif"></td>
-      <td><b>Test may have no result for the used baseline, hence the first available build is used as a reference</b>.<br> In this case, a warning icon is shown after the scenario title and
-        flying over it gives the build ID used to compute the variation:</td>
-    </tr>
-    <tr>
-      <td></td>
-      <td><img src="images/help_no_baseline.png"></td>
-    </tr>
-  </table>
-</body>
-</html>
diff --git a/bundles/org.eclipse.test.performance.ui/doc/images/help_error_warning.png b/bundles/org.eclipse.test.performance.ui/doc/images/help_error_warning.png
deleted file mode 100644
index 399acaf..0000000
--- a/bundles/org.eclipse.test.performance.ui/doc/images/help_error_warning.png
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/doc/images/help_explained_regression.png b/bundles/org.eclipse.test.performance.ui/doc/images/help_explained_regression.png
deleted file mode 100644
index a7b7c84..0000000
--- a/bundles/org.eclipse.test.performance.ui/doc/images/help_explained_regression.png
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/doc/images/help_no_baseline.png b/bundles/org.eclipse.test.performance.ui/doc/images/help_no_baseline.png
deleted file mode 100644
index f06762e..0000000
--- a/bundles/org.eclipse.test.performance.ui/doc/images/help_no_baseline.png
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/doc/images/help_time_baseline.png b/bundles/org.eclipse.test.performance.ui/doc/images/help_time_baseline.png
deleted file mode 100644
index 594fdf2..0000000
--- a/bundles/org.eclipse.test.performance.ui/doc/images/help_time_baseline.png
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/doc/images/help_time_current.png b/bundles/org.eclipse.test.performance.ui/doc/images/help_time_current.png
deleted file mode 100644
index 5e913cb..0000000
--- a/bundles/org.eclipse.test.performance.ui/doc/images/help_time_current.png
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/doc/images/help_time_error.png b/bundles/org.eclipse.test.performance.ui/doc/images/help_time_error.png
deleted file mode 100644
index 2ce272d..0000000
--- a/bundles/org.eclipse.test.performance.ui/doc/images/help_time_error.png
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/doc/images/linear.png b/bundles/org.eclipse.test.performance.ui/doc/images/linear.png
deleted file mode 100644
index cd276a9..0000000
--- a/bundles/org.eclipse.test.performance.ui/doc/images/linear.png
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/doc/images/log.png b/bundles/org.eclipse.test.performance.ui/doc/images/log.png
deleted file mode 100644
index 7f2e84a..0000000
--- a/bundles/org.eclipse.test.performance.ui/doc/images/log.png
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/doc/images/percentage.png b/bundles/org.eclipse.test.performance.ui/doc/images/percentage.png
deleted file mode 100644
index 6f965da..0000000
--- a/bundles/org.eclipse.test.performance.ui/doc/images/percentage.png
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/icons/builds.gif b/bundles/org.eclipse.test.performance.ui/icons/builds.gif
deleted file mode 100644
index cb55e33..0000000
--- a/bundles/org.eclipse.test.performance.ui/icons/builds.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/icons/compare_view.gif b/bundles/org.eclipse.test.performance.ui/icons/compare_view.gif
deleted file mode 100644
index dc549bc..0000000
--- a/bundles/org.eclipse.test.performance.ui/icons/compare_view.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/icons/components.gif b/bundles/org.eclipse.test.performance.ui/icons/components.gif
deleted file mode 100644
index 2344861..0000000
--- a/bundles/org.eclipse.test.performance.ui/icons/components.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/icons/perfs.gif b/bundles/org.eclipse.test.performance.ui/icons/perfs.gif
deleted file mode 100644
index 3bd4e36..0000000
--- a/bundles/org.eclipse.test.performance.ui/icons/perfs.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/icons/results.gif b/bundles/org.eclipse.test.performance.ui/icons/results.gif
deleted file mode 100644
index 0193dbe..0000000
--- a/bundles/org.eclipse.test.performance.ui/icons/results.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/icons/sample.gif b/bundles/org.eclipse.test.performance.ui/icons/sample.gif
deleted file mode 100644
index 34fb3c9..0000000
--- a/bundles/org.eclipse.test.performance.ui/icons/sample.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/images/FAIL.gif b/bundles/org.eclipse.test.performance.ui/images/FAIL.gif
deleted file mode 100644
index c65be5a..0000000
--- a/bundles/org.eclipse.test.performance.ui/images/FAIL.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/images/FAIL_caution.gif b/bundles/org.eclipse.test.performance.ui/images/FAIL_caution.gif
deleted file mode 100644
index d2680d7..0000000
--- a/bundles/org.eclipse.test.performance.ui/images/FAIL_caution.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/images/FAIL_greyed.gif b/bundles/org.eclipse.test.performance.ui/images/FAIL_greyed.gif
deleted file mode 100644
index 1d80a8d..0000000
--- a/bundles/org.eclipse.test.performance.ui/images/FAIL_greyed.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/images/OK.gif b/bundles/org.eclipse.test.performance.ui/images/OK.gif
deleted file mode 100644
index be6df8d..0000000
--- a/bundles/org.eclipse.test.performance.ui/images/OK.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/images/OK_caution.gif b/bundles/org.eclipse.test.performance.ui/images/OK_caution.gif
deleted file mode 100644
index b5af61f..0000000
--- a/bundles/org.eclipse.test.performance.ui/images/OK_caution.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/images/Unknown.gif b/bundles/org.eclipse.test.performance.ui/images/Unknown.gif
deleted file mode 100644
index 1f69b55..0000000
--- a/bundles/org.eclipse.test.performance.ui/images/Unknown.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/images/descriptions.html b/bundles/org.eclipse.test.performance.ui/images/descriptions.html
deleted file mode 100644
index d2fed86..0000000
--- a/bundles/org.eclipse.test.performance.ui/images/descriptions.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">
-        <title>Descriptions</title>
-    </head>
-
-<body bgcolor="#FFFFFF" text="#000000">
-<p><a name="fp"></a><font size="+2"><b>Fingerprint Example</b></font></p>
-<p><img src="fp.bmp"> </p>
-<p>&nbsp;</p><hr>
-<p><a name="sst"></a><font size="+2"><b>Scenario Status Table Example</b></font></p>
-<p><img src="sst.bmp"></p>
-<p>&nbsp;</p><hr>
-<p><a name="sr"></a><b><font size="+2">Scenario Results Example</font></b></p>
-<p><img src="sr.bmp"></p>
-</body>
-</html>
diff --git a/bundles/org.eclipse.test.performance.ui/images/fp.bmp b/bundles/org.eclipse.test.performance.ui/images/fp.bmp
deleted file mode 100644
index 1d7863e..0000000
--- a/bundles/org.eclipse.test.performance.ui/images/fp.bmp
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/images/light.gif b/bundles/org.eclipse.test.performance.ui/images/light.gif
deleted file mode 100644
index 542dddc..0000000
--- a/bundles/org.eclipse.test.performance.ui/images/light.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/images/sr.bmp b/bundles/org.eclipse.test.performance.ui/images/sr.bmp
deleted file mode 100644
index 2c063f0..0000000
--- a/bundles/org.eclipse.test.performance.ui/images/sr.bmp
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/images/sst.bmp b/bundles/org.eclipse.test.performance.ui/images/sst.bmp
deleted file mode 100644
index 8f36cf6..0000000
--- a/bundles/org.eclipse.test.performance.ui/images/sst.bmp
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/images/warning_obj.gif b/bundles/org.eclipse.test.performance.ui/images/warning_obj.gif
deleted file mode 100644
index 2b2e50f..0000000
--- a/bundles/org.eclipse.test.performance.ui/images/warning_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/performanceui.jardescORIG b/bundles/org.eclipse.test.performance.ui/performanceui.jardescORIG
deleted file mode 100644
index 563c7b8..0000000
--- a/bundles/org.eclipse.test.performance.ui/performanceui.jardescORIG
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?><jardesc>
-    <jar path="/home/davidw/gitLuna/eclipse.platform.releng.buildtools/bundles/org.eclipse.test.performance.ui/performanceui.jar"/>
-    <options buildIfNeeded="true" compress="true" descriptionLocation="/org.eclipse.test.performance.ui/performanceui.jardesc" exportErrors="true" exportWarnings="true" includeDirectoryEntries="false" overwrite="false" saveDescription="true" storeRefactorings="false" useSourceFolders="false"/>
-    <storedRefactorings deprecationInfo="true" structuralOnly="false"/>
-    <selectedProjects/>
-    <manifest generateManifest="false" manifestLocation="/org.eclipse.test.performance.ui/META-INF/MANIFEST.MF" manifestVersion="1.0" reuseManifest="false" saveManifest="false" usesManifest="true">
-        <sealing sealJar="false">
-            <packagesToSeal/>
-            <packagesToUnSeal/>
-        </sealing>
-    </manifest>
-    <selectedElements exportClassFiles="true" exportJavaFiles="false" exportOutputFolder="false">
-        <folder path="/org.eclipse.test.performance.ui/icons"/>
-        <file path="/org.eclipse.test.performance.ui/plugin.properties"/>
-        <folder path="/org.eclipse.test.performance.ui/html"/>
-        <file path="/org.eclipse.test.performance.ui/readme.html"/>
-        <folder path="/org.eclipse.test.performance.ui/scripts"/>
-        <folder path="/org.eclipse.test.performance.ui/images"/>
-        <folder path="/org.eclipse.test.performance.ui/doc"/>
-        <javaElement handleIdentifier="=org.eclipse.test.performance.ui/src"/>
-        <file path="/org.eclipse.test.performance.ui/plugin.xml"/>
-        <file path="/org.eclipse.test.performance.ui/about.html"/>
-        <folder path="/org.eclipse.test.performance.ui/META-INF"/>
-        <file path="/org.eclipse.test.performance.ui/toc.xml"/>
-        <file path="/org.eclipse.test.performance.ui/contexts.xml"/>
-    </selectedElements>
-</jardesc>
\ No newline at end of file
diff --git a/bundles/org.eclipse.test.performance.ui/plugin.properties b/bundles/org.eclipse.test.performance.ui/plugin.properties
deleted file mode 100644
index 428e63a..0000000
--- a/bundles/org.eclipse.test.performance.ui/plugin.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-###############################################################################
-# Copyright (c) 2007 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-Bundle-Name= Ui Performance Test Framework Plug-in
-Bundle-Vendor= Eclipse Releng
-
-page.name = Performances
-category.name = Performances
-view.name = Components
-view.name.0 = Builds
-view.name.1 = Component Results
-view.name.2 = Builds comparison
-perspective.name = Performances Results
-perspective.description = Perspective to survey the performances of the Eclipse components
\ No newline at end of file
diff --git a/bundles/org.eclipse.test.performance.ui/plugin.xml b/bundles/org.eclipse.test.performance.ui/plugin.xml
deleted file mode 100644
index a874429..0000000
--- a/bundles/org.eclipse.test.performance.ui/plugin.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-<!-- Applications -->
-   <extension
-         id="resultGenerator"
-         point="org.eclipse.core.runtime.applications">
-      <application>
-         <run
-               class="org.eclipse.test.performance.ui.Main">
-         </run>
-      </application>
-   </extension>
-   <extension
-         id="importPerformanceData"
-         point="org.eclipse.core.runtime.applications">
-      <application>
-         <run
-               class="org.eclipse.test.performance.ui.ImportDataMain">
-         </run>
-      </application>
-   </extension>
-
-   <extension
-         point="org.eclipse.core.runtime.preferences">
-      <initializer
-            class="org.eclipse.test.internal.performance.results.ui.PerformanceResultsPreferenceInitializer">
-      </initializer>
-   </extension>
-</plugin>
diff --git a/bundles/org.eclipse.test.performance.ui/pom.xml b/bundles/org.eclipse.test.performance.ui/pom.xml
deleted file mode 100644
index bc56351..0000000
--- a/bundles/org.eclipse.test.performance.ui/pom.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <groupId>org.eclipse.platform</groupId>
-        <artifactId>bundles</artifactId>
-        <version>1.0.101-SNAPSHOT</version>
-
-    </parent>
-    <artifactId>org.eclipse.test.performance.ui</artifactId>
-    <version>3.10.0-SNAPSHOT</version>
-    <packaging>eclipse-plugin</packaging>
-</project>
diff --git a/bundles/org.eclipse.test.performance.ui/readme.html b/bundles/org.eclipse.test.performance.ui/readme.html
deleted file mode 100644
index b3d03aa..0000000
--- a/bundles/org.eclipse.test.performance.ui/readme.html
+++ /dev/null
@@ -1,160 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html lang="en">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<title>org.eclipse.test.performance.ui readme</title>
-</head>
-
-<p>
-	<b><font size="+2">README</font></b><br>
-</p>
-<p>
-	Last updated: October 26, 2005<br>
-</p>
-<p>
-	<b>Introduction</b><br> <br> This readme describes how to
-	create performance charts and tables similar to those available on the
-	eclipse platform download pages using the stand-alone java program <b>org.eclipse.test.performance.ui.Main</b>
-	stored in this project. Although the program is currently geared to
-	generating results for the Eclipse Platform builds, the program may
-	work for you given the following conditions:
-</p>
-<ul>
-	<li>The &quot;eclipse.perf.config&quot; system property used to
-		run tests used three keys config, build and jvm
-		<ul>
-			<li>for example,
-				"eclipse.perf.config=config=relengbuildwin2;build=I20050219-1500;jvm=sun1.4.2_06".
-				<br> <br>
-			</li>
-		</ul>
-	</li>
-	<li>Values for the "build" key begin with either an 'I' or 'N'
-		with the exception of the reference builds (for example, 3.0).
-		<ul>
-			<li>The line graphs plot the reference build, all builds
-				starting with 'I' and the seven 'N' builds preceding the current
-				build.</li>
-			<li>This can be overriden with the use of the
-				&quot;-current.prefix&quot; parameter where you can specify a
-				comma-separated list of prefixes for build ids to include in the
-				main line graph.<br> <br>
-			</li>
-		</ul>
-	</li>
-	<li>Scenario names all contain a prefix
-		&quot;&lt;component&gt;.test&quot;
-		<ul>
-			<li>For example, it is assumed that the scenario
-				&quot;org.eclipse.help.tests.performance.appserver.TestAppserver#testAppserverCycle()&quot;
-				belongs to the &quot;org.eclipse.help&quot; component.</li>
-			<li>Unique scenario prefixes are derived from all the scenarios
-				in the database and are used to group results.</li>
-		</ul>
-	</li>
-</ul>
-<p>
-	<br> For purposes of this document, the term &quot;<a
-		href="images/descriptions.html#fp">fingerprint</a>&quot; will be used
-	to refer to a bar graph which represents the performance summary at a
-	global or component level for each test configuration.<br> <br>
-	The term &quot;<a href="images/descriptions.html#sst">scenario
-		status table</a>&quot; will be used to refer to a table of scenarios with
-	green checks and red x indicators below a component fingerprint. This
-	table gives an overall view of the status for all scenarios for a
-	component for all configurations.<br>
-</p>
-<p>
-	The term &quot;<a href="images/descriptions.html#sr">scenario
-		results</a>&quot; will be used to refer to a web page comparing current
-	performance measurements to the baseline measurements for one scenario
-	on one configuration. The web page displays the raw data for the
-	current and baseline measurements and also displays line graphs showing
-	the measured values over the course of builds between the current and
-	baseline.
-</p>
-<p>
-	<br> <b>Requirements</b>
-</p>
-<ul>
-	<li>Windows or Linux (x86) operating system</li>
-	<li>org.eclipse.releng.basebuilder</li>
-	<li>JVM 11 installed and on path</li>
-</ul>
-<p>
-	<b>Running the program</b>
-</p>
-<p>
-	From a terminal or dos prompt,<br>
-</p>
-<OL>
-	<LI>cd to
-		org.eclipse.releng.basebuilder\plugins\org.eclipse.test.performance.ui\scripts<BR>
-	</LI>
-	<LI>If running on Linux, execute &quot;chmod 755 genresults&quot;</LI>
-	<LI>Execute the following command:<b><br> <br>
-			genresults -baseline &lt;baseline build id&gt; -current &lt;current
-			build id&gt; -config &lt;comma-separated list of configs&gt; -jvm
-			&lt;jvm name&gt; -output &lt;output dir&gt; [-config.properties
-			&lt;properties&gt;] [highlight &lt;buildid patterns&gt;]
-			[scenario.pattern &lt;scenario prefix patterns&gt;]
-			[-fingerprints][-scenarioresults][-current.prefix &lt;comma-separated
-			list of build id prefixes&gt;][-baseline.prefix &lt;comma-separated
-			list of build id prefixes&gt;]</b></LI>
-</OL>
-<p>
-	<br> Parameter descriptions:
-</p>
-<blockquote>
-	<ul>
-		<li>-baseline - baseline build id. A previous value used in the
-			&quot;build&quot; key in the eclipse.perf.config system property or
-			the eclipse.perf.assertAgainst property.</li>
-		<li>-current - current build id. The value used in the
-			&quot;build&quot; key in the eclipse.perf.config system property.</li>
-		<li>-config - a comma-separated list of names of configurations
-			for which to produce results. The values used should be the same as
-			values specified for the &quot;config&quot; key in the
-			eclipse.perf.config system property.</li>
-		<li>-jvm -jvm
-			description. The value used in the &quot;jvm&quot; key in the
-			eclipse.perf.config system property.
-		</li>
-		<li>-output - path to an output directory for fingerprints and
-			scenarios for each configuration specified in -config parameter.
-			Fingerprint gifs and html files are generated in the directory
-			specified, configuration specific subdirectories are created to store
-			scenario results and line graphs.</li>
-	</ul>
-</blockquote>
-<p>
-	<br> Optional arguments:
-</p>
-<blockquote>
-	<ul>
-		<li>-config.properties - semi-colon separated list of: config,
-			alternate config description. The value should be quoted if there are
-			spaces in the value.<BR>of builds which match any prefix in this
-			list. When omitted, a magenta line is draw on the graph which
-			represents the baseline value specified in the -baseline parameter.
-		</li>
-		<li>-highlight - Comma-separated list of build Id
-			prefixes(excluding 'I' and 'N'), which are used to add and highlight
-			the most recent matching buildId on line graphs.</li>
-		<li>-scenario.pattern - Scenario prefix pattern used to query
-			performance results database. Can be used to generate results for a
-			single component or subset of scenarios.</li>
-		<li>-fingerprints or -scenarioresults - use one or the other to
-			generate fingerprints or scenario results only. Not specifying either
-			will execute both.</li>
-		<li>-baseline.prefix - semi-colon separated list of: build id
-			prefixes used in eclipse.perf.assertAgainst property or
-			eclipse.perf.config system property. Values used to generate a second
-			line graph representing changes in repeated baseline test run.</li>
-		<li>-current.prefix - semi-colon separated list of: build id
-			prefixes used in eclipse.perf.config system property. Values here
-			used to override default of &quot;N,I&quot;. Used to select build
-			id's to include in main line graph.</li>
-	</ul>
-</blockquote>
-</html>
\ No newline at end of file
diff --git a/bundles/org.eclipse.test.performance.ui/scripts/Fingerprints.js b/bundles/org.eclipse.test.performance.ui/scripts/Fingerprints.js
deleted file mode 100644
index c004d19..0000000
--- a/bundles/org.eclipse.test.performance.ui/scripts/Fingerprints.js
+++ /dev/null
@@ -1,32 +0,0 @@
-function toggleFingerprints() {
-    var formSelect=document.forms[0].elements[0];
-    var type=formSelect.selectedIndex;
-    var idx=document.URL.indexOf("php?");
-    if (idx==-1) {
-        window.open(document.URL+"?fp_type="+type, "_self");
-    } else {
-        window.open(document.URL.substring(0,idx)+"php?fp_type="+type, "_self");
-    }
-}
-
-function setFingerprintsType() {
-    var idx=document.URL.indexOf("?");
-    var type=0;
-    if (idx != -1) {
-        var typeStr=document.URL.substring(idx+1, document.URL.length);
-        idx=typeStr.indexOf("=");
-        if (idx != -1) {
-            var ch=typeStr.substring(idx+1, idx+2)
-            switch (ch) {
-                case '1':
-                    type=1;
-                    break;
-                case '2':
-                    type=2;
-                    break;
-            }
-        }
-    }
-    var formSelect=document.forms[0].elements[0];
-    formSelect.selectedIndex=type;
-}
diff --git a/bundles/org.eclipse.test.performance.ui/scripts/ToolTip.css b/bundles/org.eclipse.test.performance.ui/scripts/ToolTip.css
deleted file mode 100644
index 165d564..0000000
--- a/bundles/org.eclipse.test.performance.ui/scripts/ToolTip.css
+++ /dev/null
@@ -1,34 +0,0 @@
-
-.hidden_tooltip {
-    display:none;
-}
-
-span.visible_tooltip {
-    display:block;
-    position:absolute;
-    top:10px;
-    left:21px;
-    width:300px;
-    font-size:9px;;
-    padding-left:5px;
-    padding-right:5px;
-    border:1px solid black;
-    background-color:#FFFFCC;
-    text-decoration:none;
-    color:#000000;
-    z-index:10;
-} 
-
-a{  
-    text-decoration:none;
-}
-span {
-z-index=100;
-}
-img, table{
-z-index:1;
-}
-
-.tooltipSource {
-    position:relative;
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.test.performance.ui/scripts/ToolTip.js b/bundles/org.eclipse.test.performance.ui/scripts/ToolTip.js
deleted file mode 100644
index 639b9fc..0000000
--- a/bundles/org.eclipse.test.performance.ui/scripts/ToolTip.js
+++ /dev/null
@@ -1,23 +0,0 @@
-// General purpose functions. 
-
-function hide_element(elementId) {
-    element = document.getElementById(elementId);
-    if(element != null) {
-        currentClass = element.className;
-        if(currentClass =='visible_tooltip') {
-            element.className = 'hidden_tooltip';
-        }
-    }
-}
-
-function show_element(elementId) {
-    element = document.getElementById(elementId);
-    if(element != null) {
-        currentClass = element.className;
-        if(currentClass == 'hidden_tooltip') {
-            element.className = 'visible_tooltip';
-        }
-    }
-}
-
-
diff --git a/bundles/org.eclipse.test.performance.ui/scripts/genresults b/bundles/org.eclipse.test.performance.ui/scripts/genresults
deleted file mode 100644
index 8dfb7de..0000000
--- a/bundles/org.eclipse.test.performance.ui/scripts/genresults
+++ /dev/null
@@ -1,7 +0,0 @@
-# !/bin/sh
-
-#export dbloc=net://minsky.ottawa.ibm.com
-#required when running on Linux Motif
-export LD_LIBRARY_PATH=./../../..
-
-java -Declipse.perf.dbloc=$dbloc -jar ./../../../plugins/org.eclipse.equinox.launcher.jar -application org.eclipse.test.performance.ui.resultGenerator $*
diff --git a/bundles/org.eclipse.test.performance.ui/scripts/genresults.bat b/bundles/org.eclipse.test.performance.ui/scripts/genresults.bat
deleted file mode 100644
index fcc1b37..0000000
--- a/bundles/org.eclipse.test.performance.ui/scripts/genresults.bat
+++ /dev/null
@@ -1,6 +0,0 @@
-@echo off
-
-REM set dbloc=net://minsky.ottawa.ibm.com
-
-java -Declipse.perf.dbloc=%dbloc% -jar .\..\..\..\plugins\org.eclipse.equinox.launcher.jar -application org.eclipse.test.performance.ui.resultGenerator %*
-
diff --git a/bundles/org.eclipse.test.performance.ui/scripts/plugin.xml.template b/bundles/org.eclipse.test.performance.ui/scripts/plugin.xml.template
deleted file mode 100644
index cf91a73..0000000
--- a/bundles/org.eclipse.test.performance.ui/scripts/plugin.xml.template
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin
-   id="Cloudscape"
-   name="Cloudscape"
-   version="1.0.0">
-   
-   <runtime>
-      <library name="db2jcc.jar">
-         <export name="*"/>
-      </library>
-      <library name="db2jcc_license_c.jar">
-         <export name="*"/>
-      </library>
-      <library name="cstools.jar">
-         <export name="*"/>
-      </library>
-      <library name="csnet.jar">
-         <export name="*"/>
-      </library>
-      <library name="cs.jar">
-         <export name="*"/>
-      </library>
-   </runtime>
-   <requires>
-      <import plugin="org.eclipse.osgi"/>
-   </requires>
-</plugin>
diff --git a/bundles/org.eclipse.test.performance.ui/scripts/results.properties b/bundles/org.eclipse.test.performance.ui/scripts/results.properties
deleted file mode 100644
index 979c6bf..0000000
--- a/bundles/org.eclipse.test.performance.ui/scripts/results.properties
+++ /dev/null
@@ -1,20 +0,0 @@
-###############################################################################
-# Copyright (c) 2005, 2006 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-args=\
--baseline 3.0_200406251208_200505301645 \
--baseline.prefix 3.0_ \
--highlight 3.0.2_,2.1.3_,3.1M6_,3.1M7_ ,3.1RC1 \
--current 3.1RC1_200505271300_200505301912 \
--jvm sun1.4.2_08 \
--output d:/m7perf \
--config eclipseperfwin2 \
--config.properties "eclipseperfwin1,Win XP Sun 1.4.2_08 (2 GHz 512 MB),win,d:/m7perf/win;eclipseperflnx1,RHEL 3.0 Sun 1.4.2_08 (2 GHz 512 MB),linux,d:/m7perf/linux;eclipseperfwin2,Win XP Sun 1.4.2_08 (3 GHz 2 GB),win2,d:/m7perf/win2;eclipseperflnx2,RHEL 3.0 Sun 1.4.2_08 (3 GHz 2 GB),linux2,d:/m7perf/linux2" \
--scenario.pattern org.eclipse.ant
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/AbstractResults.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/AbstractResults.java
deleted file mode 100644
index 2aa4b4a..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/AbstractResults.java
+++ /dev/null
@@ -1,262 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.internal.performance.results.db;
-
-import java.io.PrintStream;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.test.internal.performance.results.utils.Util;
-
-
-/**
- * Abstract class to store performance results.
- *
- * Each results gives access to specific children depending on model.
- */
-public abstract class AbstractResults implements Comparable<AbstractResults> {
-
-	public static final double[] INVALID_RESULTS = new double[] {2};
-	public static final double[] NO_BUILD_RESULTS = new double[0];
-	public static final int BUILD_VALUE_INDEX = 0;
-	public static final int BASELINE_VALUE_INDEX = 1;
-	public static final int DELTA_VALUE_INDEX = 2;
-	public static final int DELTA_ERROR_INDEX = 3;
-	public static final int BUILD_ERROR_INDEX = 4;
-	public static final int BASELINE_ERROR_INDEX = 5;
-	public static final int NUMBERS_LENGTH = 6;
-
-	public static final boolean DO_NOT_WRITE_DATA = false;
-
-	AbstractResults parent;
-	int id = -1;
-	String name;
-	List<AbstractResults> children;
-	private static boolean NEW_LINE = true;
-	PrintStream printStream = null;
-    protected String baselinePrefix;
-
-AbstractResults(AbstractResults parent, String name) {
-	this.parent = parent;
-	this.children = new ArrayList<>();
-	this.name = name;
-}
-
-AbstractResults(AbstractResults parent, int id) {
-	this.parent = parent;
-	this.children = new ArrayList<>();
-	this.id = id;
-}
-
-/*
- * Add a child to current results, using specific sort
- * order if specified.
- */
-void addChild(AbstractResults child, boolean sort) {
-	if (sort) {
-		int size = this.children.size();
-		for (int i=0; i<size; i++) {
-		  AbstractResults results = this.children.get(i);
-			if (child.compareTo(results) < 0) {
-				this.children.add(i, child);
-				return;
-			}
-		}
-	}
-	this.children.add(child);
-}
-
-/**
- * Compare the results to the given one using the name.
- *
- * @see java.lang.Comparable#compareTo(java.lang.Object)
- */
-@Override
-public int compareTo(AbstractResults obj) {
-	if (obj != null) {
-		AbstractResults res = obj;
-		return getName().compareTo(res.getName());
-	}
-	return -1;
-}
-
-/**
- * Returns whether two results are equals using the name
- * to compare them.
- *
- * @param obj  The results to compare with
- * @return <code>true</code> if the name are equals,
- * 	<code>false</code> otherwise
- * @see java.lang.Comparable#compareTo(java.lang.Object)
- */
-@Override
-public boolean equals(Object obj) {
-	if (obj instanceof AbstractResults) {
-		return this.name.equals(((AbstractResults)obj).getName());
-	}
-	return super.equals(obj);
-}
-
-/**
- * Return an array built on the current results children list.
- *
- * @return An array of the children list
- */
-public AbstractResults[] getChildren() {
-	AbstractResults[] elements = new AbstractResults[size()];
-	this.children.toArray(elements);
-	return elements;
-}
-
-ComponentResults getComponentResults() {
-	if (this.parent != null) {
-		return this.parent.getComponentResults();
-	}
-	return null;
-}
-
-int getId() {
-	return this.id;
-}
-
-/**
- * Returns the name of the results object.
- *
- * @return The name of the results
- */
-public String getName() {
-	return this.name;
-}
-
-/**
- * Returns the parent
- *
- * @return The parent
- */
-public AbstractResults getParent() {
-	return this.parent;
-}
-
-PerformanceResults getPerformance() {
-	if (this.parent != null) {
-		return this.parent.getPerformance();
-	}
-	return null;
-}
-
-String getPath() {
-	String path = this.parent==null || this.parent.parent==null ? "" : this.parent.getPath() + ">"; //$NON-NLS-1$ //$NON-NLS-2$
-	return path+this.name;
-}
-
-/**
- * Return the children list of the current results.
- *
- * @return An iterator on the children list
- */
-public Iterator<AbstractResults> getResults() {
-	return this.children.iterator();
-}
-
-AbstractResults getResults(String resultName) {
-	int size = this.children.size();
-	for (int i=0; i<size; i++) {
-		AbstractResults searchedResults =  this.children.get(i);
-		if (searchedResults.getName().equals(resultName)) {
-			return searchedResults;
-		}
-	}
-	return null;
-}
-
-AbstractResults getResults(int searchedId) {
-	int size = this.children.size();
-	for (int i=0; i<size; i++) {
-		AbstractResults searchedResults =  this.children.get(i);
-		if (searchedResults.id == searchedId) {
-			return searchedResults;
-		}
-	}
-	return null;
-}
-
-@Override
-public int hashCode() {
-	return this.name.hashCode();
-}
-
-void printTab() {
-	if (this.parent != null) {
-		if (this.printStream != null) this.printStream.print("\t"); //$NON-NLS-1$
-		this.parent.printTab();
-	}
-}
-void print(String text) {
-	if (this.printStream != null) {
-		if (NEW_LINE) printTab();
-		this.printStream.print(text);
-		NEW_LINE = false;
-	}
-}
-
-void printGlobalTime(long start) {
-	printGlobalTime(start, null);
-}
-
-void printGlobalTime(long start, String end) {
-	long time = System.currentTimeMillis();
-	String resultsName = getName();
-	StringBuilder buffer;
-	if (resultsName == null) {
-		buffer = new StringBuilder(" => time spent was "); //$NON-NLS-1$
-	} else {
-		buffer = new StringBuilder(" => time spent in '"); //$NON-NLS-1$
-		buffer.append(resultsName);
-		buffer.append("' was "); //$NON-NLS-1$
-	}
-	buffer.append(Util.timeString(time-start));
-	if (end != null) {
-		buffer.append(". "); //$NON-NLS-1$
-		buffer.append(end.trim());
-	}
-	println(buffer);
-}
-
-void println() {
-	if (this.printStream != null) {
-		this.printStream.println();
-		NEW_LINE = true;
-	}
-}
-
-void println(String text) {
-	if (this.printStream != null) {
-		if (NEW_LINE) printTab();
-		this.printStream.println(text);
-		NEW_LINE = true;
-	}
-}
-
-void println(StringBuilder buffer) {
-	println(buffer.toString());
-}
-
-public int size() {
-	return this.children == null ? 0 : this.children.size();
-}
-
-@Override
-public String toString() {
-	return getPath();
-}
-
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/BuildResults.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/BuildResults.java
deleted file mode 100644
index 62bb7f2..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/BuildResults.java
+++ /dev/null
@@ -1,600 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.results.db;
-
-import java.io.DataInputStream;
-import java.io.DataOutputStream;
-import java.io.IOException;
-import java.text.ParseException;
-import java.util.StringTokenizer;
-
-import org.eclipse.test.internal.performance.InternalPerformanceMeter;
-import org.eclipse.test.internal.performance.PerformanceTestPlugin;
-import org.eclipse.test.internal.performance.data.Dim;
-import org.eclipse.test.internal.performance.results.utils.Util;
-
-/**
- * Class providing numbers of a scenario running on a specific configuration
- * at a specific time (for example 'I20070615-1200').
- */
-public class BuildResults extends AbstractResults {
-
-    private static final double IMPOSSIBLE_VALUE = -1E6;
-
-    // Build information
-    String                      date;
-    String                      comment;
-    int                         summaryKind      = -1;
-
-    // Dimensions information
-    Dim[]                       dimensions;
-    double[]                    average, stddev;
-    long[]                      count;
-    double[][]                  values;
-    boolean                     hadValues        = false;
-    private int                 defaultDimIndex  = -1;
-
-    // Comparison information
-    boolean                     baseline;
-    String                      failure;
-
-    BuildResults(AbstractResults parent) {
-        super(parent, -1);
-    }
-
-    BuildResults(AbstractResults parent, int id) {
-        super(parent, id);
-        this.name = DB_Results.getBuildName(id);
-        this.baseline = this.name.startsWith(DB_Results.getDbBaselinePrefix());
-    }
-
-    /*
-     * Clean values when several measures has been done for the same build.
-     */
-    void cleanValues() {
-        int length = this.values.length;
-        for (int dim_id = 0; dim_id < length; dim_id++) {
-            int vLength = this.values[dim_id].length;
-		/* Log clean operation
-		if (dim_id == 0) {
-			IStatus status = new Status(IStatus.WARNING, PerformanceTestPlugin.PLUGIN_ID, "Clean "+vLength+" values for "+this.parent+">"+this.name+" ("+this.count[dim_id]+" measures)...");    //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$//$NON-NLS-4$ //$NON-NLS-5$
-			PerformanceTestPlugin.log(status);
-		}
-             */
-            this.average[dim_id] = 0;
-            for (int i = 0; i < vLength; i++) {
-                this.average[dim_id] += this.values[dim_id][i];
-            }
-            this.average[dim_id] /= vLength;
-            double squaredDeviations = 0;
-            for (int i = 0; i < vLength; i++) {
-                double deviation = this.average[dim_id] - this.values[dim_id][i];
-                squaredDeviations += deviation * deviation;
-            }
-		this.stddev[dim_id] = Math.sqrt(squaredDeviations / (this.count[dim_id] - 1)); // unbiased sample stdev
-            this.values[dim_id] = null;
-        }
-        for (int i = 0; i < length; i++) {
-            if (this.values[i] != null) {
-                return;
-            }
-        }
-        this.values = null;
-        this.hadValues = true;
-    }
-
-    /**
-     * Compare build results using the date of the build.
-     *
-     * @see Comparable#compareTo(Object)
-     */
-    @Override
-    public int compareTo(AbstractResults obj) {
-        if (obj instanceof BuildResults) {
-            BuildResults res = (BuildResults) obj;
-            return getDate().compareTo(res.getDate());
-        }
-        return -1;
-    }
-
-    /**
-     * Returns the most recent baseline build results.
-     *
-     * @return The {@link BuildResults baseline build results}.
-     * @see BuildResults
-     */
-    public BuildResults getBaselineBuildResults() {
-        return ((ConfigResults) this.parent).getBaselineBuildResults();
-    }
-
-    /**
-     * Returns the comment associated with the scenario for the current build.
-     *
- * @return The comment associated with the scenario for the current build
- * 	or <code>null</code> if no comment was stored for it.
-     */
-    public String getComment() {
-        return this.comment;
-    }
-
-    /**
-     * Return the number of stored values for the default dimension
-     *
-     * @return the number of stored values for the default dimension
-     */
-    public long getCount() {
-        if (this.defaultDimIndex < 0) {
-            this.defaultDimIndex = DB_Results.getDefaultDimensionIndex();
-        }
-        return this.count[this.defaultDimIndex];
-    }
-
-    /**
-     * Return the number of stored values for the given dimension.
-     *
- * @param dim_id The id of the dimension (see {@link Dim#getId()})
-     * @return the number of stored values for the given dimension
-     *
-     */
-    public long getCount(int dim_id) {
-        return this.count[getDimIndex(dim_id)];
-    }
-
-    /**
-     * Returns the date of the build which is a part of its name.
-     *
-     * @return The date of the build as yyyyMMddHHmm
-     */
-    public String getDate() {
-        if (this.date == null) {
-            if (this.baseline) {
-                int length = this.name.length();
-                this.date = this.name.substring(length - 12, length);
-            } else {
-                char first = this.name.charAt(0);
-			if (first == 'N' || first == 'I' || first == 'M') { // TODO (frederic) should be buildIdPrefixes...
-                    if (this.name.length() == 14) {
-                        this.date = this.name.substring(1, 9) + this.name.substring(10, 14);
-                    } else {
-                        this.date = this.name.substring(1);
-                    }
-                } else {
-                    int length = this.name.length() - 12 /* length of date */;
-                    for (int i = 0; i <= length; i++) {
-                        try {
-                            String substring = i == 0 ? this.name : this.name.substring(i);
-                            Util.DATE_FORMAT.parse(substring);
-						this.date = substring; // if no exception is raised then the substring has a correct date format => store it
-                            break;
-					} catch(ParseException ex) {
-                            // skip
-                        }
-                    }
-                }
-            }
-        }
-        return this.date;
-    }
-
-    /**
- * Returns the standard deviation of the default dimension computed
- * while running the scenario for the current build.
-     *
-     * @return The value of the standard deviation
-     */
-    public double getDeviation() {
-        if (this.defaultDimIndex < 0) {
-            this.defaultDimIndex = DB_Results.getDefaultDimensionIndex();
-        }
-        return this.stddev[this.defaultDimIndex];
-    }
-
-    /**
- * Returns the standard deviation of the given dimension computed
- * while running the scenario for the current build.
-     *
- * @param dim_id The id of the dimension (see {@link Dim#getId()})
-     * @return The value of the standard deviation
-     */
-    public double getDeviation(int dim_id) {
-        final int dimIndex = getDimIndex(dim_id);
-        return dimIndex < 0 ? 0 : this.stddev[dimIndex];
-    }
-
-    /**
-     * Returns the dimensions supported for the current build.
-     *
-     * @return An array of dimensions.
-     */
-    public Dim[] getDimensions() {
-        return this.dimensions;
-    }
-
-    /**
-     * Returns the kind of summary for the scenario of the current build.
-     *
- * @return -1 if the scenario has no summary, 1 if it's a global summary, 0 otherwise.
-     */
-    public int getSummaryKind() {
-        return this.summaryKind;
-    }
-
-    /**
-     * Returns whether the current build had several values stored in database.
-     *
-     * @return <code>true</code> if the measure was committed several times,
-     *         <code>false</code> otherwise.
-     */
-    public boolean hadValues() {
-        return this.hadValues;
-    }
-
-    /*
- * Return the index of the dimension corresponding to the given
- * dimension id (see {@link Dim#getId()})
-     */
-    int getDimIndex(int dim_id) {
-	if (this.dimensions == null) return -1;
-        int length = this.dimensions.length;
-        for (int i = 0; i < length; i++) {
-		if (this.dimensions[i] == null) break;
-            if (this.dimensions[i].getId() == dim_id) {
-                return i;
-            }
-        }
-        return -1;
-    }
-
-    /**
-     * Return the error computed while storing values for the default dimension
-     *
-     * @return the error of the measures stored for the default dimension
-     */
-    public double getError() {
-        long n = getCount();
-	if (n == 1) return Double.NaN;
-        return getDeviation() / Math.sqrt(n);
-    }
-
-    /**
-     * Return the error computed while storing values for the given dimension.
-     *
- * @param dim_id The id of the dimension (see {@link Dim#getId()})
-     * @return the error of the measures stored for the given dimension
-     */
-    public double getError(int dim_id) {
-        long n = getCount(dim_id);
-	if (n == 1) return Double.NaN;
-        return getDeviation(dim_id) / Math.sqrt(n);
-    }
-
-    /**
- * Return the failure message which may happened on this scenario
- * while running the current build
-     *
-     * @return The failure message or <code>null</code> if the scenario passed.
-     */
-    public String getFailure() {
-        return this.failure;
-    }
-
-    /**
- * Return the value of the performance result stored
- * for the given dimension of the current build.
-     *
- * @param dim_id The id of the dimension (see {@link Dim#getId()})
-     * @return The value of the performance result
-     */
-    public double getValue(int dim_id) {
-        int idx = getDimIndex(dim_id);
-	if (idx < 0) return Double.NaN;
-        return this.average[idx];
-    }
-
-    /**
- * Return the value of the performance result stored
- * for the default dimension of the current build.
-     *
-     * @return The value of the performance result
-     */
-    public double getValue() {
-        if (this.defaultDimIndex < 0) {
-            this.defaultDimIndex = DB_Results.getDefaultDimensionIndex();
-        }
-        return this.average[this.defaultDimIndex];
-    }
-
-    /**
-     * Returns whether the build is a baseline build or not.
-     *
- * @return <code>true</code> if the build name starts with the baseline prefix
- * 	(see {@link PerformanceResults#getBaselinePrefix()} or <code>false</code>
- * 	otherwise.
-     */
-    public boolean isBaseline() {
-        return this.baseline;
-    }
-
-    /**
- * Returns whether the build has a summary or not. Note that the summary
- * may be global or not.
-     *
-     * @return <code>true</code> if the summary kind is equals to 0 or 1
-     *         <code>false</code> otherwise.
-     */
-    public boolean hasSummary() {
-        return this.summaryKind >= 0;
-    }
-
-    /**
-     * Returns whether the build has a global summary or not.
-     *
-     * @return <code>true</code> if the summary kind is equals to 1
-     *         <code>false</code> otherwise.
-     */
-    public boolean hasGlobalSummary() {
-        return this.summaryKind == 1;
-    }
-
-    /*
-     * Returns a given pattern match the build name or not.
-     */
-    boolean match(String pattern) {
-	if (pattern.equals("*")) return true; //$NON-NLS-1$
-        if (pattern.indexOf('*') < 0 && pattern.indexOf('?') < 0) {
-            pattern += "*"; //$NON-NLS-1$
-        }
-        StringTokenizer tokenizer = new StringTokenizer(pattern, "*?", true); //$NON-NLS-1$
-        int start = 0;
-        String previous = ""; //$NON-NLS-1$
-        while (tokenizer.hasMoreTokens()) {
-            String token = tokenizer.nextToken();
-            if (!token.equals("*") && !token.equals("?")) { //$NON-NLS-1$ //$NON-NLS-2$
-                if (previous.equals("*")) { //$NON-NLS-1$
-                    int idx = this.name.substring(start).indexOf(token);
-				if (idx < 0) return false;
-                    start += idx;
-                } else {
-				if (previous.equals("?")) start++; //$NON-NLS-1$
-				if (!this.name.substring(start).startsWith(token)) return false;
-                }
-                start += token.length();
-            }
-            previous = token;
-        }
-        if (previous.equals("*")) { //$NON-NLS-1$
-            return true;
-        } else if (previous.equals("?")) { //$NON-NLS-1$
-            return this.name.length() == start;
-        }
-        return this.name.endsWith(previous);
-    }
-
-    /*
-     * Read the build results data from the given stream.
-     */
-    void readData(DataInputStream stream) throws IOException {
-        long timeBuild = stream.readLong();
-        this.date = Long.valueOf(timeBuild).toString();
-        byte kind = stream.readByte();
-        this.baseline = kind == 0;
-        if (this.baseline) {
-		this.name = getPerformance().baselinePrefix + '-' + this.date;
-        } else {
-            String suffix = this.date.substring(0, 8) + '-' + this.date.substring(8);
-            switch (kind) {
-                case 1:
-                    this.name = "N" + suffix; //$NON-NLS-1$
-                    break;
-                case 2:
-                    this.name = "I" + suffix; //$NON-NLS-1$
-                    break;
-                case 3:
-                    this.name = "M" + suffix; //$NON-NLS-1$
-                    break;
-                default:
-                    this.name = stream.readUTF();
-                    break;
-            }
-        }
-        int length = stream.readInt();
-        this.dimensions = new Dim[length];
-        this.average = new double[length];
-        this.stddev = new double[length];
-        this.count = new long[length];
-        for (int i = 0; i < length; i++) {
-            int dimId = stream.readInt();
-            DB_Results.storeDimension(dimId);
-            this.dimensions[i] = (Dim) PerformanceTestPlugin.getDimension(dimId);
-            this.average[i] = stream.readLong();
-            this.count[i] = stream.readLong();
-            this.stddev[i] = stream.readDouble();
-        }
-        this.id = DB_Results.getBuildId(this.name);
-
-        // read summary
-        this.summaryKind = stream.readInt();
-
-        // read comment
-        String str = stream.readUTF();
-        if (str.length() > 0) {
-            this.comment = str;
-        }
-    }
-
-    /*
-     * Set the build summary and its associated comment.
-     */
-    void setComment(String comment) {
-        if (comment != null && this.comment == null) {
-            this.comment = comment;
-        }
-    }
-
-    /*
-     * Set the build summary and its associated comment.
-     */
-    void setSummary(int kind, String comment) {
-        this.comment = comment;
-        this.summaryKind = kind;
-    }
-
-    /*
-     * Set the build failure.
-     */
-    void setFailure(String failure) {
-        this.failure = failure;
-    }
-
-    /*
-     * Set the build value from database information.
-     */
-    void setValue(int dim_id, int step, long value) {
-        int length = DB_Results.getDimensions().length;
-        Dim dimension = (Dim) PerformanceTestPlugin.getDimension(dim_id);
-        int idx = 0;
-        if (this.dimensions == null) {
-            this.dimensions = new Dim[length];
-            this.average = new double[length];
-            this.stddev = new double[length];
-            this.count = new long[length];
-            this.dimensions[0] = dimension;
-            for (int i = 0; i < length; i++) {
-                // init average numbers with an impossible value
-                // to clearly identify whether it's already set or not
-                // when several measures are made for the same build
-                this.average[i] = IMPOSSIBLE_VALUE;
-            }
-        } else {
-            length = this.dimensions.length;
-            for (int i = 0; i < length; i++) {
-                if (this.dimensions[i] == null) {
-                    this.dimensions[i] = dimension;
-                    idx = i;
-                    break;
-                }
-                if (this.dimensions[i].getId() == dim_id) {
-                    idx = i;
-                    break;
-                }
-            }
-        }
-        switch (step) {
-            case InternalPerformanceMeter.AVERAGE:
-                if (this.average[idx] != IMPOSSIBLE_VALUE) {
-                    if (this.values == null) {
-                        this.values = new double[length][];
-                        this.values[idx] = new double[2];
-                        this.values[idx][0] = this.average[idx];
-                        this.values[idx][1] = value;
-                        this.average[idx] = IMPOSSIBLE_VALUE;
-                    } else if (this.values[idx] == null) {
-                        this.values[idx] = new double[2];
-                        this.values[idx][0] = this.average[idx];
-                        this.values[idx][1] = value;
-                        this.average[idx] = IMPOSSIBLE_VALUE;
-                    }
-                } else if (this.values != null && this.values[idx] != null) {
-                    int vLength = this.values[idx].length;
-                    System.arraycopy(this.values[idx], 0, this.values[idx] = new double[vLength + 1], 0, vLength);
-                    this.values[idx][vLength] = value;
-                } else {
-                    this.average[idx] = value;
-                }
-                break;
-            case InternalPerformanceMeter.STDEV:
-                this.stddev[idx] += Double.longBitsToDouble(value);
-                break;
-            case InternalPerformanceMeter.SIZE:
-                this.count[idx] += value;
-                break;
-        }
-    }
-
-    @Override
-    public String toString() {
-        StringBuilder buffer = new StringBuilder(this.name);
-        buffer.append(": "); //$NON-NLS-1$
-        int length = this.dimensions.length;
-        for (int i = 0; i < length; i++) {
-		if (i>0)	buffer.append(", "); //$NON-NLS-1$
-            buffer.append('[');
-            buffer.append(this.dimensions[i].getId());
-            buffer.append("]="); //$NON-NLS-1$
-            buffer.append(this.average[i]);
-            buffer.append('/');
-            buffer.append(this.count[i]);
-            buffer.append('/');
-            buffer.append(Math.round(this.stddev[i] * 1000) / 1000.0);
-        }
-        return buffer.toString();
-    }
-
-    /*
-     * Write the build results data in the given stream.
-     */
-    void write(DataOutputStream stream) throws IOException {
-        if (DO_NOT_WRITE_DATA) {
-            return;
-        }
-        boolean okToWrite = true;
-        long timeBuild = -1;
-        String dateFound = null;
-        try {
-            dateFound = getDate();
-            timeBuild = Long.parseLong(dateFound);
-        }
-        catch (NumberFormatException nfe) {
-            // do nothing, but do not write bad data.
-            // nfe.printStackTrace();
-            System.out.println("ERROR: Found number format exception converting date. Date: >"+ dateFound +"<." + "Could be corrupt data in DB?");
-            okToWrite = false;
-        }
-        if (okToWrite) {
-            stream.writeLong(timeBuild);
-            byte kind = 0; // baseline
-            if (!this.baseline) {
-                switch (this.name.charAt(0)) {
-                    case 'N':
-                        kind = 1;
-                        break;
-                    case 'I':
-                        kind = 2;
-                        break;
-                    case 'M':
-                        kind = 3;
-                        break;
-                    default:
-                        kind = 4;
-                        break;
-                }
-            }
-            stream.writeByte(kind);
-            if (kind == 4) {
-                stream.writeUTF(this.name);
-            }
-            int length = this.dimensions == null ? 0 : this.dimensions.length;
-            stream.writeInt(length);
-            for (int i = 0; i < length; i++) {
-                stream.writeInt(this.dimensions[i].getId());
-                stream.writeLong((long) this.average[i]);
-                stream.writeLong(this.count[i]);
-                stream.writeDouble(this.stddev[i]);
-            }
-
-            // Write extra infos (summary, failure and comment)
-            stream.writeInt(this.summaryKind);
-            stream.writeUTF(this.comment == null ? "" : this.comment); //$NON-NLS-1$
-        }
-    }
-
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/ComponentResults.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/ComponentResults.java
deleted file mode 100644
index 0fe6c58..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/ComponentResults.java
+++ /dev/null
@@ -1,441 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2018 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.internal.performance.results.db;
-
-import java.io.BufferedInputStream;
-import java.io.BufferedOutputStream;
-import java.io.DataInputStream;
-import java.io.DataOutputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.runtime.SubMonitor;
-import org.eclipse.test.internal.performance.results.utils.Util;
-
-/**
- * Class to handle performance results of an eclipse component
- * (for example 'org.eclipse.jdt.core').
- *
- * It gives access to results for each scenario run for this component.
- *
- * @see ScenarioResults
- */
-public class ComponentResults extends AbstractResults {
-
-    public ComponentResults(AbstractResults parent, String name) {
-	super(parent, name);
-	this.printStream = parent.printStream;
-}
-
-Set<String> getAllBuildNames() {
-	Set<String> buildNames = new HashSet<>();
-	int size = size();
-	for (int i=0; i<size; i++) {
-		ScenarioResults scenarioResults = (ScenarioResults) this.children.get(i);
-		Set<String> builds = scenarioResults.getAllBuildNames();
-		buildNames.addAll(builds);
-	}
-	return buildNames;
-}
-
-/**
- * Return all the build names for this component sorted by ascending order.
- *
- * @return An array of names
- */
-public String[] getAllSortedBuildNames() {
-	return getAllSortedBuildNames(false/*ascending order*/);
-}
-
-String[] getAllSortedBuildNames(final boolean reverse) {
-	Set<String> allBuildNames = getAllBuildNames();
-	String[] sortedNames = new String[allBuildNames.size()];
-	allBuildNames.toArray(sortedNames);
-	Arrays.sort(sortedNames, (o1, o2) -> {
-  	String s1 = reverse ? o2 : o1;
-  	String s2 = reverse ? o1 : o2;
-  	return Util.getBuildDate(s1).compareTo(Util.getBuildDate(s2));
-    });
-	return sortedNames;
-}
-
-@Override
-ComponentResults getComponentResults() {
-	return this;
-}
-
-/**
- * Get all results numbers for a given machine of the current component.
- *
- * @param configName The name of the configuration to get numbers
- * @param fingerprints Set whether only fingerprints scenario should be taken into account
- * @return A list of lines. Each line represent a build and is a list of either strings or values.
-  * 	Values are an array of double:
- * 	<ul>
- * 		<li>{@link #BUILD_VALUE_INDEX}: the build value in milliseconds</li>
- * 		<li>{@link #BASELINE_VALUE_INDEX}: the baseline value in milliseconds</li>
- * 		<li>{@link #DELTA_VALUE_INDEX}: the difference between the build value and its more recent baseline</li>
- * 		<li>{@link #DELTA_ERROR_INDEX}: the error made while computing the difference</li>
- * 		<li>{@link #BUILD_ERROR_INDEX}: the error made while measuring the build value</li>
- * 		<li>{@link #BASELINE_ERROR_INDEX}: the error made while measuring the baseline value</li>
- * 	</ul>
-*/
-public List<List<Object>> getConfigNumbers(String configName, boolean fingerprints, List<List<Object>> differences) {
-
-	// Initialize lists
-	AbstractResults[] scenarios = getChildren();
-	int length = scenarios.length;
-
-	// Print scenario names line
-	List<Object> firstLine = new ArrayList<>();
-	for (int i=0; i<length; i++) {
-		ScenarioResults scenarioResults = (ScenarioResults) scenarios[i];
-		if (!fingerprints || scenarioResults.hasSummary()) {
-			firstLine.add(scenarioResults.getName());
-		}
-	}
-
-	// Print each build line
-	String[] builds = getAllSortedBuildNames(true/*descending order*/);
-//	int milestoneIndex = 0;
-//	String milestoneDate = Util.getMilestoneDate(milestoneIndex);
-	String currentBuildName = null;
-	int buildsLength= builds.length;
-	firstLine.add(0, Integer.valueOf(buildsLength));
-	differences.add(firstLine);
-	for (int i=0; i<buildsLength; i++) {
-		List<Object> line = new ArrayList<>();
-		String buildName = builds[i];
-		line.add(buildName);
-		if (!buildName.startsWith(DB_Results.getDbBaselinePrefix())) {
-			for (int j=0; j<length; j++) {
-				ScenarioResults scenarioResults = (ScenarioResults) scenarios[j];
-				if (!fingerprints || scenarioResults.hasSummary()) {
-					ConfigResults configResults = scenarioResults.getConfigResults(configName);
-					BuildResults buildResults = configResults == null ? null : configResults.getBuildResults(buildName);
-					if (buildResults == null) {
-						// no result for this scenario in this build
-						line.add(NO_BUILD_RESULTS);
-					} else {
-					    if (configResults == null) {
-					        throw new RuntimeException("configResults was unexpectedly null. Check input data?");
-					    }
-						line.add(configResults.getNumbers(buildResults, configResults.getBaselineBuildResults(buildName)));
-					}
-				}
-			}
-			differences.add(line);
-			if (currentBuildName != null && currentBuildName.charAt(0) != 'N') {
-            }
-			currentBuildName = buildName;
-		}
-//		if (milestoneDate != null) { // update previous builds
-//			int dateComparison = milestoneDate.compareTo(Util.getBuildDate(buildName));
-//			if (dateComparison <= 0) {
-//				if (dateComparison == 0) {
-//                }
-//				if (++milestoneIndex == Util.MILESTONES.length) {
-//					milestoneDate = null;
-//				} else {
-//					milestoneDate = Util.getMilestoneDate(milestoneIndex);
-//				}
-//			}
-//		}
-	}
-
-	// Write differences lines
-	int last = buildsLength-1;
-	String lastBuildName = builds[last];
-	while (last > 0 && lastBuildName.startsWith(DB_Results.getDbBaselinePrefix())) {
-		lastBuildName = builds[--last];
-	}
-//	appendDifferences(lastBuildName, configName, previousMilestoneName, differences, fingerprints);
-//	appendDifferences(lastBuildName, configName, previousBuildName, differences, fingerprints);
-
-	// Return the computed differences
-	return differences;
-}
-
-/*
-double[] getConfigNumbers(BuildResults buildResults, BuildResults baselineResults) {
-	if (baselineResults == null) {
-		return INVALID_RESULTS;
-	}
-	double[] values = new double[NUMBERS_LENGTH];
-	for (int i=0 ;i<NUMBERS_LENGTH; i++) {
-		values[i] = Double.NaN;
-	}
-	double buildValue = buildResults.getValue();
-	values[BUILD_VALUE_INDEX] = buildValue;
-	double baselineValue = baselineResults.getValue();
-	values[BASELINE_VALUE_INDEX] = baselineValue;
-	double delta = (baselineValue - buildValue) / baselineValue;
-	values[DELTA_VALUE_INDEX] = delta;
-	if (Double.isNaN(delta)) {
-		return values;
-	}
-	long baselineCount = baselineResults.getCount();
-	long currentCount = buildResults.getCount();
-	if (baselineCount > 1 && currentCount > 1) {
-		double baselineError = baselineResults.getError();
-		double currentError = buildResults.getError();
-		values[BASELINE_ERROR_INDEX] = baselineError;
-		values[BUILD_ERROR_INDEX] = currentError;
-		values[DELTA_ERROR_INDEX] = Double.isNaN(baselineError)
-				? currentError / baselineValue
-				: Math.sqrt(baselineError*baselineError + currentError*currentError) / baselineValue;
-	}
-	return values;
-}
-*/
-
-private ScenarioResults getScenarioResults(List<ScenarioResults> scenarios, int searchedId) {
-	int size = scenarios.size();
-	for (int i=0; i<size; i++) {
-		ScenarioResults scenarioResults = scenarios.get(i);
-		if (scenarioResults.id == searchedId) {
-			return scenarioResults;
-		}
-	}
-	return null;
-}
-
-/**
- * Returns a list of scenario results which have a summary
- *
- * @param global Indicates whether the summary must be global or not.
- * @param config Configuration name
- * @return A list of {@link ScenarioResults scenario results} which have a summary
- */
-public List<ScenarioResults> getSummaryScenarios(boolean global, String config) {
-	int size= size();
-	List<ScenarioResults> scenarios = new ArrayList<>(size);
-	for (int i=0; i<size; i++) {
-		ScenarioResults scenarioResults = (ScenarioResults) this.children.get(i);
-		ConfigResults configResults = scenarioResults.getConfigResults(config);
-		if (configResults != null) {
-			BuildResults buildResults = configResults.getCurrentBuildResults();
-			if ((global && buildResults.summaryKind == 1) || (!global && buildResults.summaryKind >= 0)) {
-				scenarios.add(scenarioResults);
-			}
-		}
-	}
-	return scenarios;
-}
-
-private String lastBuildName(int kind) {
-	String[] builds = getAllSortedBuildNames();
-	int idx = builds.length-1;
-	String lastBuildName = builds[idx--];
-	switch (kind) {
-		case 1: // no ref
-			while (lastBuildName.startsWith(DB_Results.getDbBaselinePrefix())) {
-				lastBuildName = builds[idx--];
-			}
-			break;
-		case 2: // only I-build or M-build
-			char ch = lastBuildName.charAt(0);
-			while (ch != 'I' && ch != 'M') {
-				lastBuildName = builds[idx--];
-				ch = lastBuildName.charAt(0);
-			}
-			break;
-		default:
-			break;
-	}
-	return lastBuildName;
-}
-
-/*
- * Read local file contents and populate the results model with the collected
- * information.
- */
-String readLocalFile(File dir, List<ScenarioResults> scenarios) throws FileNotFoundException {
-//	if (!dir.exists()) return null;
-	File dataFile = new File(dir, getName()+".dat");	//$NON-NLS-1$
-	if (!dataFile.exists()) throw new FileNotFoundException();
-	try (DataInputStream stream = new DataInputStream(new BufferedInputStream(new FileInputStream(dataFile)));) {
-		// Read local file info
-
-		print(" - read local files info"); //$NON-NLS-1$
-		String lastBuildName = stream.readUTF(); // first string is the build name
-
-		// Next field is the number of scenarios for the component
-		int size = stream.readInt();
-
-		// Then follows all the scenario information
-		for (int i=0; i<size; i++) {
-			// ... which starts with the scenario id
-			int scenario_id = stream.readInt();
-			ScenarioResults scenarioResults = scenarios == null ? null : getScenarioResults(scenarios, scenario_id);
-			if (scenarioResults == null) {
-				// this can happen if scenario pattern does not cover all those stored in local data file
-				// hence, creates a fake scenario to read the numbers and skip to the next scenario
-				// Note: we put a fake name and decription here since in some logging cases, it requires a name.
-				// TODO: should work though the issues and make a "NullScenarioResult" work everywhere.
-				scenarioResults = new ScenarioResults(-1, "org.eclipse.unexplained", "Place holder scenerio that does not appear to fit in?");
-//				scenarioResults.parent = this;
-//				scenarioResults.readData(stream);
-				// Should no longer occur as we get all scenarios from database now
-//				throw new RuntimeException("Unexpected unfound scenario!"); //$NON-NLS-1$
-			}
-			scenarioResults.parent = this;
-			scenarioResults.printStream = this.printStream;
-			scenarioResults.readData(stream);
-			addChild(scenarioResults, true);
-			if (this.printStream != null) this.printStream.print('.');
-		}
-		println();
-		println("	=> "+size+" scenarios data were read from file "+dataFile); //$NON-NLS-1$ //$NON-NLS-2$
-
-		// Return last build name stored in the local files
-		return lastBuildName;
-	} catch (IOException ioe) {
-		println("	!!! "+dataFile+" should be deleted as it contained invalid data !!!"); //$NON-NLS-1$ //$NON-NLS-2$
-	}
-	return null;
-}
-
-/*
- * Read the database values for a build name and a list of scenarios.
- * The database is read only if the components does not already knows the
- * given build (i.e. if it has not been already read) or if the force arguments is set.
- */
-void updateBuild(String buildName, List<ScenarioResults> scenarios, boolean force, File dataDir, SubMonitor subMonitor, PerformanceResults.RemainingTimeGuess timeGuess) {
-
-	// Read all variations
-	println("Component '"+this.name+"':"); //$NON-NLS-1$ //$NON-NLS-2$
-
-	// manage monitor
-	int size = scenarios.size();
-	subMonitor.setWorkRemaining(size+1);
-	StringBuilder buffer = new StringBuilder("Component "); //$NON-NLS-1$
-	buffer.append(this.name);
-	buffer.append("..."); //$NON-NLS-1$
-	String title = buffer.toString();
-	subMonitor.subTask(title+timeGuess.display());
-	timeGuess.count++;
-	subMonitor.worked(1);
-	if (subMonitor.isCanceled()) return;
-
-	// Read new values for the local result
-	boolean dirty = false;
-	long readTime = System.currentTimeMillis();
-	String log = " - read scenarios from DB:"; //$NON-NLS-1$
-	if (size > 0) {
-		for (int i=0; i<size; i++) {
-
-			// manage monitor
-			subMonitor.subTask(title+timeGuess.display());
-			timeGuess.count++;
-			if (log != null) {
-				println(log);
-				log = null;
-			}
-
-			// read results
-			ScenarioResults nextScenarioResults= scenarios.get(i);
-			ScenarioResults scenarioResults = (ScenarioResults) getResults(nextScenarioResults.id);
-			if (scenarioResults == null) {
-				// Scenario is not known yet, force an update
-				scenarioResults = nextScenarioResults;
-				scenarioResults.parent = this;
-				scenarioResults.printStream = this.printStream;
-				scenarioResults.updateBuild(buildName, true);
-				dirty = true;
-				addChild(scenarioResults, true);
-			} else {
-				if (scenarioResults.updateBuild(buildName, force)) {
-					dirty = true;
-				}
-			}
-			if (dataDir != null && dirty && (System.currentTimeMillis() - readTime) > 300000) { // save every 5mn
-				writeData(dataDir, true, true);
-				dirty = false;
-				readTime = System.currentTimeMillis();
-			}
-
-			// manage monitor
-			subMonitor.worked(1);
-			if (subMonitor.isCanceled()) return;
-		}
-	}
-
-	// Write local files
-	if (dataDir != null) {
-		writeData(dataDir, false, dirty);
-	}
-
-	// Print global time
-	printGlobalTime(readTime);
-
-}
-
-/*
- * Write the component results data to the file '<component name>.dat' in the given directory.
- */
-void writeData(File dir, boolean temp, boolean dirty) {
-    if (DO_NOT_WRITE_DATA) {
-        return;
-    }
-//	if (!dir.exists() && !dir.mkdirs()) {
-//		System.err.println("can't create directory "+dir); //$NON-NLS-1$
-//	}
-	File tmpFile = new File(dir, getName()+".tmp"); //$NON-NLS-1$
-	File dataFile = new File(dir, getName()+".dat"); //$NON-NLS-1$
-	if (!dirty) { // only possible on final write
-		if (tmpFile.exists()) {
-			if (dataFile.exists()) dataFile.delete();
-			tmpFile.renameTo(dataFile);
-			println("	=> rename temporary file to "+dataFile); //$NON-NLS-1$
-		}
-		return;
-	}
-	if (tmpFile.exists()) {
-		tmpFile.delete();
-	}
-	File file;
-	if (temp) {
-		file = tmpFile;
-	} else {
-		if (dataFile.exists()) {
-			dataFile.delete();
-		}
-		file = dataFile;
-	}
-
-		try (DataOutputStream stream = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(file)))){
-			int size = this.children.size();
-			stream.writeUTF(lastBuildName(0));
-			stream.writeInt(size);
-			for (int i=0; i<size; i++) {
-				ScenarioResults scenarioResults = (ScenarioResults) this.children.get(i);
-				scenarioResults.write(stream);
-			}
-
-	} catch (FileNotFoundException e) {
-		System.err.println("can't create output file"+file); //$NON-NLS-1$
-	} catch (IOException e) {
-		e.printStackTrace();
-	} finally {
-    println(" => extracted data "+(temp?"temporarily ":"")+"written in file "+file); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
-  }
-}
-
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/ConfigResults.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/ConfigResults.java
deleted file mode 100644
index ec0ffe4..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/ConfigResults.java
+++ /dev/null
@@ -1,643 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.internal.performance.results.db;
-
-import java.io.DataInputStream;
-import java.io.DataOutputStream;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.test.internal.performance.InternalDimensions;
-import org.eclipse.test.internal.performance.results.utils.Util;
-
-/**
- * Class to handle results for an Eclipse performance test box
- * (called a <i>configuration</i>).
- *
- * It gives access to results for each build on which this configuration has been run.
- *
- * @see BuildResults
- */
-public class ConfigResults extends AbstractResults {
-	BuildResults baseline, current;
-	boolean baselined = false, valid = false;
-	double delta, error;
-
-public ConfigResults(AbstractResults parent, int id) {
-	super(parent, id);
-	this.name = parent.getPerformance().sortedConfigNames[id];
-	this.printStream = parent.printStream;
-}
-
-/*
- * Complete results with additional database information.
- */
-void completeResults(String[] builds) {
-	/*if (this.baseline == null || this.current == null) */initialize();
-	ScenarioResults scenarioResults = (ScenarioResults) this.parent;
-	DB_Results.queryScenarioSummaries(scenarioResults, this.name, builds);
-}
-
-/**
- * Returns the baseline build name used to compare results with.
- *
- * @return The name of the baseline build
- * @see #getBaselineBuildResults()
- */
-public String getBaselineBuildName() {
-	if (this.baseline == null) {
-	    initialize();
-    }
-	return this.baseline.getName();
-}
-
-/**
- * Returns the most recent baseline build results.
- *
- * @return The {@link BuildResults baseline build results}.
- * @see BuildResults
- */
-public BuildResults getBaselineBuildResults() {
-	if (this.baseline == null) {
-	    initialize();
-    }
-	return this.baseline;
-}
-
-/**
- * Return the baseline build results run just before the given build name.
- *
- * @param buildName The build name
- * @return The {@link BuildResults baseline results} preceding the given build name
- * 	or <code>null</code> if none was found.
- */
-public BuildResults getBaselineBuildResults(String buildName) {
-	if (this.baseline == null) {
-	    initialize();
-    }
-	int size = this.children.size();
-	String buildDate = Util.getBuildDate(buildName);
-	for (int i=size-1; i>=0; i--) {
-		BuildResults buildResults = (BuildResults) this.children.get(i);
-		if (buildResults.isBaseline() && buildResults.getDate().compareTo(buildDate) < 0) {
-			return buildResults;
-		}
-	}
-	return this.baseline;
-
-}
-
-/**
- * Returns the most recent baseline build result value.
- *
- * @return The value of the most recent baseline build results.
- */
-public double getBaselineBuildValue() {
-	if (this.baseline == null) {
-	    initialize();
-    }
-	return this.baseline.getValue();
-}
-
-/**
- * Returns the configuration description (currently the box name).
- *
- * @return The configuration description (currently the box name).
- */
-public String getDescription() {
-	return getPerformance().sortedConfigDescriptions[this.id];
-}
-
-/**
- * Return the results for the given build name.
- *
- * @param buildName The build name
- * @return The {@link BuildResults results} for the given build name
- * 	or <code>null</code> if none was found.
- */
-public BuildResults getBuildResults(String buildName) {
-	return (BuildResults) getResults(buildName);
-}
-
-/**
- * Returns the build results matching a given pattern.
- *
- * @param buildPattern The pattern of searched builds
- * @return The list of the builds which names match the given pattern.
- * 	The list is ordered by build results date.
- */
-public List<BuildResults> getBuilds(String buildPattern) {
-	List<BuildResults> builds = new ArrayList<>();
-	int size = size();
-	for (int i=0; i<size; i++) {
-		BuildResults buildResults = (BuildResults) this.children.get(i);
-		if (buildPattern == null || buildResults.match(buildPattern)) {
-			builds.add(buildResults);
-		}
-	}
-	return builds;
-}
-
-/**
- * Returns the build results before a given build name.
- *
- * @param buildName Name of the last build (included)
- * @return The list of the builds which precedes the given build name.
- */
-public List<BuildResults> getBuildsBefore(String buildName) {
-	String buildDate = Util.getBuildDate(buildName);
-	List<BuildResults> builds = new ArrayList<>();
-	int size = size();
-	for (int i=0; i<size; i++) {
-		BuildResults buildResults = (BuildResults) this.children.get(i);
-		if (buildName == null || buildResults.getDate().compareTo(buildDate) <= 0) {
-			builds.add(buildResults);
-		}
-	}
-	return builds;
-}
-
-/**
- * Returns a list of build results which names starts with one of the given prefixes.
- *
- * @param prefixes List of expected prefixes
- * @return A list of builds which names start with one of the given patterns.
- */
-public List<AbstractResults> getBuildsMatchingPrefixes(List<String> prefixes) {
-	List<AbstractResults> builds = new ArrayList<>();
-	int size = size();
-	int length = prefixes.size();
-	for (int i=0; i<size; i++) {
-		AbstractResults buildResults = this.children.get(i);
-		String buildName = buildResults.getName();
-		for (int j=0; j<length; j++) {
-			if (buildName.startsWith(prefixes.get(j))) {
-				builds.add(buildResults);
-			}
-		}
-	}
-	return builds;
-}
-
-/**
- * Get all results numbers for the max last builds.
- *
- * @param max The number of last builds to get numbers.
- * @return An 2 dimensions array of doubles. At the first level of the array each slot
- * 		represents one build. That means that the dimension of the array matches
- * 		the given numbers as soon as there are enough builds in the database.
- * <p>
- * 		The slots of the second level are the numbers values:
- * 	<ul>
- * 		<li>{@link #BUILD_VALUE_INDEX}: the build value in milliseconds</li>
- * 		<li>{@link #BASELINE_VALUE_INDEX}: the baseline value in milliseconds</li>
- * 		<li>{@link #DELTA_VALUE_INDEX}: the difference between the build value and its more recent baseline</li>
- * 		<li>{@link #DELTA_ERROR_INDEX}: the error made while computing the difference</li>
- * 		<li>{@link #BUILD_ERROR_INDEX}: the error made while measuring the build value</li>
- * 		<li>{@link #BASELINE_ERROR_INDEX}: the error made while measuring the baseline value</li>
- * 	</ul>
-*/
-public double[][] getLastNumbers(int max) {
-
-	// Return null if no previous builds are expected
-	if (max <= 0) return null;
-
-	// Add numbers for each previous build
-	int size = size();
-	double[][] numbers = new double[Math.min(max, size)][];
-	int n = 0;
-	for (int i=size-1; i>=0 && n<max; i--) {
-		BuildResults buildResults = (BuildResults) this.children.get(i);
-		if (!buildResults.isBaseline()) {
-			numbers[n] = getNumbers(buildResults, getBaselineBuildResults(buildResults.getName()));
-			n++;
-		}
-	}
-
-	// Return the numbers
-	return numbers;
-}
-
-/**
- * Returns interesting numbers for the current configuration.
- *
- * @return Values in an array of double:
- * 	<ul>
- * 		<li>{@link AbstractResults#BUILD_VALUE_INDEX}: the build value in milliseconds</li>
- * 		<li>{@link AbstractResults#BASELINE_VALUE_INDEX}: the baseline value in milliseconds</li>
- * 		<li>{@link AbstractResults#DELTA_VALUE_INDEX}: the difference between the build value and its more recent baseline</li>
- * 		<li>{@link AbstractResults#DELTA_ERROR_INDEX}: the error made while computing the difference</li>
- * 		<li>{@link AbstractResults#BUILD_ERROR_INDEX}: the error made while measuring the build value</li>
- * 		<li>{@link AbstractResults#BASELINE_ERROR_INDEX}: the error made while measuring the baseline value</li>
- * 	</ul>
- */
-public double[] getNumbers(BuildResults buildResults, BuildResults baselineResults) {
-	if (baselineResults == null) {
-		return null;
-	}
-	double[] values = new double[NUMBERS_LENGTH];
-	for (int i=0 ;i<NUMBERS_LENGTH; i++) {
-		values[i] = Double.NaN;
-	}
-	double buildValue = buildResults.getValue();
-	values[BUILD_VALUE_INDEX] = buildValue;
-	double baselineValue = baselineResults.getValue();
-	values[BASELINE_VALUE_INDEX] = baselineValue;
-	double buildDelta = (baselineValue - buildValue) / baselineValue;
-	values[DELTA_VALUE_INDEX] = buildDelta;
-	if (Double.isNaN(buildDelta)) {
-		return values;
-	}
-	long baselineCount = baselineResults.getCount();
-	long currentCount = buildResults.getCount();
-	if (baselineCount > 1 && currentCount > 1) {
-		double baselineError = baselineResults.getError();
-		double currentError = buildResults.getError();
-		values[BASELINE_ERROR_INDEX] = baselineError;
-		values[BUILD_ERROR_INDEX] = currentError;
-		values[DELTA_ERROR_INDEX] = Double.isNaN(baselineError)
-				? currentError / baselineValue
-				: Math.sqrt(baselineError*baselineError + currentError*currentError) / baselineValue;
-	}
-	return values;
-}
-
-/**
- * Return the deviation value and its associated standard error for the default dimension
- * (currently {@link InternalDimensions#ELAPSED_PROCESS}).
- *
- * @return an array of double. First number is the deviation itself and
- * 	the second is the standard error.
- */
-public double[] getCurrentBuildDeltaInfo() {
-	if (this.baseline == null || this.current == null) {
-		initialize();
-	}
-	return new double[] { this.delta, this.error };
-}
-
-/**
- * Returns the error of the current build results
- *
- * @return the error made during the current build measure
- */
-public double getCurrentBuildError() {
-	if (this.current == null) {
-	    initialize();
-    }
-	return this.current.getError();
-}
-
-/**
- * Returns the current build name.
- *
- * @return The name of the current build
- * @see #getCurrentBuildResults()
- */
-public String getCurrentBuildName() {
-	if (this.current == null) {
-	    initialize();
-    }
-	return this.current.getName();
-}
-
-/**
- * Returns the current build results.
- * <p>
- * This build is currently the last integration build which has performance results in the database.
- * It may differ from the {@link PerformanceResults#getName()}.
- *
- * @return The current build results.
- * @see BuildResults
- */
-public BuildResults getCurrentBuildResults() {
-	if (this.current == null) {
-	    initialize();
-    }
-	return this.current;
-}
-
-/**
- * Returns the current build result value.
- *
- * @return The value of the current build results.
- */
-public double getCurrentBuildValue() {
-	if (this.current == null) {
-	    initialize();
-    }
-	return this.current.getValue();
-}
-
-/**
- * Returns the delta between current and baseline builds results.
- *
- * @return the delta
- */
-public double getDelta() {
-	if (this.baseline == null || this.current == null) {
-		initialize();
-	}
-	return this.delta;
-}
-
-/**
- * Returns the standard error of the delta between current and baseline builds results.
- *
- * @return the delta
- * @see #getDelta()
- */
-public double getError() {
-	if (this.baseline == null || this.current == null) {
-		initialize();
-	}
-	return this.error;
-}
-
-/**
- * Return the name of the machine associated with the current config.
- *
- * @return The name of the machine.
- */
-public String getLabel() {
-	return this.parent.getPerformance().sortedConfigDescriptions[this.id];
-}
-
-/**
- * Get all dimension builds default dimension statistics for all builds.
- *
- * @return An array of double built as follows:
- * <ul>
- * <li>0:	numbers of values</li>
- * <li>1:	mean of values</li>
- * <li>2:	standard deviation of these values</li>
- * <li>3:	coefficient of variation of these values</li>
- * </ul>
- */
-public double[] getStatistics() {
-	return getStatistics(Util.ALL_BUILD_PREFIXES, DB_Results.getDefaultDimension().getId());
-}
-
-/**
- * Get all dimension builds default dimension statistics for a given list of build
- * prefixes.
- *
- * @param prefixes List of prefixes to filter builds. If <code>null</code>
- * 	then all the builds are taken to compute statistics.
- * @return An array of double built as follows:
- * <ul>
- * <li>0:	numbers of values</li>
- * <li>1:	mean of values</li>
- * <li>2:	standard deviation of these values</li>
- * <li>3:	coefficient of variation of these values</li>
- * </ul>
- */
-public double[] getStatistics(List<String> prefixes) {
-	return getStatistics(prefixes, DB_Results.getDefaultDimension().getId());
-}
-
-/**
- * Get all dimension builds statistics for a given list of build prefixes
- * and a given dimension.
- *
- * @param prefixes List of prefixes to filter builds. If <code>null</code>
- * 	then all the builds are taken to compute statistics.
- * @param dim_id The id of the dimension on which the statistics must be computed
- * @return An array of double built as follows:
- * <ul>
- * <li>0:	numbers of values</li>
- * <li>1:	mean of values</li>
- * <li>2:	standard deviation of these values</li>
- * <li>3:	coefficient of variation of these values</li>
- * </ul>
- */
-public double[] getStatistics(List<String> prefixes, int dim_id) {
-	int size = size();
-	int length = prefixes == null ? 0 : prefixes.size();
-	int count = 0;
-	double mean=0, stddev=0, variation=0;
-	double[] values = new double[size];
-	count = 0;
-	mean = 0.0;
-	for (int i=0; i<size; i++) {
-		BuildResults buildResults = (BuildResults) this.children.get(i);
-		String buildName = buildResults.getName();
-		if (isBuildConcerned(buildResults)) {
-			if (prefixes == null) {
-				double value = buildResults.getValue(dim_id);
-				values[count] = value;
-				mean += value;
-				count++;
-			} else {
-				for (int j=0; j<length; j++) {
-					if (buildName.startsWith(prefixes.get(j))) {
-						double value = buildResults.getValue(dim_id);
-						values[count] = value;
-						mean += value;
-						count++;
-					}
-				}
-			}
-		}
-	}
-	mean /= count;
-	for (int i=0; i<count; i++) {
-		stddev += Math.pow(values[i] - mean, 2);
-	}
-	stddev = Math.sqrt((stddev / (count - 1)));
-	variation = stddev / mean;
-	return new double[] { count, mean, stddev, variation };
-}
-
-private void initialize() {
-	reset();
-	// Get performance results builds name
-	PerformanceResults perfResults = getPerformance();
-	String baselineBuildName = perfResults.getBaselineName();
-	String baselineBuildDate = baselineBuildName == null ? null : Util.getBuildDate(baselineBuildName);
-	String currentBuildName = perfResults.name;
-	String currentBuildDate = currentBuildName == null ? null : Util.getBuildDate(currentBuildName);
-
-	// Set baseline and current builds
-	BuildResults lastBaseline = null;
-	int size = size();
-	if (size == 0) return;
-	for (int i=0; i<size; i++) {
-		BuildResults buildResults = (BuildResults) this.children.get(i);
-		if (buildResults.values != null) {
-			buildResults.cleanValues();
-		}
-		if (buildResults.isBaseline()) {
-			if (lastBaseline == null || baselineBuildDate == null || baselineBuildDate.compareTo(buildResults.getDate()) >= 0) {
-				lastBaseline = buildResults;
-			}
-			if (baselineBuildName != null && buildResults.getName().equals(baselineBuildName)) {
-				this.baseline = buildResults;
-				this.baselined = true;
-			}
-		} else if (currentBuildName == null || currentBuildDate == null || (this.current == null && buildResults.getDate().compareTo(currentBuildDate) >= 0)) {
-			this.current = buildResults;
-			this.valid = true;
-		}
-	}
-	if (this.baseline == null) {
-		this.baseline = (lastBaseline == null) ? (BuildResults) this.children.get(0) : lastBaseline;
-	}
-	if (this.current == null) {
-		int idx = size() - 1;
-		BuildResults previous = (BuildResults) this.children.get(idx--);
-		while (idx >= 0 && previous.isBaseline()) {
-			previous = (BuildResults) this.children.get(idx--);
-		}
-		this.current = previous;
-	}
-
-	// Set delta between current vs. baseline and the corresponding error
-	int dim_id = DB_Results.getDefaultDimension().getId();
-	double baselineValue = this.baseline.getValue();
-	double currentValue = this.current.getValue();
-	this.delta = (currentValue - baselineValue) / baselineValue;
-	if (Double.isNaN(this.delta)) {
-		this.error = Double.NaN;
-	} else {
-		long baselineCount = this.baseline.getCount(dim_id);
-		long currentCount = this.current.getCount(dim_id);
-		if (baselineCount == 1 || currentCount == 1) {
-			this.error = Double.NaN;
-		} else {
-			double baselineError = this.baseline.getError(dim_id);
-			double currentError = this.current.getError(dim_id);
-			this.error = Double.isNaN(baselineError)
-					? currentError / baselineValue
-					: Math.sqrt(baselineError*baselineError + currentError*currentError) / baselineValue;
-		}
-	}
-
-	// Set the failure on the current build if necessary
-	int failure_threshold = getPerformance().failure_threshold;
-	if (this.delta >= (failure_threshold/100.0)) {
-		StringBuilder buffer = new StringBuilder("Performance criteria not met when compared to '"); //$NON-NLS-1$
-		buffer.append(this.baseline.getName());
-		buffer.append("': "); //$NON-NLS-1$
-		buffer.append(DB_Results.getDefaultDimension().getName());
-		buffer.append("= "); //$NON-NLS-1$
-		buffer.append(Util.timeString((long)this.current.getValue()));
-		buffer.append(" is not within [0%, "); //$NON-NLS-1$
-		buffer.append(100+failure_threshold);
-		buffer.append("'%] of "); //$NON-NLS-1$
-		buffer.append(Util.timeString((long)this.baseline.getValue()));
-		this.current.setFailure(buffer.toString());
-	}
-}
-
-/**
- * Returns whether the configuration has results for the performance
- * baseline build or not.
- *
- * @return <code>true</code> if the configuration has results
- * 	for the performance baseline build, <code>false</code> otherwise.
- */
-public boolean isBaselined() {
-	if (this.baseline == null || this.current == null) {
-	    initialize();
-    }
-	return this.baselined;
-}
-
-boolean isBuildConcerned(BuildResults buildResults) {
-	String buildDate = buildResults.getDate();
-	String currentBuildDate = getCurrentBuildResults() == null ? null : getCurrentBuildResults().getDate();
-	String baselineBuildDate = getBaselineBuildResults() == null ? null : getBaselineBuildResults().getDate();
-	return ((currentBuildDate == null || buildDate.compareTo(currentBuildDate) <= 0) &&
-		(baselineBuildDate == null || buildDate.compareTo(baselineBuildDate) <= 0));
-}
-/**
- * Returns whether the configuration has results for the performance
- * current build or not.
- *
- * @return <code>true</code> if the configuration has results
- * 	for the performance current build, <code>false</code> otherwise.
- */
-public boolean isValid() {
-	if (this.baseline == null || this.current == null) {
-	    initialize();
-    }
-	return this.valid;
-}
-
-/*
- * Read all configuration builds results data from the given stream.
- */
-void readData(DataInputStream stream) throws IOException {
-	int size = stream.readInt();
-	for (int i=0; i<size; i++) {
-		BuildResults buildResults = new BuildResults(this);
-		buildResults.readData(stream);
-		String lastBuildName = getPerformance().lastBuildName;
-		if (lastBuildName == null || buildResults.getDate().compareTo(Util.getBuildDate(lastBuildName)) <= 0) {
-			addChild(buildResults, true);
-		}
-	}
-}
-
-private void reset() {
-	this.current = null;
-	this.baseline = null;
-	this.baselined = false;
-	this.valid = false;
-	this.delta = 0;
-	this.error = -1;
-}
-
-/*
- * Set the configuration value from database information
- */
-void setInfos(int build_id, int summaryKind, String comment) {
-	BuildResults buildResults = (BuildResults) getResults(build_id);
-	if (buildResults == null) {
-		buildResults = new BuildResults(this, build_id);
-		addChild(buildResults, true);
-	}
-	buildResults.summaryKind = summaryKind;
-	buildResults.comment = comment;
-}
-
-/*
- * Set the configuration value from database information
- */
-void setValue(int build_id, int dim_id, int step, long value) {
-//	reset();
-	BuildResults buildResults = (BuildResults) getResults(build_id);
-	if (buildResults == null) {
-		buildResults = new BuildResults(this, build_id);
-		addChild(buildResults, true);
-	}
-	buildResults.setValue(dim_id, step, value);
-}
-
-/*
- * Write all configuration builds results data into the given stream.
- */
-void write(DataOutputStream stream) throws IOException {
-    if (DO_NOT_WRITE_DATA) {
-        return;
-    }
-	int size = size();
-	stream.writeInt(this.id);
-	stream.writeInt(size);
-	for (int i=0; i<size; i++) {
-		BuildResults buildResults = (BuildResults) this.children.get(i);
-		buildResults.write(stream);
-	}
-}
-
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/DB_Results.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/DB_Results.java
deleted file mode 100644
index cd37339..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/DB_Results.java
+++ /dev/null
@@ -1,967 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.internal.performance.results.db;
-
-import java.io.File;
-import java.io.PrintWriter;
-import java.io.StringWriter;
-import java.math.BigDecimal;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.Assert;
-import org.eclipse.test.internal.performance.PerformanceTestPlugin;
-import org.eclipse.test.internal.performance.data.Dim;
-import org.eclipse.test.internal.performance.results.utils.Util;
-import org.eclipse.test.performance.Dimension;
-
-/**
- * Specific and private implementation of {@link org.eclipse.test.internal.performance.db.DB} class
- * to get massive results from performance results database.
- */
-public class DB_Results {
-
-
-    // This doesn't seem good (was just R-, instead of using what we pass in)
-	private static final String DEFAULT_DB_BASELINE_PREFIX = "R-4.6";
-
-	private static final Dim[] NO_DIMENSION = new Dim[0];
-	private static final String[] EMPTY_LIST = new String[0];
-	static final boolean DEBUG = true;
-    static final boolean LOG = true;
-
-    private static DB_Results fgDefault;
-
-    private SQL_Results fSQL;
-
-	    // Preferences info
-    public static boolean DB_CONNECTION = false;
-	private static String DB_BASELINE_PREFIX = DEFAULT_DB_BASELINE_PREFIX;
-
-	/**
-	 * Get the default baseline prefix.
-	 *
-	 * @return The prefix as a string.
-	 */
-    public static String getDbBaselinePrefix() {
-    	return DB_BASELINE_PREFIX;
-    }
-
-	/**
-	 * Set the baseline prefix of the database.
-	 *
-	 * @param baselinePrefix The prefix as a string.
-	 */
-    public static void setDbDefaultBaselinePrefix(String baselinePrefix) {
-    	Assert.isNotNull(baselinePrefix);
-    	Assert.isTrue(baselinePrefix.startsWith(DEFAULT_DB_BASELINE_PREFIX));
-    	DB_BASELINE_PREFIX = baselinePrefix;
-    }
-
-	/**
-	 * The list of all the configurations (i.e. machine) stored in the database.
-	 */
-	private static String[] CONFIGS;
-
-	/**
-	 * The list of all the components stored in the database.
-	 */
-	private static String[] COMPONENTS;
-
-	/**
-	 * The list of all the builds stored in the database.
-	 */
-	private static String[] BUILDS;
-
-	/**
-	 * The list of all the dimensions stored in the database.
-	 */
-	private static int[] DIMENSIONS;
-
-	/**
-	 * The default dimension used to display results (typically in fingerprints).
-	 */
-	private static Dim DEFAULT_DIM;
-	private static int DEFAULT_DIM_INDEX;
-
-	/**
-	 * The list of all the dimensions displayed while generating results.
-	 */
-	private static Dim[] RESULTS_DIMENSIONS;
-
-	/**
-	 * The list of all the VMs stored in the database.
-	 */
-	private static String[] VMS;
-
-	/**
-	 * The list of possible test boxes.
-	 * <p>
-	 * Only used if no specific configurations are specified
-	 * (see {@link PerformanceResults#readAll(String, String[][], String, File, int, org.eclipse.core.runtime.IProgressMonitor)}.
-	 * </p>
-	 * Note that this is a copy of the the property "eclipse.perf.config.descriptors"
-	 * defined in org.eclipse.releng.eclipsebuilder/eclipse/helper.xml file
-	 */
-	private static String[] CONFIG_DESCRIPTIONS;
-
-	/**
-	 * The list of known Eclipse components.
-	 */
-	private final static String[] ECLIPSE_COMPONENTS = {
-		"org.eclipse.ant", //$NON-NLS-1$
-		"org.eclipse.compare", //$NON-NLS-1$
-		"org.eclipse.core", //$NON-NLS-1$
-		"org.eclipse.help", //$NON-NLS-1$
-		"org.eclipse.jdt.core", //$NON-NLS-1$
-		"org.eclipse.jdt.debug", //$NON-NLS-1$
-		"org.eclipse.jdt.text", //$NON-NLS-1$
-		"org.eclipse.jdt.ui", //$NON-NLS-1$
-		"org.eclipse.jface", //$NON-NLS-1$
-		"org.eclipse.osgi", //$NON-NLS-1$
-		"org.eclipse.pde.api.tools", //$NON-NLS-1$
-		"org.eclipse.pde.ui", //$NON-NLS-1$
-		"org.eclipse.swt", //$NON-NLS-1$
-		"org.eclipse.team", //$NON-NLS-1$
-		"org.eclipse.ua", //$NON-NLS-1$
-		"org.eclipse.ui" //$NON-NLS-1$
-	};
-	private static String[] KNOWN_COMPONENTS = ECLIPSE_COMPONENTS;
-
-
-	    // Store debug info
-	final static StringWriter DEBUG_STR_WRITER;
-	final static PrintWriter DEBUG_WRITER;
-	static {
-		if (DEBUG) {
-			DEBUG_STR_WRITER= new StringWriter();
-			DEBUG_WRITER= new PrintWriter(DEBUG_STR_WRITER);
-		} else {
-			DEBUG_STR_WRITER= null;
-			DEBUG_WRITER= null;
-		}
-	}
-
-    // Store log info
-    final static StringWriter LOG_STR_WRITER = new StringWriter();
-    final static LogWriter LOG_WRITER = new LogWriter();
-    static class LogWriter extends PrintWriter {
-		long[] starts = new long[10];
-		long[] times = new long[10];
-    	StringBuilder[] buffers = new StringBuilder[10];
-    	int depth = -1, max = -1;
-    	public LogWriter() {
-	        super(LOG_STR_WRITER);
-        }
-		void starts(String log) {
-    		if (++this.depth >= this.buffers.length) {
-    			System.arraycopy(this.times, 0, this.times = new long[this.depth+10], 0, this.depth);
-    			System.arraycopy(this.buffers, 0, this.buffers= new StringBuilder[this.depth+10], 0, this.depth);
-    		}
-    		StringBuilder buffer = this.buffers[this.depth];
-    		if (this.buffers[this.depth] == null) buffer = this.buffers[this.depth] = new StringBuilder();
-    		buffer.append(log);
-    		this.starts[this.depth] = System.currentTimeMillis();
-    		if (this.depth > this.max) this.max = this.depth;
-    	}
-		void ends(String log) {
-			if (this.depth < 0)
-				throw new RuntimeException("Invalid call to ends (missing corresponding starts call)!"); //$NON-NLS-1$
-    		this.buffers[this.depth].append(log);
-    		if (this.depth > 0) {
-    			this.times[this.depth] += System.currentTimeMillis() - this.starts[this.depth];
-    			this.depth--;
-    			return;
-    		}
-    		for (int i=0; i<this.max; i++) {
-	    		print(this.buffers[i].toString());
-	    		print(" ( in "); //$NON-NLS-1$
-	    		print(this.times[this.depth]);
-    			println("ms)"); //$NON-NLS-1$
-    		}
-    		this.depth = this.max = -1;
-			this.starts = new long[10];
-			this.times = new long[10];
-    		this.buffers = new StringBuilder[10];
-    	}
-		@Override
-    public String toString() {
-	        return LOG_STR_WRITER.toString();
-        }
-    }
-
-	// Data storage from queries
-	static String LAST_CURRENT_BUILD, LAST_BASELINE_BUILD;
-	private static int BUILDS_LENGTH;
-	private static String[] SCENARII;
-	private static String[] COMMENTS;
-
-    //---- private implementation
-
-	/**
-     * Private constructor to block instance creation.
-     */
-    private DB_Results() {
-    	// empty implementation
-    }
-
-    synchronized static DB_Results getDefault() {
-        if (fgDefault == null) {
-            fgDefault= new DB_Results();
-            if (PerformanceTestPlugin.getDefault() == null) {
-            	// not started as plugin
-	            Runtime.getRuntime().addShutdownHook(
-	                new Thread() {
-	                    @Override
-                      public void run() {
-	                    	shutdown();
-	                    }
-	                }
-	            );
-            }
-        }
-        return fgDefault;
-    }
-
-    public static void shutdown() {
-        if (fgDefault != null) {
-            fgDefault.disconnect();
-            fgDefault= null;
-            BUILDS = null;
-            LAST_BASELINE_BUILD = null;
-            LAST_CURRENT_BUILD = null;
-            DIMENSIONS = null;
-            CONFIGS = null;
-            COMPONENTS = null;
-            SCENARII = null;
-            COMMENTS = null;
-            DEFAULT_DIM =null;
-            DEFAULT_DIM_INDEX = -1;
-            RESULTS_DIMENSIONS = null;
-            VMS = null;
-            CONFIG_DESCRIPTIONS = null;
-            KNOWN_COMPONENTS = ECLIPSE_COMPONENTS;
-        }
-        if (DEBUG) {
-        	DEBUG_WRITER.println("DB.shutdown"); //$NON-NLS-1$
-        	System.out.println(DEBUG_STR_WRITER.toString());
-        }
-        if (LOG) {
-        	System.out.println(LOG_STR_WRITER.toString());
-        }
-    }
-
-/**
- * Return the build id from a given name.
- *
- * @param name The build name (eg. I20070615-1200)
- * @return The id of the build (ie. the index in the {@link #BUILDS} list)
- */
-static int getBuildId(String name) {
-	if (BUILDS == null) return -1;
-	return Arrays.binarySearch(BUILDS, name, Util.BUILD_DATE_COMPARATOR);
-}
-
-/**
- * Return the build name from a given id.
- *
- * @param id The build id
- * @return The name of the build (eg. I20070615-1200)
- */
-static String getBuildName(int id) {
-	if (BUILDS == null) return null;
-	return BUILDS[id];
-}
-
-/**
- * Returns all the builds names read from the database.
- *
- * @return The list of all builds names matching the scenario pattern used while reading data
- */
-public static String[] getBuilds() {
-	if (BUILDS == null) {
-		queryAllVariations("%"); //$NON-NLS-1$
-	}
-	if (BUILDS_LENGTH == 0) return EMPTY_LIST;
-	String[] builds = new String[BUILDS_LENGTH];
-	System.arraycopy(BUILDS, 0, builds, 0, BUILDS_LENGTH);
-	return builds;
-}
-
-/**
- * Returns the number of builds stored int the database.
- *
- * @return The number of builds stored in the database.
- */
-public static int getBuildsNumber() {
-	if (BUILDS == null) {
-		queryAllVariations("%"); //$NON-NLS-1$
-	}
-	return BUILDS_LENGTH;
-}
-
-/**
- * Get component name from a scenario.
- *
- * @param scenarioName The name of the scenario
- * @return The component name
- */
-static String getComponentNameFromScenario(String scenarioName) {
-	int length = KNOWN_COMPONENTS.length;
-	for (int i=0; i<length; i++) {
-		if (scenarioName.startsWith(KNOWN_COMPONENTS[i])) {
-			return KNOWN_COMPONENTS[i];
-		}
-	}
-	StringTokenizer tokenizer = new StringTokenizer(scenarioName, ".");
-	StringBuilder buffer = new StringBuilder(tokenizer.nextToken());
-	if (tokenizer.hasMoreTokens()) {
-		buffer.append('.');
-		buffer.append(tokenizer.nextToken());
-		if (tokenizer.hasMoreTokens()) {
-			buffer.append('.');
-			buffer.append(tokenizer.nextToken());
-		}
-	}
-	String componentName = buffer.toString();
-	System.err.println(scenarioName+" does not belongs to a known Eclipse component. So use scenario prefix "+componentName+" as component name by default and add it to the know components"); //$NON-NLS-1$
-	System.arraycopy(KNOWN_COMPONENTS, 0, KNOWN_COMPONENTS = new String[length+1], 0, length);
-	KNOWN_COMPONENTS[length] = componentName;
-	return componentName;
-}
-
-/**
- * Get all components read from database.
- *
- * @return A list of component names matching the given pattern
- */
-public static String[] getComponents() {
-	if (COMPONENTS == null) return EMPTY_LIST;
-	int length = COMPONENTS.length;
-	String[] components = new String[length];
-	System.arraycopy(COMPONENTS, 0, components, 0, length);
-	return components;
-}
-
-/**
- * Return the name of the configuration from the given id.
- *
- * @param id The index of the configuration in the stored list.
- * @return The name of the configuration (eg. eclipseperflnx1_R3.3)
- */
-static String getConfig(int id) {
-	return CONFIGS[id];
-}
-
-/**
- * Get all configurations read from the database.
- *
- * @return A list of configuration names
- */
-public static String[] getConfigs() {
-	if (CONFIGS == null) return EMPTY_LIST;
-	int length = CONFIGS.length;
-	String[] configs = new String[length];
-	System.arraycopy(CONFIGS, 0, configs, 0, length);
-	return configs;
-}
-
-/**
- * Set the default dimension used for performance results.
- */
-public static void setConfigs(String[] configs) {
-	CONFIGS = configs;
-}
-
-/**
- * Get all configurations read from the database.
- *
- * @return A list of configuration names
- */
-public static String[] getConfigDescriptions() {
-	if (CONFIG_DESCRIPTIONS == null) {
-		if (CONFIGS == null) return null;
-		int length = CONFIGS.length;
-		CONFIG_DESCRIPTIONS = new String[length];
-		String[][] configDescriptors = PerformanceTestPlugin.getConfigDescriptors();
-		int cdLength = configDescriptors.length;
-		for (int i = 0; i < length; i++) {
-			boolean found = false;
-			for (int j = 0; j < cdLength; j++) {
-				if (configDescriptors[j][0].equals(CONFIGS[i])) {
-			        CONFIG_DESCRIPTIONS[i] = configDescriptors[j][1];
-			        found = true;
-			        break;
-				}
-			}
-			if (!found) {
-				String kind = CONFIGS[i].indexOf("epwin") < 0 ? "Linux" : "Win XP";
-				CONFIG_DESCRIPTIONS[i] = kind+" perf test box "+CONFIGS[i].substring(5);
-			}
-        }
-	}
-	int length = CONFIG_DESCRIPTIONS.length;
-	String[] descriptions = new String[length];
-	System.arraycopy(CONFIG_DESCRIPTIONS, 0, descriptions, 0, length);
-	return descriptions;
-}
-
-/**
- * Set the default dimension used for performance results.
- */
-public static void setConfigDescriptions(String[] descriptions) {
-	CONFIG_DESCRIPTIONS = descriptions;
-}
-
-/**
- * Get all dimensions read from the database.
- *
- * @return A list of dimensions.
- */
-public static Dim[] getDimensions() {
-	if (DIMENSIONS == null) return NO_DIMENSION;
-	int length = DIMENSIONS.length;
-	Dim[] dimensions = new Dim[length];
-	for (int i = 0; i < length; i++) {
-		Dimension dimension = PerformanceTestPlugin.getDimension(DIMENSIONS[i]);
-		if (dimension == null) {
-			throw new RuntimeException("There is an unsupported dimension stored in the database: " +DIMENSIONS[i]);
-		}
-		dimensions[i] = (Dim) dimension;
-    }
-	return dimensions;
-}
-
-/**
- * Return the default dimension used for performance results.
- *
- * @return The {@link Dim default dimension}.
- */
-public static Dim getDefaultDimension() {
-	if (DEFAULT_DIM == null) {
-		DEFAULT_DIM = (Dim) PerformanceTestPlugin.getDefaultDimension();
-	}
-	return DEFAULT_DIM;
-}
-
-/**
- * Set the default dimension used for performance results.
- */
-public static void setDefaultDimension(String dim) {
-	DEFAULT_DIM = (Dim) PerformanceTestPlugin.getDimension(dim);
-	if (DIMENSIONS != null) {
-		DEFAULT_DIM_INDEX = Arrays.binarySearch(DIMENSIONS, DEFAULT_DIM.getId());
-	}
-}
-
-public static Dim[] getResultsDimensions() {
-	if (RESULTS_DIMENSIONS == null) {
-		Dimension[] resultsDimensions = PerformanceTestPlugin.getResultsDimensions();
-		int length = resultsDimensions.length;
-		RESULTS_DIMENSIONS = new Dim[length];
-		for (int i = 0; i < length; i++) {
-			RESULTS_DIMENSIONS[i] = (Dim) resultsDimensions[i];
-		}
-	}
-	return RESULTS_DIMENSIONS;
-}
-
-/**
- * Set the default dimension used for performance results.
- */
-public static void setResultsDimensions(String[] dimensions) {
-	int length = dimensions.length;
-	RESULTS_DIMENSIONS = new Dim[length];
-	for (int i = 0; i < length; i++) {
-		RESULTS_DIMENSIONS[i] = (Dim) PerformanceTestPlugin.getDimension(dimensions[i]);
-	}
-}
-
-/**
- * Return the default dimension used for performance results.
- *
- * @return The {@link Dim default dimension}.
- */
-public static int getDefaultDimensionIndex() {
-	if (DEFAULT_DIM == null || DEFAULT_DIM_INDEX == -1) {
-		getDefaultDimension(); // init default dimension
-		getDimensions(); // init dimensions
-		DEFAULT_DIM_INDEX = Arrays.binarySearch(DIMENSIONS, DEFAULT_DIM.getId());
-	}
-	return DEFAULT_DIM_INDEX;
-}
-
-/**
- * Return the ID of the last baseline build before the given date.
- *
- * @param date The date the baseline must be run before. If <code>null</code>
- * 	return the last baseline build stored in the DB.
- *
- * @return the ID of the last baseline build before the given date or
- * 	<code>null</code> if none was run before it...
- */
-public static String getLastBaselineBuild(String date) {
-    String buildDate = null;
-	if (BUILDS == null) {
-		queryAllVariations("%"); //$NON-NLS-1$
-	}
-	if (DEBUG) {
-	  DEBUG_WRITER.println("\n=== DEBUG getLastBaselineBuild before null checks === ");
-    DEBUG_WRITER.println("date: " + date);
-    DEBUG_WRITER.println("LAST_BASELINE_BUILD: " + LAST_BASELINE_BUILD + "\n");
-	}
-	if (date == null) {
-		if (LAST_BASELINE_BUILD == null) {
-			return BUILDS[0];
-		}
-		return LAST_BASELINE_BUILD;
-	}
-	String lastBaselineBuild = null;
-	if (DEBUG) {
-	  DEBUG_WRITER.println("\n=== DEBUG getting lastBaselineBuild === ");
-	  DEBUG_WRITER.println("buildDate: " + buildDate);
-    DEBUG_WRITER.println("date: " + date);
-    DEBUG_WRITER.println("lastBaselineBuild: " + lastBaselineBuild + "\n");
-	}
-	if (lastBaselineBuild == null && BUILDS.length > 0) {
-		return BUILDS[0];
-	}
-	return lastBaselineBuild;
-}
-
-/**
- * Return the ID of the last baseline build.
- *
- * @return the ID of the last baseline build.
- */
-public static String getLastCurrentBuild() {
-	if (BUILDS == null) {
-		queryAllVariations("%"); //$NON-NLS-1$
-	}
-	return LAST_CURRENT_BUILD;
-}
-
-/**
- * Returns all the scenarios names read from the database.
- *
- * @return The list of all scenarios matching the pattern for a given build.
- * @see #internalQueryBuildScenarios(String, String)
- */
-public static List<String> getScenarios() {
-	return Arrays.asList(SCENARII);
-}
-
-/**
- * Get all scenarios read from database.
- *
- * @return A list of all scenario names matching the default pattern
- */
-public static Map<String, List<ScenarioResults>> queryAllScenarios() {
-	return getDefault().internalQueryBuildScenarios("%", null); //$NON-NLS-1$
-}
-
-/**
- * Get all scenarios read from database matching a given pattern.
- * Note that all scenarios are returned if the pattern is <code>null</code>.
- *
- * @param scenarioPattern The pattern of the requested scenarios
- * @return A map of all scenarios matching the given pattern.
- * 	The map keys are component names and values are the scenarios list for
- * 	each component.
- */
-static Map<String, List<ScenarioResults>> queryAllScenarios(String scenarioPattern) {
-	String pattern = scenarioPattern==null ? "%" : scenarioPattern; //$NON-NLS-1$
-	return getDefault().internalQueryBuildScenarios(pattern, null);
-}
-
-/**
- * Get all scenarios read from database matching a given pattern.
- * Note that all scenarios are returned if the pattern is <code>null</code>.
- *
- * @param scenarioPattern The pattern of the requested scenarios
- * @param buildName The build name
- * @return A list of scenario names matching the given pattern
- */
-static Map<String, List<ScenarioResults>> queryAllScenarios(String scenarioPattern, String buildName) {
-	return getDefault().internalQueryBuildScenarios(scenarioPattern, buildName);
-}
-
-/**
- * Get all variations read from database matching a given configuration pattern.
- *
- * @param configPattern The pattern of the requested configurations
- */
-static void queryAllVariations(String configPattern) {
-	getDefault().internalQueryAllVariations(configPattern);
-}
-
-/**
- * Get all summaries from DB for a given scenario and configuration pattern
- *
- * @param scenarioResults The scenario results where to store data
- * @param configPattern The configuration pattern concerned by the query
- * @param builds All builds to get summaries, if <code>null</code>, then all DB
- * 	builds will be concerned.
- */
-static void queryScenarioSummaries(ScenarioResults scenarioResults, String configPattern, String[] builds) {
-	getDefault().internalQueryScenarioSummaries(scenarioResults, configPattern, builds);
-}
-
-/**
- * Query and store all values for given scenario results
- *
- * @param scenarioResults The scenario results where the values has to be put
- * @param configPattern The pattern of the configuration concerned by the query
- * @param buildName Name of the last build on which data were stored locally
- *
-*/
-static void queryScenarioValues(ScenarioResults scenarioResults, String configPattern, String buildName) {
-	getDefault().internalQueryScenarioValues(scenarioResults, configPattern, buildName);
-}
-
-private void disconnect() {
-	if (DEBUG)
-		DEBUG_WRITER.println("disconnecting from DB"); //$NON-NLS-1$
-	if (this.fSQL != null) {
-		try {
-			this.fSQL.dispose();
-		} catch (SQLException e1) {
-			PerformanceTestPlugin.log(e1);
-		}
-		this.fSQL = null;
-	}
-}
-
-/*
- * Return the index of the given configuration in the stored list.
- */
-private int getConfigId(String config) {
-	if (CONFIGS == null) return -1;
-	return Arrays.binarySearch(CONFIGS, config);
-}
-
-SQL_Results getSQL() {
-    return this.fSQL;
-}
-
-/*
- * Query all comments from database
- */
-private void internalQueryAllComments() {
-	if (this.fSQL == null) return;
-	if (COMMENTS != null) return;
-	long start = System.currentTimeMillis();
-	if (DEBUG) DEBUG_WRITER.print("		[DB query all comments..."); //$NON-NLS-1$
-	String[] comments = null;
-	try (ResultSet result = this.fSQL.queryAllComments();){
-
-		while (result.next()) {
-			int commentID = result.getInt(1);
-			// Ignore kind as there's only one
-			// int commentKind = result.getInt(2);
-			String comment = result.getString(3);
-			if (comments == null) {
-				comments = new String[commentID+10];
-			} else if (commentID >= comments.length) {
-				int length = comments.length;
-				System.arraycopy(comments, 0, comments = new String[commentID+10], 0, length);
-			}
-			comments[commentID] = comment;
-		}
-		COMMENTS = comments;
-	} catch (SQLException e) {
-		PerformanceTestPlugin.log(e);
-	} finally {
-		if (DEBUG) DEBUG_WRITER.println("done in " + (System.currentTimeMillis() - start) + "ms]"); //$NON-NLS-1$ //$NON-NLS-2$
-	}
-}
-
-/*
- * Query all variations. This method stores all config and build names.
- */
-private void internalQueryAllVariations(String configPattern) {
-	if (this.fSQL == null) return;
-	if (BUILDS != null) return;
-	long start = System.currentTimeMillis();
-	if (DEBUG) {
-		DEBUG_WRITER.print("	- DB query all variations for configuration pattern: "+configPattern); //$NON-NLS-1$
-		DEBUG_WRITER.print("..."); //$NON-NLS-1$
-	}
-	CONFIGS = null;
-	BUILDS = null;
-	BUILDS_LENGTH = 0;
-	try (ResultSet result = this.fSQL.queryAllVariations(configPattern);){
-		while (result.next()) {
-			String variation = result.getString(1); //  something like "||build=I20070615-1200||config=eclipseperfwin2_R3.3||jvm=sun|"
-			StringTokenizer tokenizer = new StringTokenizer(variation, "=|"); //$NON-NLS-1$
-			tokenizer.nextToken(); 												// 'build'
-			storeBuildName(tokenizer.nextToken());				// 'I20070615-1200'
-			tokenizer.nextToken();												// 'config'
-			storeConfig(tokenizer.nextToken()); 	// 'eclipseperfwin2_R3.3'
-			tokenizer.nextToken();												// 'jvm'
-			storeVm(tokenizer.nextToken());					// 'sun'
-		}
-		if (BUILDS_LENGTH == 0) {
-			BUILDS = EMPTY_LIST;
-		}
-	} catch (SQLException e) {
-		PerformanceTestPlugin.log(e);
-	} finally {
-		if (DEBUG) DEBUG_WRITER.println("done in " + (System.currentTimeMillis() - start) + "ms]"); //$NON-NLS-1$ //$NON-NLS-2$
-	}
-}
-
-private Map<String, List<ScenarioResults>> internalQueryBuildScenarios(String scenarioPattern, String buildName) {
-	if (this.fSQL == null) return null;
-	long start = System.currentTimeMillis();
-	if (DEBUG) {
-		DEBUG_WRITER.print("	- DB query all scenarios"); //$NON-NLS-1$
-		if (scenarioPattern != null) DEBUG_WRITER.print(" with pattern "+scenarioPattern); //$NON-NLS-1$
-		if (buildName != null) DEBUG_WRITER.print(" for build: "+buildName); //$NON-NLS-1$
-	}
-	Map<String, List<ScenarioResults>> allScenarios = new HashMap<>();
-	try (ResultSet result = buildName == null ? this.fSQL.queryBuildAllScenarios(scenarioPattern) : this.fSQL.queryBuildScenarios(scenarioPattern, buildName)) {
-		int previousId = -1;
-		List<ScenarioResults> scenarios = null;
-		List<String> scenariosNames = new ArrayList<>();
-		while (result.next()) {
-			int id = result.getInt(1);
-			String name = result.getString(2);
-			scenariosNames.add(name);
-			String shortName = result.getString(3);
-			int component_id = storeComponent(getComponentNameFromScenario(name));
-			if (component_id != previousId) {
-				allScenarios.put(COMPONENTS[component_id], scenarios = new ArrayList<>());
-				previousId = component_id;
-			}
-			if (scenarios == null) {
-			    throw new RuntimeException("scenerios was unexpectedly null. Check input data?");
-			}
-			scenarios.add(new ScenarioResults(id, name, shortName));
-		}
-		SCENARII = new String[scenariosNames.size()];
-		scenariosNames.toArray(SCENARII);
-	} catch (SQLException e) {
-		PerformanceTestPlugin.log(e);
-	} finally {
-		if (DEBUG) DEBUG_WRITER.println("done in " + (System.currentTimeMillis() - start) + "ms]"); //$NON-NLS-1$ //$NON-NLS-2$
-	}
-	return allScenarios;
-}
-
-private void internalQueryScenarioValues(ScenarioResults scenarioResults, String configPattern, String buildName) {
-	if (this.fSQL == null) return;
-	if (DEBUG) {
-		DEBUG_WRITER.print("	- DB query all data points for config pattern: "+configPattern+" for scenario: " + scenarioResults.getShortName()); //$NON-NLS-1$ //$NON-NLS-2$
-		if (buildName != null) DEBUG_WRITER.print(" for build: "+buildName); //$NON-NLS-1$
-	}
-	if (LOG) LOG_WRITER.starts("     -> configPattern: " + configPattern + "    buildName (if any): " + buildName);
-	internalQueryAllVariations(configPattern); // need to read all variations to have all build names
-	try (ResultSet result = buildName == null
-      ? this.fSQL.queryScenarioDataPoints(configPattern, scenarioResults.getId())
-      : this.fSQL.queryScenarioBuildDataPoints(configPattern, scenarioResults.getId(), buildName)) {
-		int count = 0;
-
-		while (result.next()) {
-			int dp_id = result.getInt(1);
-			int step = result.getInt(2);
-			String variation = result.getString(3); //  something like "|build=I20070615-1200||config=eclipseperfwin2_R3.3||jvm=sun|"
-			StringTokenizer tokenizer = new StringTokenizer(variation, "=|"); //$NON-NLS-1$
-			tokenizer.nextToken(); 													// 'build'
-			int build_id = getBuildId(tokenizer.nextToken());		// 'I20070615-1200'
-			tokenizer.nextToken();													// 'config'
-			int config_id = getConfigId(tokenizer.nextToken()); 		// 'eclipseperflnx3'
-			ResultSet rs2 = this.fSQL.queryDimScalars(dp_id);
-			while (rs2.next()) {
-				int dim_id = rs2.getInt(1);
-				storeDimension(dim_id);
-				BigDecimal decimalValue = rs2.getBigDecimal(2);
-				long value = decimalValue.longValue();
-				if (build_id >= 0) { // build id may be negative (i.e. not stored in the array) if new run starts while we're getting results
-					scenarioResults.setValue(build_id, dim_id, config_id, step, value);
-				}
-				count= count + 1;
-			}
-		}
-		if (LOG) LOG_WRITER.ends("		-> " + count + " values read");  //$NON-NLS-1$ //$NON-NLS-2$
-	} catch (SQLException e) {
-		PerformanceTestPlugin.log(e);
-	}
-}
-
-private void internalQueryScenarioSummaries(ScenarioResults scenarioResults, String config, String[] builds) {
-	if (this.fSQL == null) return;
-	long start = System.currentTimeMillis();
-	if (DEBUG) {
-		DEBUG_WRITER.print("	- DB query all summaries for scenario '"+scenarioResults.getShortName()+"' of '"+config+"' config"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-	}
-	internalQueryAllComments();
-	int scenarioID = scenarioResults.getId();
-	try (ResultSet result = this.fSQL.queryScenarioSummaries(scenarioID, config, builds)){
-		// First try to get summaries of elapsed process dimension
-
-		while (result.next()) {
-			String variation = result.getString(1); //  something like "|build=I20070615-1200||config=eclipseperfwin2_R3.3||jvm=sun|"
-			int summaryKind = result.getShort(2);
-			int comment_id = result.getInt(3);
-			int dim_id = result.getInt(4);
-			if (dim_id != 0) storeDimension(dim_id);
-			StringTokenizer tokenizer = new StringTokenizer(variation, "=|"); //$NON-NLS-1$
-			tokenizer.nextToken(); 													// 'build'
-			String buildName = tokenizer.nextToken();					// 'I20070615-1200'
-			tokenizer.nextToken();													// 'config'
-			int config_id = getConfigId(tokenizer.nextToken()); 		// 'eclipseperflnx3'
-			int build_id = getBuildId(buildName);
-			if (build_id >= 0) {
-				scenarioResults.setInfos(config_id, build_id, dim_id==0?-1:summaryKind, COMMENTS[comment_id]);
-			}
-		}
-	} catch (SQLException e) {
-		PerformanceTestPlugin.log(e);
-	} finally {
-		if (DEBUG) DEBUG_WRITER.println("done in " + (System.currentTimeMillis() - start) + "ms]"); //$NON-NLS-1$ //$NON-NLS-2$
-	}
-}
-
-/*
- * Store a build name in the dynamic list.
- * The list is sorted alphabetically.
- */
-private int storeBuildName(String build) {
-	boolean isVersion = build.startsWith(DB_BASELINE_PREFIX);
-	if (BUILDS == null) {
-		BUILDS = new String[1];
-		BUILDS[BUILDS_LENGTH++] = build;
-		if (isVersion) {
-			LAST_BASELINE_BUILD = build;
-		} else {
-			LAST_CURRENT_BUILD = build;
-		}
-		return 0;
-	}
-	int idx = Arrays.binarySearch(BUILDS, build, Util.BUILD_DATE_COMPARATOR);
-	if (idx >= 0) return idx;
-	int index = -idx-1;
-	int length = BUILDS.length;
-	if (BUILDS_LENGTH == length) {
-		String[] array = new String[length+1];
-		if (index > 0) System.arraycopy(BUILDS, 0, array, 0, index);
-		array[index] = build;
-		if (index < length) {
-			System.arraycopy(BUILDS, index, array, index+1, length-index);
-		}
-		BUILDS = array;
-	}
-	BUILDS_LENGTH++;
-	if (isVersion) {
-		if (LAST_BASELINE_BUILD == null || LAST_CURRENT_BUILD == null) {
-			LAST_BASELINE_BUILD = build;
-		} else {
-			String buildDate = LAST_CURRENT_BUILD.substring(1, 9)+LAST_CURRENT_BUILD.substring(10, LAST_CURRENT_BUILD.length());
-			String baselineDate = LAST_BASELINE_BUILD.substring(LAST_BASELINE_BUILD.indexOf('-')+1);
-			if (build.compareTo(LAST_BASELINE_BUILD) > 0 && baselineDate.compareTo(buildDate) < 0) {
-				LAST_BASELINE_BUILD = build;
-			}
-		}
-	} else {
-		if (LAST_CURRENT_BUILD == null || build.substring(1).compareTo(LAST_CURRENT_BUILD.substring(1)) >= 0) {
-			LAST_CURRENT_BUILD = build;
-		}
-	}
-	return index;
-}
-
-/*
- * Store a configuration in the dynamic list.
- * The list is sorted alphabetically.
- */
-private int storeConfig(String config) {
-	if (CONFIGS== null) {
-		CONFIGS= new String[1];
-		CONFIGS[0] = config;
-		return 0;
-	}
-	int idx = Arrays.binarySearch(CONFIGS, config);
-	if (idx >= 0) return idx;
-	int length = CONFIGS.length;
-	System.arraycopy(CONFIGS, 0, CONFIGS = new String[length+1], 0, length);
-	CONFIGS[length] = config;
-	Arrays.sort(CONFIGS);
-	return length;
-}
-
-/*
- * Store a component in the dynamic list. The list is sorted alphabetically.
- * Note that the array is rebuilt each time a new component is discovered
- * as this does not happen so often (e.g. eclipse only has 10 components).
- */
-private int storeComponent(String component) {
-	if (COMPONENTS== null) {
-		COMPONENTS= new String[1];
-		COMPONENTS[0] = component;
-		return 0;
-	}
-	int idx = Arrays.binarySearch(COMPONENTS, component);
-	if (idx >= 0) return idx;
-	int length = COMPONENTS.length;
-	System.arraycopy(COMPONENTS, 0, COMPONENTS = new String[length+1], 0, length);
-	COMPONENTS[length] = component;
-	Arrays.sort(COMPONENTS);
-	return length;
-}
-
-/*
- * Store a dimension in the dynamic list. The list is sorted in ascending order.
- * Note that the array is rebuilt each time a new dimension is discovered
- * as this does not happen so often (e.g. eclipse only stores two dimensions).
- */
-public static int storeDimension(int id) {
-	if (DIMENSIONS == null) {
-		DIMENSIONS = new int[1];
-		DIMENSIONS[0] = id;
-		return 0;
-	}
-	int idx = Arrays.binarySearch(DIMENSIONS, id);
-	if (idx >= 0) return idx;
-	int length = DIMENSIONS.length;
-	System.arraycopy(DIMENSIONS, 0, DIMENSIONS = new int[length+1], 0, length);
-	DIMENSIONS[length] = id;
-	Arrays.sort(DIMENSIONS);
-	return length;
-}
-
-/*
- * Store a dimension in the dynamic list. The list is sorted alphabetically.
- * Note that the array is rebuilt each time a new dimension is discovered
- * as this does not happen so often (e.g. eclipse only stores two dimensions).
- */
-private int storeVm(String vm) {
-	if (VMS == null) {
-		VMS = new String[1];
-		VMS[0] = vm;
-		return 0;
-	}
-	int idx = Arrays.binarySearch(VMS, vm);
-	if (idx >= 0) return idx;
-	int length = VMS.length;
-	System.arraycopy(VMS, 0, VMS = new String[length+1], 0, length);
-	VMS[length] = vm;
-	Arrays.sort(VMS);
-	return length;
-}
-
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/PerformanceResults.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/PerformanceResults.java
deleted file mode 100644
index 282f029..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/PerformanceResults.java
+++ /dev/null
@@ -1,993 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.internal.performance.results.db;
-
-import java.io.BufferedInputStream;
-import java.io.BufferedOutputStream;
-import java.io.DataInputStream;
-import java.io.DataOutputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.PrintStream;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.SortedSet;
-import java.util.TreeSet;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.SubMonitor;
-import org.eclipse.test.internal.performance.results.utils.Util;
-
-
-/**
- * Root class to handle performance results.
- *
- * Usually performance results are built for a current build vs. a baseline build.
- *
- * This class allow to read all data from releng performance database for given
- * configurations and scenario pattern.
- *
- * Then it provides easy and speedy access to all stored results.
- */
-public class PerformanceResults extends AbstractResults {
-
-	String[] allBuildNames = null;
-	Map<String, List<ScenarioResults>> allScenarios;
-	String lastBuildName; // Name of the last used build
-	String baselineName; // Name of the baseline build used for comparison
-	private String scenarioPattern = "%"; //$NON-NLS-1$
-	private String[] components;
-	String[] configNames, sortedConfigNames;
-	String[] configDescriptions, sortedConfigDescriptions;
-	private String configPattern;
-
-	boolean dbRequired;
-	boolean needToUpdateLocalFile;
-
-	/*
-	 * Local class helping to guess remaining time while reading results from DB
-	 */
-	class RemainingTimeGuess {
-		int all, count;
-		long start;
-		double remaining;
-		RemainingTimeGuess(int all, long start) {
-			this.all = all;
-			this.start = start;
-		}
-		String display() {
-			StringBuilder buffer = new StringBuilder(" [elapsed: "); //$NON-NLS-1$
-			long elapsed = getElapsed();
-			buffer.append(Util.timeChrono(elapsed));
-			if (this.count > 0) {
-				buffer.append(" | left: "); //$NON-NLS-1$
-				long remainingTime = getRemainingTime(elapsed);
-				buffer.append(Util.timeChrono(remainingTime));
-				buffer.append(" | end: "); //$NON-NLS-1$
-				buffer.append(Util.timeEnd(remainingTime));
-			}
-			buffer.append(']');
-			return buffer.toString();
-		}
-		private long getRemainingTime(long elapsed) {
-			return (long) ((((double)elapsed) / this.count) * (this.all - this.count));
-	    }
-		private long getElapsed() {
-			return System.currentTimeMillis() - this.start;
-	    }
-	}
-
-
-	// Failure threshold
-	public static final int DEFAULT_FAILURE_THRESHOLD = 10;
-	int failure_threshold = DEFAULT_FAILURE_THRESHOLD;
-
-public PerformanceResults(PrintStream stream) {
-	super(null, null);
-	this.printStream = stream;
-	this.dbRequired = false;
-	setDefaults();
-}
-
-public PerformanceResults(String name, String baseline, String baselinePrefix, PrintStream stream) {
-	super(null, name);
-	this.baselineName = baseline;
-	this.baselinePrefix = baselinePrefix;
-	this.printStream = stream;
-	this.dbRequired = true;
-	setDefaults();
-}
-
-/**
- * Returns the list of all builds currently read.
- *
- * @return The names list of all currently known builds
- */
-public String[] getAllBuildNames() {
-
-	if (this.allBuildNames == null) {
-		setAllBuildNames();
-	}
-	return this.allBuildNames;
-}
-
-/**
- * Returns the name of the baseline used for extracted results
- *
- * @return The build name of the baseline of <code>null</code>
- * 	if no specific baseline is used for the extracted results.
- */
-public String getBaselineName() {
-	return this.baselineName;
-}
-
-/*
- * Get the baseline prefix (computed from #baselineName).
- */
-String getBaselinePrefix() {
-	return this.baselinePrefix;
-}
-
-/*
- * Get the build date (see #getBuildDate(String, String)).
- */
-public String getBuildDate() {
-	String buildName = getName();
-	if (buildName == null) return ""; //$NON-NLS-1$
-	return Util.getBuildDate(getName(), getBaselinePrefix());
-}
-
-/**
- * Return the list of components concerned by performance results.
- *
- * @return The list of the components
- */
-public String[] getComponents() {
-	return this.components;
-}
-
-/**
- * Get the scenarios of a given component.
- *
- * @param componentName The component name. Should not be <code>null</code>
- * @return A list of {@link ScenarioResults scenario results}
- */
-public List<AbstractResults> getComponentScenarios(String componentName) {
-	ComponentResults componentResults = (ComponentResults) getResults(componentName);
-	if (componentResults == null) return null;
-	return Collections.unmodifiableList(componentResults.children);
-}
-
-/**
- * Get the scenarios which have a summary for a given component.
- *
- * @param componentName The component name
- * @param config Configuration name
- * @return A list of {@link ScenarioResults scenario results} which have a summary
- */
-public List<ScenarioResults> getComponentSummaryScenarios(String componentName, String config) {
-	if (componentName == null) {
-		int size = size();
-		List<ScenarioResults> scenarios = new ArrayList<>();
-		for (int i=0; i< size; i++) {
-			ComponentResults componentResults = (ComponentResults) this.children.get(i);
-			scenarios.addAll(componentResults.getSummaryScenarios(true, config));
-		}
-		return scenarios;
-	}
-	ComponentResults componentResults = (ComponentResults) getResults(componentName);
-	return componentResults.getSummaryScenarios(false, config);
-}
-
-/**
- * Return the configuration boxes considered for this performance results
- * sorted or not depending on the given flag.
- *
- * @param sort Indicates whether the list must be sorted or not.
- * 	The order is defined by the configuration names, not by the box names
- * @return The list of configuration boxes sorted by configuration names
- */
-public String[] getConfigBoxes(boolean sort) {
-	return sort ? this.sortedConfigDescriptions : this.configDescriptions;
-}
-
-/**
- * Return the configuration names considered for this performance results
- * sorted or not depending on the given flag.
- *
- * @param sort Indicates whether the list must be sorted or not
- * @return The list of configuration names
- */
-public String[] getConfigNames(boolean sort) {
-	return sort ?this.sortedConfigNames : this.configNames;
-}
-
-/*
- * Compute a SQL pattern from all stored configuration names.
- * For example 'eclipseperflnx1', 'eclipseperflnx2' and 'eclipseperflnx3'
- * will return 'eclipseperflnx_'.
- */
-String getConfigurationsPattern() {
-	if (this.configPattern == null) {
-		int length = this.sortedConfigNames == null ? 0 : this.sortedConfigNames.length;
-		if (length == 0) return null;
-		this.configPattern = this.sortedConfigNames[0];
-		int refLength = this.configPattern.length();
-		for (int i=1; i<length; i++) {
-			String config = this.sortedConfigNames[i];
-			StringBuilder newConfig = null;
-			if (refLength != config.length()) return null; // strings have not the same length => cannot find a pattern
-			for (int j=0; j<refLength; j++) {
-				char c = this.configPattern.charAt(j);
-				if (config.charAt(j) != c) {
-					if (newConfig == null) {
-						newConfig = new StringBuilder(refLength);
-						if (j == 0) return null; // first char is already different => cannot find a pattern
-						newConfig.append(this.configPattern.substring(0, j));
-					}
-					newConfig.append('_');
-				} else if (newConfig != null) {
-					newConfig.append(c);
-				}
-			}
-			if (newConfig != null) {
-				this.configPattern = newConfig.toString();
-			}
-		}
-	}
-	return this.configPattern;
-}
-
-/**
- * Return the name of the last build name except baselines.
- *
- * @return the name of the last build
- */
-public String getLastBuildName() {
-	return getLastBuildName(1/*all except baselines*/);
-}
-/**
- * Return the name of the last build name
- *
- * @param kind Decide what kind of build is taken into account
- * 	0: all kind of build
- * 	1: all except baseline builds
- * 	2: all except baseline builds
- * 	3: only integration builds
- * @return the name of the last build of the selected kind
- */
-public String getLastBuildName(int kind) {
-	if (this.name == null) {
-		getAllBuildNames(); // init build names if necessary
-		int idx = this.allBuildNames.length-1;
-		this.name = this.allBuildNames[idx];
-		if (kind > 0) {
-			loop: while (idx-- >= 0) {
-				switch (this.name.charAt(0)) {
-					case 'M':
-						if (kind < 3) break loop;
-						break;
-					case 'I':
-						if (kind < 4) break loop;
-						break;
-				}
-				this.name = this.allBuildNames[idx];
-			}
-		}
-	}
-	return this.name;
-}
-
-@Override
-public String getName() {
-	if (this.name == null) {
-		setAllBuildNames();
-	}
-	return this.name;
-}
-
-@Override
-PerformanceResults getPerformance() {
-	return this;
-}
-
-/**
- * Get the results of a given scenario.
- *
- * @param scenarioName The scenario name
- * @return The {@link ScenarioResults scenario results}
- */
-public ScenarioResults getScenarioResults(String scenarioName) {
-	ComponentResults componentResults = (ComponentResults) getResults(DB_Results.getComponentNameFromScenario(scenarioName));
-	return componentResults == null ? null : (ScenarioResults) componentResults.getResults(scenarioName);
-}
-
-/*
- * Init configurations from performance results database.
- */
-private void initConfigs() {
-	// create config names
-	this.configNames = DB_Results.getConfigs();
-	this.configDescriptions = DB_Results.getConfigDescriptions();
-	int length = this.configNames.length;
-	this.sortedConfigNames = new String[length];
-	for (int i = 0; i < length; i++) {
-	    this.sortedConfigNames[i] = this.configNames[i];
-	}
-
-	// Sort the config names
-	Arrays.sort(this.sortedConfigNames);
-	this.sortedConfigDescriptions = new String[length];
-	for (int i=0; i<length; i++) {
-		for (int j=0; j<length; j++) {
-			if (this.sortedConfigNames[i] == this.configNames[j]) { // == is intentional!
-				this.sortedConfigDescriptions[i] = this.configDescriptions[j];
-				break;
-			}
-		}
-	}
-}
-
-/*
- * Read or update data for a build from a directory supposed to have local files.
- */
-private String[] read(boolean local, String buildName, String[][] configs, boolean force, File dataDir, String taskName, SubMonitor subMonitor) {
-	if (local && dataDir == null) {
-		throw new IllegalArgumentException("Must specify a directory to read local files!"); //$NON-NLS-1$
-	}
-	subMonitor.setWorkRemaining(100);
-
-	// Update info
-	long start = System.currentTimeMillis();
-	int allScenariosSize;
-	if (DB_Results.DB_CONNECTION) {
-		try {
-			// Read all scenarios
-			allScenariosSize = readScenarios(buildName, subMonitor.newChild(10)) ;
-			if (allScenariosSize < 0) {
-				return null;
-			}
-
-			// Read all builds
-			DB_Results.queryAllVariations(getConfigurationsPattern());
-
-			// Refresh configs
-			if (configs == null) {
-				initConfigs();
-			} else {
-				setConfigInfo(configs);
-			}
-		} catch (OperationCanceledException e) {
-			return null;
-		}
-	} else {
-		if (this.allScenarios == null) return null;
-		allScenariosSize = this.allScenarios.size();
-		if (configs != null) {
-			setConfigInfo(configs);
-		}
-	}
-
-	// Create corresponding children
-	int componentsLength = this.components.length;
-	subMonitor.setWorkRemaining(componentsLength);
-	RemainingTimeGuess timeGuess = null;
-	for (int i=0; i<componentsLength; i++) {
-		String componentName = this.components[i];
-		List<ScenarioResults> scenarios = this.allScenarios == null ? null : this.allScenarios.get(componentName);
-
-		// Manage monitor
-		int percentage = (int) ((((double)(i+1)) / (componentsLength+1)) * 100);
-		StringBuilder tnBuffer= taskName==null ? new StringBuilder() : new StringBuilder(taskName);
-		tnBuffer.append(" ("); //$NON-NLS-1$
-		if (buildName != null) {
-			tnBuffer.append(buildName).append(": "); //$NON-NLS-1$
-		}
-		tnBuffer.append(percentage).append("%)"); //$NON-NLS-1$
-		subMonitor.setTaskName(tnBuffer.toString());
-		StringBuilder subTaskBuffer = new StringBuilder("Component "); //$NON-NLS-1$
-		subTaskBuffer.append(componentName);
-		subTaskBuffer.append("..."); //$NON-NLS-1$
-		subMonitor.subTask(subTaskBuffer.toString());
-
-		// Get component results
-		if (scenarios == null && !local) continue;
-		ComponentResults componentResults;
-		if (local || (buildName == null && force)) {
-			componentResults = new ComponentResults(this, componentName);
-			addChild(componentResults, true);
-		} else {
-			componentResults = (ComponentResults) getResults(componentName);
-			if (componentResults == null) {
-				componentResults = new ComponentResults(this, componentName);
-				addChild(componentResults, true);
-			}
-		}
-
-		// Read the component results
-		if (local) {
-			try {
-				componentResults.readLocalFile(dataDir, scenarios);
-			}
-			catch (FileNotFoundException ex) {
-			    subMonitor.worked(1);
-				return null;
-			}
-	         catch (StringIndexOutOfBoundsException ex) {
-	             System.err.println("ERROR: Found StringIndexOutOfBoundsException fournd. Possible corruption in DB?");
-	             subMonitor.worked(1);
-	            return null;
-	        }
-			subMonitor.worked(1);
-		} else {
-			if (timeGuess == null) {
-				timeGuess = new RemainingTimeGuess(1+componentsLength+allScenariosSize, start);
-			}
-			componentResults.updateBuild(buildName, scenarios, force, dataDir, subMonitor.newChild(1), timeGuess);
-		}
-		if (subMonitor.isCanceled()) return null;
-	}
-
-	// Update names
-	setAllBuildNames();
-	writeData(dataDir);
-
-	// Print time
-	printGlobalTime(start);
-
-	return this.allBuildNames;
-}
-
-/**
- * Read all data from performance database for the given configurations
- * and scenario pattern.
- *
- * This method is typically called when generated performance results
- * from a non-UI application.
- *
- * @param buildName The name of the build
- * @param configs All configurations to extract results. If <code>null</code>,
- * 	then all known configurations ({@link DB_Results#getConfigs()})  are read.
- * @param pattern The pattern of the concerned scenarios
- * @param dataDir The directory where data will be read/stored locally.
- * 	If <code>null</code>, then database will be read instead and no storage
- * 	will be performed
- * @param threshold The failure percentage threshold over which a build result
- * 	value compared to the baseline is considered as failing.
- * @param monitor The progress monitor
- *
- * @return All known build names
- */
-public String[] readAll(String buildName, String[][] configs, String pattern, File dataDir, int threshold, IProgressMonitor monitor) {
-
-	// Init
-	this.scenarioPattern = pattern == null ? "%" : pattern; //$NON-NLS-1$
-	this.failure_threshold = threshold;
-	SubMonitor subMonitor = SubMonitor.convert(monitor, 1000);
-
-	// Set default names
-	setDefaults();
-
-	// Read local data files first
-	reset(dataDir);
-	String[] names = read(true, null, configs, true, dataDir, null, subMonitor.newChild(100));
-	if (names==null) {
-		// if one local files is missing then force a full DB read!
-		// TODO moderate this to force the DB read only for the missing file...
-		return read(false, null, configs, true, dataDir, null, subMonitor.newChild(900));
-	}
-
-	// Search build name in read data
-	boolean buildMissing = true;
-	if (buildName != null) {
-		this.name = buildName;
-		buildMissing = Arrays.binarySearch(names, buildName, Util.BUILD_DATE_COMPARATOR) < 0;
-	}
-
-	// Look for missing builds
-	if (buildMissing) {
-		String[] builds = DB_Results.getBuilds();
-		Arrays.sort(builds, Util.BUILD_DATE_COMPARATOR);
-		for (int i=builds.length-1; i>=0; i--) {
-			if (Arrays.binarySearch(names, builds[i], Util.BUILD_DATE_COMPARATOR) >= 0) {
-				break;
-			}
-			read(false, builds[i], configs, true, dataDir, null, subMonitor.newChild(900));
-		}
-	}
-	return this.allBuildNames;
-}
-
-/**
- * Read all data from performance database for the given configurations
- * and scenario pattern.
- *
- * Note that calling this method flush all previous read data.
- *
- * @param dataDir The directory where local files are located
- * @param monitor  The progress monitor
- */
-public void readLocal(File dataDir, IProgressMonitor monitor) {
-
-	// Print title
-	String taskName = "Read local performance results"; //$NON-NLS-1$
-	println(taskName);
-
-	// Create monitor
-	SubMonitor subMonitor = SubMonitor.convert(monitor, 1000);
-	subMonitor.setTaskName(taskName);
-
-	// Read
-	reset(dataDir);
-	read(true, null, null, true, dataDir, taskName, subMonitor);
-}
-
-void readLocalFile(File dir) {
-	if (!dir.exists()) return;
-	File dataFile = new File(dir, "performances.dat");	//$NON-NLS-1$
-	if (!dataFile.exists()) return;
-
-	// Read local file info
-	try (DataInputStream stream = new DataInputStream(new BufferedInputStream(new FileInputStream(dataFile)));){
-
-		// Read build info
-		String str = stream.readUTF();
-		this.needToUpdateLocalFile = this.name == null || Util.getBuildDate(this.name).compareTo(Util.getBuildDate(str)) > 0;
-		if (this.name != null && Util.getBuildDate(this.name).compareTo(Util.getBuildDate(str)) >= 0) {
-			return;
-		}
-		println(" - read performance results local files info: "); //$NON-NLS-1$
-		println("		+ name : "+str);
-		this.name = str == ""  ? null : str;
-		str = stream.readUTF();
-		println("		+ baseline : "+str);
-		if (this.baselineName == null) {
-			this.baselineName = str == "" ? null : str;
-		}
-		str = stream.readUTF();
-		println("		+ baseline prefix: "+str);
-		this.baselinePrefix = str == "" ? null : str;
-
-		// Write configs info
-		int length = stream.readInt();
-		println("		+ "+length+" configs");
-		this.configNames = new String[length];
-		this.sortedConfigNames = new String[length];
-		this.configDescriptions = new String[length];
-		this.sortedConfigDescriptions = new String[length];
-		for (int i = 0; i < length; i++) {
-			this.configNames[i] = stream.readUTF();
-			this.sortedConfigNames[i] = this.configNames[i];
-			this.configDescriptions[i] = stream.readUTF();
-			this.sortedConfigDescriptions[i] = this.configDescriptions[i];
-		}
-		DB_Results.setConfigs(this.configNames);
-		DB_Results.setConfigDescriptions(this.configDescriptions);
-
-		// Write builds info
-		length = stream.readInt();
-		println("		+ "+length+" builds");
-		this.allBuildNames = new String[length];
-		for (int i = 0; i < length; i++) {
-			this.allBuildNames[i] = stream.readUTF();
-		}
-
-		// Write scenarios info
-		length = stream.readInt();
-		println("		+ "+length+" components");
-		this.components = new String[length];
-		this.allScenarios = new HashMap<>();
-		for (int i = 0; i < length; i++) {
-			this.components[i] = stream.readUTF();
-			int size = stream.readInt();
-			List<ScenarioResults> scenarios = new ArrayList<>(size);
-			for (int j=0; j<size; j++) {
-				scenarios.add(new ScenarioResults(stream.readInt(), stream.readUTF(), stream.readUTF()));
-			}
-			this.allScenarios.put(this.components[i], scenarios);
-		}
-		println("	=> read from file "+dataFile); //$NON-NLS-1$
-	} catch (IOException ioe) {
-		println("	!!! "+dataFile+" should be deleted as it contained invalid data !!!"); //$NON-NLS-1$ //$NON-NLS-2$
-	}
-}
-
-private int readScenarios(String buildName, SubMonitor subMonitor) throws OperationCanceledException {
-	subMonitor.setWorkRemaining(10);
-	long start = System.currentTimeMillis();
-	String titleSuffix;
-	if (buildName == null) {
-		titleSuffix = "all database scenarios..."; //$NON-NLS-1$
-	} else {
-		titleSuffix = "all database scenarios for "+buildName+" build..."; //$NON-NLS-1$ //$NON-NLS-2$
-	}
-	print("	+ get "+titleSuffix); //$NON-NLS-1$
-	subMonitor.subTask("Get "+titleSuffix); //$NON-NLS-1$
-	this.allScenarios = DB_Results.queryAllScenarios(this.scenarioPattern, buildName);
-	if (this.allScenarios == null) return -1;
-	int allScenariosSize = 0;
-	List<String> componentsSet = new ArrayList<>(this.allScenarios.keySet());
-	Collections.sort(componentsSet);
-	int componentsSize = componentsSet.size();
-	componentsSet.toArray(this.components = new String[componentsSize]);
-	for (int i=0; i<componentsSize; i++) {
-		String componentName = this.components[i];
-		List<ScenarioResults> scenarios = this.allScenarios.get(componentName);
-		allScenariosSize += scenarios.size();
-	}
-	println(" -> "+allScenariosSize+" found in "+(System.currentTimeMillis()-start)+"ms"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-	subMonitor.worked(10);
-	if (subMonitor.isCanceled()) throw new OperationCanceledException();
-	return allScenariosSize;
-}
-
-void reset(File dataDir) {
-	this.allBuildNames = null;
-	this.children = new ArrayList<>();
-//	this.name = null;
-	this.components = null;
-	this.allScenarios = null;
-	readLocalFile(dataDir);
-}
-
-private void setAllBuildNames() {
-	SortedSet<String> builds = new TreeSet<>(Util.BUILD_DATE_COMPARATOR);
-	int size = size();
-	if (size == 0) return;
-	for (int i=0; i<size; i++) {
-		ComponentResults componentResults = (ComponentResults) this.children.get(i);
-		Set<String> names = componentResults.getAllBuildNames();
-		builds.addAll(names);
-	}
-	int buildsSize = builds.size();
-	this.allBuildNames = new String[buildsSize];
-	if (buildsSize > 0) {
-		int n = 0;
-		Iterator<String> buildNames = builds.iterator();
-		while (buildNames.hasNext()) {
-			String buildName = buildNames.next();
-			if (this.lastBuildName == null || Util.getBuildDate(buildName).compareTo(Util.getBuildDate(this.lastBuildName)) <= 0) {
-				this.allBuildNames[n++] = buildName;
-			}
-		}
-		if (n < buildsSize) {
-			System.arraycopy(this.allBuildNames, 0, this.allBuildNames = new String[n], 0, n);
-		}
-        // there are times when the build we want to analyze is not the
-        // "last build",
-        // such as there may have be subsequent builds, already.
-        // so, we only compute this "default behavior" of finding last build,
-		// and equating it to "name", only if lastBuildName has not been set yet.
-		// For the case where "-current" is passed as an argument, in GenerateResults, we do
-		// "setLastBuildName" to "current". See bug 455656.
-		// https://bugs.eclipse.org/bugs/show_bug.cgi?id=455656
-		String lastBuild = null;
-		// Note: we can not call "getLastBuildName()" because it has the side effects we are
-		// trying to avoid.
-        if (this.lastBuildName == null) {
-            int idx = n - 1;
-            lastBuild = this.allBuildNames[idx--];
-            while (idx > 0 && lastBuild.startsWith(DB_Results.getDbBaselinePrefix())) {
-                lastBuild = this.allBuildNames[idx--];
-            }
-        } else {
-            lastBuild = this.lastBuildName;
-            this.name = lastBuild;
-        }
-        this.needToUpdateLocalFile = this.name == null
-                || Util.getBuildDate(lastBuild).compareTo(Util.getBuildDate(this.name)) > 0;
-        this.name = lastBuild;
-        if (this.baselineName != null) {
-            String lastBuildDate = Util.getBuildDate(lastBuild);
-            if (Util.getBuildDate(this.baselineName).compareTo(lastBuildDate) > 0) {
-                this.baselineName = DB_Results.getLastBaselineBuild(lastBuildDate);
-            }
-        }
-	}
-}
-
-private void setConfigInfo(String[][] configs) {
-	if (configs == null) return;
-
-	// Store config information
-	int length = configs.length;
-	this.configNames = new String[length];
-	this.sortedConfigNames = new String[length];
-	this.configDescriptions = new String[length];
-	for (int i=0; i<length; i++) {
-		this.configNames[i] = this.sortedConfigNames[i] = configs[i][0];
-		this.configDescriptions[i] = configs[i][1];
-	}
-
-	// Sort the config names
-	Arrays.sort(this.sortedConfigNames);
-	length = this.sortedConfigNames.length;
-	this.sortedConfigDescriptions = new String[length];
-	for (int i=0; i<length; i++) {
-		for (int j=0; j<length; j++) {
-			if (this.sortedConfigNames[i] == this.configNames[j]) { // == is intentional!
-				this.sortedConfigDescriptions[i] = this.configDescriptions[j];
-				break;
-			}
-		}
-	}
-}
-
-
-/**
- * Set the name of the baseline used for extracted results
- *
- * @param buildName The name of the baseline build
- */
-public void setBaselineName(String buildName) {
-	this.baselineName = buildName;
-	if (this.baselinePrefix == null) { // || !this.baselineName.startsWith(this.baselinePrefix)) {
-		// Usually hat baseline name format is *always* x.y_yyyyMMddhhmm_yyyyMMddhhmm
-	    // Currently, 10/2015, R-4.5-yyyyMMddhhmm
-		int index = this.baselineName.lastIndexOf('-');
-		if (index > 0) {
-			this.baselinePrefix = this.baselineName.substring(0, index);
-		} else {
-		    // use hard coded value (currently R-4.5)
-		    this.baselinePrefix = DB_Results.getDbBaselinePrefix();
-		}
-	}
-}
-
-private void setDefaults() {
-
-	// Set builds if none
-	if (size() == 0 && DB_Results.DB_CONNECTION) {
-		this.allBuildNames = DB_Results.getBuilds();
-		this.components = DB_Results.getComponents();
-		initConfigs();
-	}
-
-	// Set name if null
-	if (this.name == null) {
-		setAllBuildNames();
-		if (this.name == null) { // does not know any build
-			this.name = DB_Results.getLastCurrentBuild();
-			if (this.dbRequired) {
-				if (this.name == null) {
-//					throw new RuntimeException("Cannot find any current build!"); //$NON-NLS-1$
-					this.name = "No current build!";
-				}
-				this.allBuildNames = DB_Results.getBuilds();
-				this.components = DB_Results.getComponents();
-				initConfigs();
-			}
-			if (this.printStream != null) {
-				this.printStream.println("	+ no build specified => use last one: "+this.name); //$NON-NLS-1$
-			}
-		}
-	}
-
-	// Init baseline name if not set
-	if (this.baselineName == null && getName() != null) {
-		String buildDate = Util.getBuildDate(getName());
-		this.baselineName = DB_Results.getLastBaselineBuild(buildDate);
-		if (this.baselineName == null && this.dbRequired) {
-			throw new RuntimeException("Cannot find any baseline to refer!"); //$NON-NLS-1$
-		}
-		if (this.printStream != null) {
-			this.printStream.println("	+ no baseline specified => use last one: "+this.baselineName); //$NON-NLS-1$
-		}
-	}
-
-	// Init baseline prefix if not set
-	if (this.baselineName != null) {
-		if (this.baselinePrefix == null) { // || !this.baselineName.startsWith(this.baselinePrefix)) {
-			// Usually hat baseline name format is *always* x.y_yyyyMMddhhmm_yyyyMMddhhmm
-			int index = this.baselineName.lastIndexOf('-');
-			if (index > 0) {
-				this.baselinePrefix = this.baselineName.substring(0, index);
-			} else {
-//				this.baselinePrefix = DB_Results.getDbBaselinePrefix();
-				this.baselinePrefix = this.baselineName;
-			}
-		}
-	}
-
-	// Set scenario pattern default
-	if (this.scenarioPattern == null) {
-		this.scenarioPattern = "%"; //$NON-NLS-1$
-	}
-
-	// Flush print stream
-	if (this.printStream != null) {
-		this.printStream.println();
-		this.printStream.flush();
-	}
-}
-
-public void setLastBuildName(String lastBuildName) {
-	this.lastBuildName = lastBuildName;
-//	if (lastBuildName == null) {
-//		int idx = this.allBuildNames.length-1;
-//		String lastBuild = this.allBuildNames[idx--];
-//		while (this.name.startsWith(DB_Results.getDbBaselinePrefix())) {
-//			lastBuild = this.allBuildNames[idx--];
-//		}
-//		this.name = lastBuild;
-//	} else {
-//		this.name = lastBuildName;
-//	}
-}
-
-/**
- * Update a given build information with database contents.
- *
- * @param builds The builds to read new data
- * @param force Force the update from the database, even if the build is
- * 	already known.
- * @param dataDir The directory where data should be stored locally if necessary.
- * 	If <code>null</code>, then information changes won't be persisted.
- * @param monitor The progress monitor
- * @return All known builds
- */
-public String[] updateBuilds(String[] builds, boolean force, File dataDir, IProgressMonitor monitor) {
-
-	// Print title
-	StringBuilder buffer = new StringBuilder("Update data for "); //$NON-NLS-1$
-	int length = builds == null ? 0 : builds.length;
-	switch (length) {
-		case 0:
-			buffer.append("all builds"); //$NON-NLS-1$
-			reset(dataDir);
-			break;
-		case 1:
-			buffer.append("one build"); //$NON-NLS-1$
-			break;
-		default:
-			buffer.append("several builds"); //$NON-NLS-1$
-			break;
-	}
-	String taskName = buffer.toString();
-	println(buffer);
-
-	// Create sub-monitor
-	SubMonitor subMonitor = SubMonitor.convert(monitor, 1000*length);
-	subMonitor.setTaskName(taskName);
-
-	// Read
-	for (int i=0; i<length;  i++) {
-	    if (builds == null) {
-	        throw new RuntimeException("'builds' was unexpected null. Check input data?");
-	    }
-		read(false, builds[i], null, force, dataDir, taskName, subMonitor.newChild(1000));
-	}
-
-	// Return new builds list
-	return this.allBuildNames;
-}
-
-/**
- * Update a given build information with database contents.
- *
- * @param buildName The build name to read new data
- * @param force Force the update from the database, even if the build is
- * 	already known.
- * @param dataDir The directory where data should be stored locally if necessary.
- * 	If <code>null</code>, then information changes won't be persisted.
- * @param monitor The progress monitor
- * @return All known builds
- */
-public String[] updateBuild(String buildName, boolean force, File dataDir, IProgressMonitor monitor) {
-
-	// Print title
-	StringBuilder buffer = new StringBuilder("Update data for "); //$NON-NLS-1$
-	if (buildName == null) {
-		buffer.append("all builds"); //$NON-NLS-1$
-		reset(dataDir);
-	} else {
-		buffer.append("one build"); //$NON-NLS-1$
-	}
-	String taskName = buffer.toString();
-	println(buffer);
-
-	// Create sub-monitor
-	SubMonitor subMonitor = SubMonitor.convert(monitor, 1000);
-	subMonitor.setTaskName(taskName);
-
-	// Read
-	read(false, buildName, null, force, dataDir, taskName, subMonitor);
-
-	// Refresh name
-	if (buildName != null && !buildName.startsWith(DB_Results.getDbBaselinePrefix())) {
-		this.name = buildName;
-	}
-
-	// Return new list all build names
-	return this.allBuildNames;
-}
-
-/*
- * Write general information.
- */
-void writeData(File dir) {
-    if (DO_NOT_WRITE_DATA) {
-        return;
-    }
-	if (!DB_Results.DB_CONNECTION) {
-		// Only write new local file if there's a database connection
-		// otherwise contents may not be complete...
-		return;
-	}
-	if (dir ==null || (!dir.exists() && !dir.mkdirs())) {
-		System.err.println("can't create directory " + dir); //$NON-NLS-1$
-		return;
-	}
-	File dataFile = new File(dir, "performances.dat"); //$NON-NLS-1$
-	if (dataFile.exists()) {
-		if (!this.needToUpdateLocalFile) {
-			return;
-		}
-		dataFile.delete();
-	}
-	try (DataOutputStream stream = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(dataFile)))){
-
-		// Write build info
-		stream.writeUTF(this.name == null ? DB_Results.getLastCurrentBuild() : this.name);
-		stream.writeUTF(this.baselineName == null ? DB_Results.getLastBaselineBuild(null) : this.baselineName);
-		stream.writeUTF(this.baselinePrefix == null ? "" : this.baselinePrefix);
-
-		// Write configs info
-		int length = this.sortedConfigNames.length;
-		stream.writeInt(length);
-		for (int i = 0; i < length; i++) {
-			stream.writeUTF(this.sortedConfigNames[i]);
-			stream.writeUTF(this.sortedConfigDescriptions[i]);
-		}
-
-		// Write builds info
-		String[] builds = this.allBuildNames == null ? DB_Results.getBuilds() : this.allBuildNames;
-		length = builds.length;
-		stream.writeInt(length);
-		for (int i = 0; i < length; i++) {
-			stream.writeUTF(builds[i]);
-		}
-
-		// Write scenarios info
-		length = this.components.length;
-		stream.writeInt(length);
-		for (int i = 0; i < length; i++) {
-			stream.writeUTF(this.components[i]);
-			List<ScenarioResults> scenarios = this.allScenarios.get(this.components[i]);
-			int size = scenarios.size();
-			stream.writeInt(size);
-			for (int j=0; j<size; j++) {
-				final ScenarioResults scenarioResults = scenarios.get(j);
-				stream.writeInt(scenarioResults.getId());
-				stream.writeUTF(scenarioResults.getName());
-				stream.writeUTF(scenarioResults.getLabel());
-			}
-		}
-
-		println("	=> performance results general data  written in file " + dataFile); //$NON-NLS-1$
-	} catch (FileNotFoundException e) {
-		System.err.println("can't create output file" + dataFile); //$NON-NLS-1$
-	} catch (IOException e) {
-		e.printStackTrace();
-	}
-}
-
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/SQL_Results.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/SQL_Results.java
deleted file mode 100644
index bc8dad7..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/SQL_Results.java
+++ /dev/null
@@ -1,300 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.internal.performance.results.db;
-
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Timestamp;
-
-import org.eclipse.test.internal.performance.InternalDimensions;
-import org.eclipse.test.internal.performance.data.Dim;
-import org.eclipse.test.internal.performance.db.SQL;
-
-/**
- * Specific implementation for massive database requests.
- */
-public class SQL_Results extends SQL {
-
-private PreparedStatement queryBuildAllScenarios,
-	queryBuildScenarios,
-	queryScenarioSummaries,
-	queryAllComments,
-	queryScenariosBuilds,
-	queryScenarioDataPoints,
-	queryScenarioTimestampDataPoints,
-	queryScenarioBuildDataPoints,
-	queryDimScalars,
-	queryAllVariations;
-
-SQL_Results(Connection con) throws SQLException {
-	    super(con);
-	    // TODO Auto-generated constructor stub
-    }
-
-@Override
-protected void dispose() throws SQLException {
-	super.dispose();
-	if (this.queryBuildScenarios != null)
-		this.queryBuildScenarios.close();
-	if (this.queryBuildAllScenarios != null)
-		this.queryBuildAllScenarios.close();
-	if (this.queryScenarioSummaries != null)
-		this.queryScenarioSummaries.close();
-	if (this.queryAllComments != null)
-		this.queryAllComments.close();
-	if (this.queryScenariosBuilds != null)
-		this.queryScenariosBuilds.close();
-	if (this.queryScenarioDataPoints != null)
-		this.queryScenarioDataPoints.close();
-	if (this.queryDimScalars != null)
-		this.queryDimScalars.close();
-	if (this.queryAllVariations != null)
-		this.queryAllVariations.close();
-}
-
-/**
- * Get all comments from database
- *
- * @return A set of the query result
- * @throws SQLException
- */
-ResultSet queryAllComments() throws SQLException {
-	if (this.queryAllComments == null)
-		this.queryAllComments = this.fConnection.prepareStatement("select ID, KIND, TEXT from COMMENT"); //$NON-NLS-1$
-	return this.queryAllComments.executeQuery();
-}
-
-/**
- * Get all variations from database.
- *
- * @param configPattern The pattern for all the concerned configurations
- * @return A set of the query result
- * @throws SQLException
- */
-ResultSet queryAllVariations(String configPattern) throws SQLException {
-	long start = System.currentTimeMillis();
-	if (DB_Results.DEBUG) DB_Results.DEBUG_WRITER.print("[SQL query (config pattern="+configPattern); //$NON-NLS-1$
-	if (this.queryAllVariations == null) {
-		this.queryAllVariations = this.fConnection.prepareStatement("select KEYVALPAIRS from VARIATION where KEYVALPAIRS like ? order by KEYVALPAIRS"); //$NON-NLS-1$
-	}
-	this.queryAllVariations.setString(1, "%"+configPattern+"%"); //$NON-NLS-1$ //$NON-NLS-2$
-	ResultSet resultSet =  this.queryAllVariations.executeQuery();
-	if (DB_Results.DEBUG) DB_Results.DEBUG_WRITER.print(")=" + (System.currentTimeMillis() - start) + "ms]"); //$NON-NLS-1$ //$NON-NLS-2$
-	return resultSet;
-}
-
-/**
- * Query all scenarios corresponding to the default scenario pattern
- *
- * @param scenarioPattern The pattern for all the concerned scenarios
- * @return Set of the query result
- * @throws SQLException
- */
-ResultSet queryBuildAllScenarios(String scenarioPattern) throws SQLException {
-	if (this.queryBuildAllScenarios == null) {
-		String statement = "select distinct SCENARIO.ID, SCENARIO.NAME , SCENARIO.SHORT_NAME from SCENARIO where " + //$NON-NLS-1$
-			"SCENARIO.NAME LIKE ? " + //$NON-NLS-1$
-			"order by SCENARIO.NAME"; //$NON-NLS-1$
-		this.queryBuildAllScenarios = this.fConnection.prepareStatement(statement);
-	}
-	this.queryBuildAllScenarios.setString(1, scenarioPattern);
-	return this.queryBuildAllScenarios.executeQuery();
-}
-
-/**
- * Query all scenarios corresponding to a given scenario pattern
- * and for a specific build name.
- *
- * @param scenarioPattern The pattern for all the concerned scenarios
- * @param buildName The name of the concerned build
- * @return Set of the query result
- * @throws SQLException
- */
-ResultSet queryBuildScenarios(String scenarioPattern, String buildName) throws SQLException {
-	if (this.queryBuildScenarios == null) {
-		String statement = "select distinct SCENARIO.ID, SCENARIO.NAME , SCENARIO.SHORT_NAME from SCENARIO, SAMPLE, VARIATION where " + //$NON-NLS-1$
-			"SAMPLE.VARIATION_ID = VARIATION.ID and VARIATION.KEYVALPAIRS LIKE ? and " + //$NON-NLS-1$
-			"SAMPLE.SCENARIO_ID = SCENARIO.ID and SCENARIO.NAME LIKE ? " + //$NON-NLS-1$
-			"order by SCENARIO.NAME"; //$NON-NLS-1$
-		this.queryBuildScenarios = this.fConnection.prepareStatement(statement);
-	}
-	this.queryBuildScenarios.setString(1, "|build=" + buildName + '%'); //$NON-NLS-1$
-	this.queryBuildScenarios.setString(2, scenarioPattern);
-	return this.queryBuildScenarios.executeQuery();
-}
-
-/**
- * Query all scalars for a given data point.
- *
- * @param datapointId The id of the data point
- * @return Set of the query result
- * @throws SQLException
- */
-ResultSet queryDimScalars(int datapointId) throws SQLException {
-	if (this.queryDimScalars == null) {
-		StringBuilder buffer = new StringBuilder("select DIM_ID, VALUE from SCALAR where "); //$NON-NLS-1$
-		buffer.append("DATAPOINT_ID = ? and "); //$NON-NLS-1$
-		Dim[] dimensions = DB_Results.getResultsDimensions();
-		int length = dimensions.length;
-		for (int i=0; i<length; i++) {
-			if (i==0) {
-				buffer.append("(");
-			} else {
-				buffer.append(" or ");
-			}
-			buffer.append("DIM_ID = ");
-			buffer.append(dimensions[i].getId());
-		}
-		buffer.append(") order by DIM_ID");
-		this.queryDimScalars = this.fConnection.prepareStatement(buffer.toString());
-	}
-	this.queryDimScalars.setInt(1, datapointId);
-	return this.queryDimScalars.executeQuery();
-}
-
-/**
- * Get all data points for a given scenario and configuration.
- *
- * @param config The name of the concerned configuration
- * @param scenarioID The id of the scenario
- * @param lastBuildName Name of the last build on which data were stored locally
- * @param lastBuildTime Date in ms of the last build on which data were stored locally
- * @return A set of the query result
- * @throws SQLException
- */
-ResultSet queryScenarioTimestampDataPoints(String config, int scenarioID, String lastBuildName, long lastBuildTime) throws SQLException {
-	if (DB_Results.LOG) DB_Results.LOG_WRITER.starts("		+ SQL query (config="+config+", scenario ID="+scenarioID+", build name="+lastBuildName); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-	if (this.queryScenarioTimestampDataPoints== null) {
-		String statement = "select DATAPOINT.ID, DATAPOINT.STEP, VARIATION.KEYVALPAIRS from SAMPLE, DATAPOINT, VARIATION where " + //$NON-NLS-1$
-			"SAMPLE.SCENARIO_ID = ? and " + //$NON-NLS-1$
-			"DATAPOINT.SAMPLE_ID = SAMPLE.ID and " + //$NON-NLS-1$
-			"SAMPLE.STARTTIME > ? and " + //$NON-NLS-1$
-			"SAMPLE.VARIATION_ID = VARIATION.ID " + //$NON-NLS-1$
-			"ORDER BY DATAPOINT.ID, DATAPOINT.STEP"; //$NON-NLS-1$
-		this.queryScenarioTimestampDataPoints = this.fConnection.prepareStatement(statement);
-	}
-	this.queryScenarioTimestampDataPoints.setInt(1, scenarioID);
-	// 10/29/2015, dw. Not sure why this timestamp was set 5 hours in future.
-	// UTC? Location of previous performance machines?
-	// But, should not be required, AFAIK.
-	// Timestamp timestamp = new Timestamp(lastBuildTime+(5*3600L*1000)); // create a time-stamp 5h after the given build time
-	Timestamp timestamp = new Timestamp(lastBuildTime);
-	this.queryScenarioTimestampDataPoints.setTimestamp(2, timestamp);
-	ResultSet resultSet =  this.queryScenarioTimestampDataPoints.executeQuery();
-	if (DB_Results.LOG) DB_Results.LOG_WRITER.ends(")"); //$NON-NLS-1$
-	return resultSet;
-}
-ResultSet queryScenarioBuildDataPoints(String config, int scenarioID, String buildName) throws SQLException {
-	if (DB_Results.LOG) DB_Results.LOG_WRITER.starts("		+ SQL query (config="+config+", scenario ID="+scenarioID+", build name="+buildName); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-	if (this.queryScenarioBuildDataPoints== null) {
-		String statement = "select DATAPOINT.ID, DATAPOINT.STEP, VARIATION.KEYVALPAIRS from SAMPLE, DATAPOINT, VARIATION where " + //$NON-NLS-1$
-			"SAMPLE.VARIATION_ID = VARIATION.ID and VARIATION.KEYVALPAIRS LIKE ? and " + //$NON-NLS-1$
-			"SAMPLE.SCENARIO_ID = ? and " + //$NON-NLS-1$
-			"DATAPOINT.SAMPLE_ID = SAMPLE.ID " + //$NON-NLS-1$
-			"ORDER BY DATAPOINT.ID, DATAPOINT.STEP"; //$NON-NLS-1$
-		this.queryScenarioBuildDataPoints = this.fConnection.prepareStatement(statement);
-	}
-	this.queryScenarioBuildDataPoints.setString(1, "|build=" + buildName + '%'); //$NON-NLS-1$
-	this.queryScenarioBuildDataPoints.setInt(2, scenarioID);
-	ResultSet resultSet =  this.queryScenarioBuildDataPoints.executeQuery();
-	if (DB_Results.LOG) DB_Results.LOG_WRITER.ends(")"); //$NON-NLS-1$
-	return resultSet;
-}
-
-/**
- * Get all data points for a given scenario and configuration.
- *
- * @param config The name of the concerned configuration
- * @param scenarioID The id of the scenario
- * @return A set of the query result
- * @throws SQLException
- */
-ResultSet queryScenarioDataPoints(String config, int scenarioID) throws SQLException {
-	long start = System.currentTimeMillis();
-	if (DB_Results.DEBUG) DB_Results.DEBUG_WRITER.print("[SQL query (config="+config+", scenario ID="+scenarioID); //$NON-NLS-1$ //$NON-NLS-2$
-	if (this.queryScenarioDataPoints== null) {
-		String statement = "select DATAPOINT.ID, DATAPOINT.STEP, VARIATION.KEYVALPAIRS from VARIATION, SAMPLE, DATAPOINT where " + //$NON-NLS-1$
-			"VARIATION.KEYVALPAIRS like ? and SAMPLE.VARIATION_ID = VARIATION.ID and " + //$NON-NLS-1$
-			"SAMPLE.SCENARIO_ID = ? and " + //$NON-NLS-1$
-			"DATAPOINT.SAMPLE_ID = SAMPLE.ID " + //$NON-NLS-1$
-			"ORDER BY DATAPOINT.ID, DATAPOINT.STEP"; //$NON-NLS-1$
-		this.queryScenarioDataPoints = this.fConnection.prepareStatement(statement);
-	}
-	this.queryScenarioDataPoints.setString(1, "%"+config+"%"); //$NON-NLS-1$ //$NON-NLS-2$
-	this.queryScenarioDataPoints.setInt(2, scenarioID);
-	ResultSet resultSet =  this.queryScenarioDataPoints.executeQuery();
-	if (DB_Results.DEBUG) DB_Results.DEBUG_WRITER.print(")=" + (System.currentTimeMillis() - start) + "ms]"); //$NON-NLS-1$ //$NON-NLS-2$
-	return resultSet;
-}
-
-/**
- * Query all summaries from database for a given scenario,
- * configuration and builds.
- *
- * @param config The name of the concerned configuration
- * @param scenarioID The id of the scenario
- * @param builds The list of builds to get summaries. When <code>null</code>
- * 	summaries for all DB builds will be read.
- *
- * @return Set of the query result
- * @throws SQLException
- */
-ResultSet queryScenarioSummaries(int scenarioID, String config, String[] builds) throws SQLException {
-	int length = builds==null ? 0 : builds.length;
-	String buildPattern;
-	switch (length) {
-		case 0:
-			buildPattern = "%"; //$NON-NLS-1$
-			break;
-		case 1:
-		    if (builds == null) {
-		        throw new Error("Impossible for builds to be null at this point. Programming/Compiler error?");
-		    }
-			buildPattern = builds[0];
-			break;
-		default:
-	        if (builds == null) {
-	           throw new RuntimeException("builds unexpectedly null at this point. Programming error?");
-	        }
-			StringBuilder buffer = new StringBuilder();
-			loop: for (int idx=0; idx < builds[0].length(); idx++) {
-				char ch = builds[0].charAt(idx);
-				for (int i=1; i<length; i++) {
-					if (idx == builds[i].length()) {
-						break loop;
-					}
-					if (builds[i].charAt(idx) != ch) {
-						buffer.append('_');
-						continue loop;
-					}
-				}
-				buffer.append(ch);
-			}
-			buffer.append("%"); //$NON-NLS-1$
-			buildPattern = buffer.toString();
-			break;
-	}
-	if (this.queryScenarioSummaries == null) {
-		this.queryScenarioSummaries= this.fConnection.prepareStatement("select KEYVALPAIRS , IS_GLOBAL, COMMENT_ID, DIM_ID from VARIATION, SUMMARYENTRY where " + //$NON-NLS-1$
-			"KEYVALPAIRS like ? and " + //$NON-NLS-1$
-			"VARIATION_ID = VARIATION.ID and " + //$NON-NLS-1$
-			"SCENARIO_ID = ? and " + //$NON-NLS-1$
-			"(DIM_ID = "+InternalDimensions.ELAPSED_PROCESS.getId()+" or DIM_ID = 0)" + //$NON-NLS-1$ //$NON-NLS-2$
-			" order by VARIATION_ID, DIM_ID"); //$NON-NLS-1$
-	}
-	this.queryScenarioSummaries.setString(1, "|build="+buildPattern+"||config="+ config + "||jvm=8.0|"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-	this.queryScenarioSummaries.setInt(2, scenarioID);
-	return this.queryScenarioSummaries.executeQuery();
-}
-
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/ScenarioResults.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/ScenarioResults.java
deleted file mode 100644
index 66e66c2..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/db/ScenarioResults.java
+++ /dev/null
@@ -1,401 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2020 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.internal.performance.results.db;
-
-import java.io.DataInputStream;
-import java.io.DataOutputStream;
-import java.io.IOException;
-import java.util.Arrays;
-import java.util.Comparator;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-import java.util.StringTokenizer;
-
-import org.eclipse.test.internal.performance.results.utils.Util;
-
-
-/**
- * Class to handle performance results of a component's scenario
- * (for example 'org.eclipse.jdt.core.FullSourceWorkspaceSearchTest#searchAllTypeNames()').
- *
- * It gives access to results for each configuration run on this scenario.
- *
- * @see ConfigResults
- */
-public class ScenarioResults extends AbstractResults {
-	String fileName;
-	String label;
-	String shortName;
-
-public ScenarioResults(int id, String name, String shortName) {
-	super(null, id);
-	this.name = name;
-	this.label = shortName;
-}
-
-/*
- * Complete results with additional database information.
- */
-void completeResults(String lastBuildName) {
-	String[] builds = DB_Results.getBuilds();
-	Comparator<String> comparator = (s1, s2) -> Util.getBuildDate(s1).compareTo(Util.getBuildDate(s2));
-	Arrays.sort(builds, comparator);
-	int idx = Arrays.binarySearch(builds, lastBuildName, comparator);
-	if (idx < 0) {
-		builds = null;
-	} else {
-		int size = builds.length - ++idx;
-		System.arraycopy(builds, idx, builds = new String[size], 0, size);
-	}
-//	String[] builds = null;
-	int size = size();
-	for (int i=0; i<size; i++) {
-		ConfigResults configResults = (ConfigResults) this.children.get(i);
-		configResults.completeResults(builds);
-	}
-}
-
-/**
- * Returns the first configuration baseline build name.
- *
- * @return The name of the baseline build
- * @see ConfigResults#getBaselineBuildName()
- */
-public String getBaselineBuildName() {
-	int size = size();
-	StringBuilder buffer = new StringBuilder();
-	for (int i=0; i<size; i++) {
-		ConfigResults configResults = (ConfigResults) this.children.get(i);
-		if (configResults.isValid()) {
-			return configResults.getBaselineBuildName();
-			/* TODO (frederic) decide what return when baseline is not the same on all configs...
-			 * Currently returns the first found, but may be a comma-separated list?
-			String baselineName = configResults.getBaselineBuildName();
-			if (buffer.indexOf(baselineName) < 0) {
-				if (buffer.length() > 0) buffer.append('|');
-				buffer.append(baselineName);
-			}
-			*/
-		}
-	}
-	return buffer.toString();
-}
-
-Set<String> getAllBuildNames() {
-	Set<String> buildNames = new HashSet<>();
-	int size = size();
-	for (int i=0; i<size; i++) {
-		ConfigResults configResults = (ConfigResults) this.children.get(i);
-		List<BuildResults> builds = configResults.getBuilds(null);
-		int length = builds.size();
-		for (int j=0; j<length; j++) {
-			buildNames.add(builds.get(j).getName());
-		}
-	}
-	return buildNames;
-}
-
-/**
- * Return the results of the given configuration.
- *
- * @param config The configuration name
- * @return The {@link ConfigResults results} for the given configuration
- * 	or <code>null</code> if none was found.
- */
-public ConfigResults getConfigResults(String config) {
-	return (ConfigResults) getResults(config);
-}
-
-/**
- * Return a name which can be used as a file name to store information
- * related to this scenario. This name does not contain the extension.
- *
- * @return The file name
- */
-public String getFileName() {
-	if (this.fileName == null) {
-		this.fileName = "Scenario" + this.id; //$NON-NLS-1$
-	}
-	return this.fileName;
-}
-
-/**
- * Returns the scenario label. If no label exist as there's no associated summary,
- * then the short name is returned
- *
- * @return The label of the scenario or it's short name if no summary exists
- */
-public String getLabel() {
-	return this.label == null ? getShortName() : this.label;
-}
-
-/**
- * Returns the short name of the scenario. Short name is the name scenario
- * from which package declaration has been removed.
- *
- * @return The scenario short name
- */
-public String getShortName() {
-	if (this.shortName == null) {
-		// Remove class name qualification
-		int testSeparator = this.name.indexOf('#');
-		boolean hasClassName = testSeparator >= 0;
-		if (!hasClassName) {
-			testSeparator = this.name.lastIndexOf('.');
-			if (testSeparator <= 0) {
-				return this.shortName = this.name;
-			}
-		}
-		int classSeparator = this.name.substring(0, testSeparator).lastIndexOf('.');
-		if (classSeparator < 0) {
-			return this.shortName = this.name;
-		}
-		int length = this.name.length();
-		String testName = this.name.substring(classSeparator+1, length);
-		if (!hasClassName && testName.startsWith("test.")) { // specific case for swt... //$NON-NLS-1$
-			testName = testName.substring(5);
-		}
-
-		// Remove qualification from test name
-		StringTokenizer tokenizer = new StringTokenizer(testName, " :,", true); //$NON-NLS-1$
-		StringBuilder buffer = new StringBuilder(tokenizer.nextToken());
-		while (tokenizer.hasMoreTokens()) {
-			String token = tokenizer.nextToken();
-			char fc = token.charAt(0);
-			while (fc == ' ' || fc == ',' || fc == ':') {
-				buffer.append(token); // add the separator
-				token = tokenizer.nextToken();
-				fc = token.charAt(0);
-			}
-			int last = token.lastIndexOf('.');
-			if (last >= 3) {
-				int first = token .indexOf('.');
-				if (first == last) {
-					buffer.append(token);
-				} else {
-					buffer.append(token.substring(last+1));
-				}
-			} else {
-				buffer.append(token);
-			}
-		}
-		this.shortName = buffer.toString();
-	}
-	return this.shortName;
-}
-
-/**
- * Returns whether one of the scenario's config has a summary or not.
- *
- * @return <code>true</code> if one of the scenario's config has a summary
- * 	<code>false</code> otherwise.
- */
-public boolean hasSummary() {
-	int size = size();
-	for (int i=0; i<size; i++) {
-		ConfigResults configResults = (ConfigResults) this.children.get(i);
-		BuildResults currentBuildResults = configResults.getCurrentBuildResults();
-		if (currentBuildResults != null && currentBuildResults.hasSummary()) return true;
-	}
-	return false;
-}
-
-@Override
-public int hashCode() {
-	return this.id;
-}
-
-/**
- * Returns whether the current scenario is valid or not.
- *
- * @return <code>true</code> if all the builds contained in the database are
- * 	known by the scenario (ie. at least one its configuration knows each of the
- * 	db builds), <code>false</code> otherwise.
- */
-public boolean isValid() {
-	int size = this.children.size();
-	for (int i=0; i<size; i++) {
-		ConfigResults configResults = (ConfigResults) this.children.get(i);
-		if (configResults.isValid()) {
-			return true;
-		}
-	}
-	return false;
-}
-
-/**
- * Returns whether the current build of the given config has valid results or not.
- *
- * @param config The name of the configuration
- * @return <code>true</code> if the build has valid results
- * 	<code>false</code> otherwise.
- */
-public boolean isValid(String config) {
-	return getResults(config) != null;
-}
-
-/**
- * Returns whether the current scenario knows a build or not.
- *
- * @param buildName The name of the build
- * @return <code>true</code> if the at least one of scenario configuration
- * 	knows the given build, <code>false</code> otherwise.
- */
-public boolean knowsBuild(String buildName) {
-	String[] buildNames = buildName == null
-		? DB_Results.getBuilds()
-		: new String[] { buildName };
-	Set<String> scenarioBuilds = getAllBuildNames();
-	int length = buildNames.length;
-	for (int i=0; i<length; i++) {
-		if (!scenarioBuilds.contains(buildNames[i])) {
-			return false;
-		}
-	}
-	return true;
-}
-
-/*
- * Read scenario results information from database.
- *
-void read(String buildName, long lastBuildTime) {
-
-	// Get values
-	print("	+ scenario '"+getShortName()+"': values..."); //$NON-NLS-1$ //$NON-NLS-2$
-	long start = System.currentTimeMillis();
-	String configPattern = getPerformance().getConfigurationsPattern();
-	DB_Results.queryScenarioValues(this, configPattern, buildName, lastBuildTime);
-	print(timeString(System.currentTimeMillis()-start));
-
-	// Set baseline and current builds
-	print(", infos..."); //$NON-NLS-1$
-	start = System.currentTimeMillis();
-	int size = size();
-	String[] builds = buildName == null ? null : new String[] { buildName };
-	for (int i=0; i<size; i++) {
-		ConfigResults configResults = (ConfigResults) this.children.get(i);
-		configResults.completeResults(builds);
-	}
-	println(timeString(System.currentTimeMillis()-start));
-}
-*/
-
-/*
- * Read data from a local file
- */
-void readData(DataInputStream stream) throws IOException {
-
-	// Read data stored locally
-	int size = stream.readInt();
-	for (int i=0; i<size; i++) {
-		int config_id = stream.readInt();
-		ConfigResults configResults = (ConfigResults) getResults(config_id);
-		if (configResults == null) {
-			configResults = new ConfigResults(this, config_id);
-			addChild(configResults, true);
-		}
-		configResults.readData(stream);
-	}
-}
-
-/*
- * Read new data from the database.
- * This is typically needed when the build results are not in the local file...
- *
-boolean readNewData(String lastBuildName, boolean force) {
-	if (lastBuildName == null) {
-		read(null, -1);
-		return true;
-	}
-	PerformanceResults performanceResults = getPerformance();
-	String lastBuildDate = getBuildDate(lastBuildName, getBaselinePrefix());
-	if (force || performanceResults.getBuildDate().compareTo(lastBuildDate) > 0) {
-		long lastBuildTime = 0;
-	    try {
-		    lastBuildTime = DATE_FORMAT.parse(lastBuildDate).getTime();
-	    } catch (ParseException e) {
-		    // should not happen
-	    }
-	    read(lastBuildName, lastBuildTime);
-		return true;
-	}
-	return false;
-}
-*/
-
-/*
- * Set value from database information.
- */
-void setInfos(int config_id, int build_id, int summaryKind, String comment) {
-	ConfigResults configResults = (ConfigResults) getResults(config_id);
-	if (configResults == null) {
-		configResults = new ConfigResults(this, config_id);
-		addChild(configResults, true);
-	}
-	configResults.setInfos(build_id, summaryKind, comment);
-}
-
-/*
- * Set value from database information.
- */
-void setValue(int build_id, int dim_id, int config_id, int step, long value) {
-	ConfigResults configResults = (ConfigResults) getResults(config_id);
-	if (configResults == null) {
-		configResults = new ConfigResults(this, config_id);
-		addChild(configResults, true);
-	}
-	configResults.setValue(build_id, dim_id, step, value);
-}
-
-/*
- * Read scenario results information from database.
- */
-boolean updateBuild(String buildName, boolean force) {
-
-	if (!force && knowsBuild(buildName)) {
-		return false;
-	}
-
-	// Get values
-	print("	+ scenario '"+getShortName()+"': values..."); //$NON-NLS-1$ //$NON-NLS-2$
-	long start = System.currentTimeMillis();
-	String configPattern = getPerformance().getConfigurationsPattern();
-	DB_Results.queryScenarioValues(this, configPattern, buildName);
-	print(Util.timeString(System.currentTimeMillis()-start));
-
-	// Set baseline and current builds
-	print(", infos..."); //$NON-NLS-1$
-	start = System.currentTimeMillis();
-	int size = size();
-	String[] builds = buildName == null ? null : new String[] { buildName };
-	for (int i=0; i<size; i++) {
-		ConfigResults configResults = (ConfigResults) this.children.get(i);
-		configResults.completeResults(builds);
-	}
-	println(Util.timeString(System.currentTimeMillis()-start));
-	return true;
-}
-
-void write(DataOutputStream stream) throws IOException {
-    if (DO_NOT_WRITE_DATA) {
-        return;
-    }
-	int size = size();
-	stream.writeInt(this.id);
-	stream.writeInt(size);
-	for (int i=0; i<size; i++) {
-		ConfigResults configResults = (ConfigResults) this.children.get(i);
-		configResults.write(stream);
-	}
-}
-
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/ui/BuildsComparisonTable.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/ui/BuildsComparisonTable.java
deleted file mode 100644
index c0e98fe..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/ui/BuildsComparisonTable.java
+++ /dev/null
@@ -1,176 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2010 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.internal.performance.results.ui;
-
-import java.io.PrintStream;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.eclipse.test.internal.performance.results.db.AbstractResults;
-import org.eclipse.test.internal.performance.results.db.BuildResults;
-import org.eclipse.test.internal.performance.results.db.ConfigResults;
-import org.eclipse.test.internal.performance.results.db.PerformanceResults;
-import org.eclipse.test.internal.performance.results.db.ScenarioResults;
-import org.eclipse.test.performance.ui.Utils;
-
-/**
- * This class is responsible to print html table with the difference between two
- * builds for all the scenarios and the configuration of a specific component.
- */
-public class BuildsComparisonTable {
-
-	private static final double DEFAULT_FAILURE_THRESHOLD = PerformanceResults.DEFAULT_FAILURE_THRESHOLD / 100.0 / 2;
-	private String component;
-	private PrintStream stream;
-	String buildName, referenceName;
-
-public BuildsComparisonTable(String name, PrintStream stream, String build, String reference) {
-    this.component = name;
-    this.stream = stream;
-    this.buildName = build;
-    this.referenceName = reference;
-}
-
-/**
- * Prints the HTML representation of scenario status table into the given stream.
- */
-public void print(PerformanceResults performanceResults) {
-
-	List<AbstractResults> scenarios = performanceResults.getComponentScenarios(this.component);
-	int size = scenarios.size();
-
-	// Print titles
-	printTitle();
-	this.stream.print("<table border=\"1\">\n");
-	this.stream.print("<tr>\n");
-	this.stream.print("<td><h4>All ");
-	this.stream.print(computeSize(scenarios));
-	this.stream.print(" scenarios</h4></td>\n");
-	printColumnsTitle(performanceResults);
-
-	// Print one line per scenario results
-	for (int i=0; i<size; i++) {
-		ScenarioResults scenarioResults = (ScenarioResults) scenarios.get(i);
-		if (!scenarioResults.isValid()) continue;
-		this.stream.print("<tr>\n");
-		this.stream.print("<td>");
-		boolean hasSummary = scenarioResults.hasSummary();
-		if (hasSummary) this.stream.print("<b>");
-		this.stream.print(scenarioResults.getShortName());
-		if (hasSummary) this.stream.print("</b>");
-		this.stream.print("\n");
-		String[] configs = performanceResults.getConfigNames(true/*sort*/);
-		int length = configs.length;
-		for (int j=0; j<length; j++) {
-			printConfigStats(scenarioResults, configs[j]);
-		}
-	}
-	this.stream.print("</table>\n");
-}
-
-private int computeSize(List<AbstractResults> scenarios) {
-	int size = scenarios.size();
-	int n = 0;
-	for (int i=0; i<size; i++) {
-		ScenarioResults scenarioResults = (ScenarioResults) scenarios.get(i);
-		if (scenarioResults.isValid()) n++;
-	}
-	return n;
-}
-
-/*
- * Print the table columns title.
- */
-private void printColumnsTitle(PerformanceResults performanceResults) {
-	String[] configNames = performanceResults.getConfigNames(true/*sort*/);
-	String[] configBoxes = performanceResults.getConfigBoxes(true/*sort*/);
-	int length = configNames.length;
-	for (int i=0; i<length; i++) {
-		String columnTitle = configNames[i];
-		String boxName = configBoxes[i];
-		int idx = boxName.indexOf('(');
-		if (idx < 0) {
-			columnTitle = boxName;
-		} else {
-			// first line
-			StringTokenizer tokenizer = new StringTokenizer(boxName.substring(0, idx).trim(), " ");
-			StringBuilder buffer = new StringBuilder(tokenizer.nextToken());
-			while (tokenizer.hasMoreTokens()) {
-				buffer.append("&nbsp;");
-				buffer.append(tokenizer.nextToken());
-			}
-			buffer.append(' ');
-			// second line
-			tokenizer = new StringTokenizer(boxName.substring(idx).trim(), " ");
-			buffer.append(tokenizer.nextToken());
-			while (tokenizer.hasMoreTokens()) {
-				buffer.append("&nbsp;");
-				buffer.append(tokenizer.nextToken());
-			}
-			columnTitle = buffer.toString();
-		}
-		this.stream.print("<td><h5>");
-		this.stream.print(columnTitle);
-		this.stream.print("</h5>\n");
-	}
-}
-
-/*
- * Print the scenario statistics value for the given configuration.
- */
-private void printConfigStats(ScenarioResults scenarioResults, String config) {
-	ConfigResults configResults = scenarioResults.getConfigResults(config);
-	if (configResults == null || !configResults.isValid()) {
-		this.stream.print("<td>n/a</td>");
-		return;
-	}
-	final BuildResults buildResults = configResults.getBuildResults(this.buildName);
-	if (buildResults == null) {
-		this.stream.print("<td>no results</td>");
-		return;
-	}
-	final BuildResults referenceResults = configResults.getBuildResults(this.referenceName);
-	if (referenceResults == null) {
-		this.stream.print("<td>no reference</td>");
-		return;
-	}
-	double[] numbers = configResults.getNumbers(buildResults, referenceResults);
-	final double delta = numbers[AbstractResults.DELTA_VALUE_INDEX];
-	final double[] deviation = new double[] { -delta, numbers[AbstractResults.DELTA_ERROR_INDEX] };
-	boolean hasFailure = delta < -DEFAULT_FAILURE_THRESHOLD;
-	String comment = buildResults.getComment();
-	String image = Utils.getImage(0, hasFailure, comment != null);
-	this.stream.print("<td><a ");
-
-	// write deviation with error in table
-	this.stream.print("href=\"http://fullmoon.ottawa.ibm.com/downloads/drops/I20100817-0800/performance/");
-	this.stream.print(configResults.getName());
-	this.stream.print('/');
-	this.stream.print(scenarioResults.getFileName());
-	this.stream.print(".html\">\n");
-	this.stream.print("<img hspace=\"10\" border=\"0\" src=\"");
-	this.stream.print(image);
-	this.stream.print("\"/></a>\n");
-	String result = Utils.failureMessage(deviation, false);
-	this.stream.print(result);
-	this.stream.print("\n");
-}
-
-/*
- * Print the comparison table title.
- */
-private void printTitle() {
-	this.stream.print("<br><h3>Component ");
-	this.stream.print(this.component);
-	this.stream.print("</h3>\n");
-}
-
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/ui/PerformanceResultsPreferenceInitializer.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/ui/PerformanceResultsPreferenceInitializer.java
deleted file mode 100644
index 6151b10..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/ui/PerformanceResultsPreferenceInitializer.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.internal.performance.results.ui;
-
-import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
-import org.eclipse.core.runtime.preferences.DefaultScope;
-import org.eclipse.core.runtime.preferences.IEclipsePreferences;
-import org.eclipse.test.internal.performance.PerformanceTestPlugin;
-import org.eclipse.test.internal.performance.data.Dim;
-import org.eclipse.test.internal.performance.results.utils.IPerformancesConstants;
-import org.eclipse.test.performance.Dimension;
-
-/**
- * Default performances preferences initializer.
- */
-public class PerformanceResultsPreferenceInitializer extends AbstractPreferenceInitializer implements IPerformancesConstants {
-
-@Override
-public void initializeDefaultPreferences() {
-	IEclipsePreferences defaultPreferences = DefaultScope.INSTANCE.getNode(PLUGIN_ID);
-
-	// Eclipse version
-	defaultPreferences.putInt(PRE_ECLIPSE_VERSION, IPerformancesConstants.DEFAULT_ECLIPSE_VERSION);
-
-	// Status
-	defaultPreferences.putInt(PRE_WRITE_STATUS, IPerformancesConstants.DEFAULT_WRITE_STATUS);
-
-	// Comparison
-	defaultPreferences.putInt(PRE_COMPARISON_THRESHOLD_FAILURE, IPerformancesConstants.DEFAULT_COMPARISON_THRESHOLD_FAILURE);
-	defaultPreferences.putInt(PRE_COMPARISON_THRESHOLD_ERROR, IPerformancesConstants.DEFAULT_COMPARISON_THRESHOLD_ERROR);
-	defaultPreferences.putInt(PRE_COMPARISON_THRESHOLD_IMPROVEMENT, IPerformancesConstants.DEFAULT_COMPARISON_THRESHOLD_IMPROVEMENT);
-
-	// Config descriptors
-	String[][] configDescriptors = PerformanceTestPlugin.getConfigDescriptors();
-	int cdLength = configDescriptors.length;
-	for (int i = 0; i < cdLength; i++) {
-		String[] descriptor = configDescriptors[i];
-		defaultPreferences.put(PRE_CONFIG_DESCRIPTOR_NAME + "." + i, descriptor[0]);
-		defaultPreferences.put(PRE_CONFIG_DESCRIPTOR_DESCRIPTION + "." + i, descriptor[1]);
-	}
-
-	// Default dimension
-	defaultPreferences.put(PRE_DEFAULT_DIMENSION, ((Dim) PerformanceTestPlugin.getDefaultDimension()).getName());
-
-	// Result dimensions
-	Dimension[] dimensions = PerformanceTestPlugin.getResultsDimensions();
-	int length = dimensions.length;
-	for (int i = 0; i < length; i++) {
-		Dim dim = (Dim) dimensions[i];
-		defaultPreferences.put(PRE_RESULTS_DIMENSION + "." + i, dim.getName());
-	}
-
-	// Filters
-	defaultPreferences.putBoolean(PRE_FILTER_ADVANCED_SCENARIOS, IPerformancesConstants.DEFAULT_FILTER_ADVANCED_SCENARIOS);
-	defaultPreferences.putBoolean(PRE_FILTER_OLD_BUILDS, IPerformancesConstants.DEFAULT_FILTER_OLD_BUILDS);
-
-}
-
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/ui/filter_ps.gif b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/ui/filter_ps.gif
deleted file mode 100644
index a4c9e60..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/ui/filter_ps.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/ui/help.gif b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/ui/help.gif
deleted file mode 100644
index ae2c4c0..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/ui/help.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/ui/icallout_obj.gif b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/ui/icallout_obj.gif
deleted file mode 100644
index f52d86a..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/ui/icallout_obj.gif
+++ /dev/null
Binary files differ
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/utils/IPerformancesConstants.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/utils/IPerformancesConstants.java
deleted file mode 100644
index d7ed584..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/utils/IPerformancesConstants.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.internal.performance.results.utils;
-
-/**
- * Interface to define all constants used for performances.
- */
-public interface IPerformancesConstants {
-    String PLUGIN_ID = "org.eclipse.test.performance.ui"; //$NON-NLS-1$
-
-	String PREFIX = PLUGIN_ID + "."; //$NON-NLS-1$
-
-	// State constants
-    String PRE_FILTER_BASELINE_BUILDS = PREFIX + "filter.baseline.builds"; //$NON-NLS-1$
-    String PRE_FULL_LINE_SELECTION  = PREFIX + "full.line.selection"; //$NON-NLS-1$
-    String PRE_WRITE_RESULTS_DIR = PREFIX + "write.results.dir"; //$NON-NLS-1$
-
-	// Preference constants
-    String PRE_ECLIPSE_VERSION = PREFIX + "eclipse.version"; //$NON-NLS-1$
-    String PRE_LOCAL_DATA_DIR = PREFIX + "local.data.dir"; //$NON-NLS-1$
-    String PRE_RESULTS_GENERATION_DIR = PREFIX + "results.generation.dir"; //$NON-NLS-1$
-    String PRE_CONFIG_DESCRIPTOR_NAME = PREFIX + "config.descriptor.name"; //$NON-NLS-1$
-    String PRE_CONFIG_DESCRIPTOR_DESCRIPTION = PREFIX + "config.descriptor.description"; //$NON-NLS-1$
-    String PRE_DEFAULT_DIMENSION = PREFIX + "default.dimension"; //$NON-NLS-1$
-    String PRE_RESULTS_DIMENSION = PREFIX + "results.dimension"; //$NON-NLS-1$
-    String PRE_MILESTONE_BUILDS = PREFIX + "milestone.builds"; //$NON-NLS-1$
-    String PRE_STATUS_COMMENT_PREFIX = PREFIX + "status.comment"; //$NON-NLS-1$
-    String PRE_FILTER_ADVANCED_SCENARIOS = PREFIX + "filter.non.fingerprints.scenarios"; //$NON-NLS-1$
-    String PRE_FILTER_OLD_BUILDS = PREFIX + "filter.non.milestones.builds"; //$NON-NLS-1$
-
-	// Default values
-	boolean DEFAULT_FILTER_ADVANCED_SCENARIOS = true;
-	boolean DEFAULT_FILTER_OLD_BUILDS = false;
-	boolean DEFAULT_DATABASE_CONNECTION = false;
-	boolean DEFAULT_DATABASE_LOCAL = false;
-
-	// Status
-    String PRE_WRITE_STATUS = PREFIX + "write.status"; //$NON-NLS-1$
-	int STATUS_BUILDS_NUMBER_MASK= 0x00FF;
-	int DEFAULT_BUILDS_NUMBER = 3;
-	int STATUS_VALUES = 0x0100;
-	int STATUS_ERROR_NONE = 0x0200;
-	int STATUS_ERROR_NOTICEABLE = 0x0400;
-	int STATUS_ERROR_SUSPICIOUS = 0x0600;
-	int STATUS_ERROR_WEIRD = 0x0800;
-	int STATUS_ERROR_INVALID = 0x0A00;
-	int STATUS_ERROR_LEVEL_MASK = 0x0E00;
-	int STATUS_SMALL_VALUE_BUILD = 0x1000;
-	int STATUS_SMALL_VALUE_DELTA = 0x2000;
-	int STATUS_SMALL_VALUE_MASK = 0x3000;
-	int STATUS_STATISTICS_ERRATIC = 0x4000;
-	int STATUS_STATISTICS_UNSTABLE = 0x8000;
-	int STATUS_STATISTICS_MASK = 0xC000;
-	int DEFAULT_WRITE_STATUS = STATUS_ERROR_NONE | DEFAULT_BUILDS_NUMBER;
-
-	// Comparison
-    String PRE_COMPARISON_THRESHOLD_FAILURE = PREFIX + "comparison.threshold.failure"; //$NON-NLS-1$
-	int DEFAULT_COMPARISON_THRESHOLD_FAILURE = 10;
-    String PRE_COMPARISON_THRESHOLD_ERROR = PREFIX + "comparison.threshold.error"; //$NON-NLS-1$
-	int DEFAULT_COMPARISON_THRESHOLD_ERROR = 3;
-    String PRE_COMPARISON_THRESHOLD_IMPROVEMENT = PREFIX + "comparison.threshold.imporvement"; //$NON-NLS-1$
-	int DEFAULT_COMPARISON_THRESHOLD_IMPROVEMENT = 10;
-
-	int ECLIPSE_DEVELOPMENT_VERSION = 418;
-	int DEFAULT_ECLIPSE_VERSION = ECLIPSE_DEVELOPMENT_VERSION;
-	int ECLIPSE_MAINTENANCE_VERSION = 417;
-
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/utils/Util.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/utils/Util.java
deleted file mode 100644
index 6d0e9b4..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/internal/performance/results/utils/Util.java
+++ /dev/null
@@ -1,287 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2021 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.internal.performance.results.utils;
-
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.text.NumberFormat;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.Calendar;
-import java.util.Comparator;
-import java.util.Date;
-import java.util.GregorianCalendar;
-import java.util.List;
-import java.util.Locale;
-
-import org.eclipse.test.internal.performance.results.db.DB_Results;
-
-/**
- * Utility methods for statistics. Got from org.eclipse.test.performance
- * framework
- */
-public final class Util implements IPerformancesConstants {
-
-    // Percentages
-    public static final NumberFormat PERCENTAGE_FORMAT = NumberFormat.getPercentInstance(Locale.US);
-    static {
-        PERCENTAGE_FORMAT.setMaximumFractionDigits(2);
-    }
-    public static final NumberFormat DOUBLE_FORMAT = NumberFormat.getNumberInstance(Locale.US);
-    static {
-        DOUBLE_FORMAT.setMaximumFractionDigits(2);
-    }
-
-    // Strings
-    public static final String LINE_SEPARATOR     = System.lineSeparator();
-
-    // Build prefixes
-    public static final List<String> ALL_BUILD_PREFIXES = List.of("I", "M");
-    public static final List<String> BUILD_PREFIXES = List.of("I");
-    public static final List<String> MAINTENANCE_BUILD_PREFIXES = List.of("I", "M");
-    public static final List<String> BASELINE_BUILD_PREFIXES = List.of(DB_Results.getDbBaselinePrefix());
-
-    public static final BuildDateComparator BUILD_DATE_COMPARATOR = new BuildDateComparator();
-
-    // Components constants
-    public static final String              ORG_ECLIPSE           = "org.eclipse.";
-
-    static class BuildDateComparator implements Comparator<String> {
-
-        @Override
-        public int compare(String s1, String s2) {
-            String buildDate1 = getBuildDate(s1);
-            String buildDate2 = getBuildDate(s2);
-		// Not the greatest sanity check, found some cases, when "getting started"
-		// where buildname was "4.1.1" or "${buildid}, which would cause a NPE.
-            // So, simple attempt to provide a more helpful message.
-            if (buildDate1 == null) {
-                throw new IllegalArgumentException("Buildname did not have a date, as expected: " + s1);
-            }
-            if (buildDate2 == null) {
-                throw new IllegalArgumentException("Buildname did not have a date, as expected: " + s2);
-            }
-            return buildDate1.compareTo(buildDate2);
-        }
-    }
-
-    // Static information for time and date
-    public static final int              ONE_MINUTE  = 60000;
-    public static final long             ONE_HOUR    = 3600000L;
-    public static final SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("yyyyMMddHHmm"); //$NON-NLS-1$
-
-    /**
-     * Copy a file content to another location.
-     *
- * @param in the input stream.
- * @param dest the destination.
-     * @return <code>true</code> if the file was successfully copied,
-     *         <code>false</code> otherwise.
-     */
-    public static boolean copyStream(InputStream in, File dest) {
-
-        try (OutputStream out = new FileOutputStream(dest)){
-
-            byte[] buf = new byte[1024];
-            int len;
-            while ((len = in.read(buf)) > 0) {
-                out.write(buf, 0, len);
-            }
-            in.close();
-        } catch (IOException e) {
-            e.printStackTrace();
-            return false;
-        }
-        return true;
-    }
-
-    /**
-     * Return the build date as yyyyMMddHHmm.
-     *
- * @param buildName The build name (e.g. I20090806-0100)
-     * @return The date as a string.
-     */
-    public static String getBuildDate(String buildName) {
-        return getBuildDate(buildName, DB_Results.getDbBaselinePrefix());
-    }
-
-    /**
-     * Return the build date as yyyyMMddHHmm.
-     *
- * @param buildName The build name (e.g. I20090806-0100)
- * @param baselinePrefix The baseline prefix (e.g. {@link DB_Results#getDbBaselinePrefix()})
-     * @return The date as a string.
-     */
-    public static String getBuildDate(String buildName, String baselinePrefix) {
-
-        String result = "";
-        // Baseline name
-        if (baselinePrefix != null && buildName.startsWith(baselinePrefix)) {
-            int length = buildName.length();
-            result = buildName.substring(length - 12, length);
-        } else {
-            // Build name
-            char first = buildName.charAt(0);
-            // TODO: should check if in buildIdPrefixes instead of hard coding
-            if (first == 'N' || first == 'I' || first == 'M') {
-                result = buildName.substring(1, 9) + buildName.substring(10, 14);
-            } else {
-                //System.err.println("\n\tERROR: buildName did not have expected format. buildName: " + buildName);
-                // 2015/10/30 (dw) following too complicated (and, unsure if correct, so should be removed or simplified greatly bullet proofed)
-                // Try with date format, to handle old release baselines
-                int length = buildName.length() - 12 /* length of date */;
-                for (int i = 0; i <= length; i++) {
-                    try {
-                        String substring = i == 0 ? buildName : buildName.substring(i);
-                        Util.DATE_FORMAT.parse(substring);
-                        // if no exception,
-                        result = substring;
-                    }
-                    catch (ParseException ex) {
-                        result = null;
-                    }
-              }
-            }
-        }
-        return result;
-    }
-
-    /**
-     * Returns a string to display the given time as a duration formatted as
-     * "hh:mm:ss".
-     *
-     * @param time
-     *            The time to format as a long.
-     * @return The formatted string.
-     */
-    public static String timeChrono(long time) {
-        if (time < 1000) { // less than 1s
-            return "00:00:00"; //$NON-NLS-1$
-        }
-        StringBuilder buffer = new StringBuilder();
-        int seconds = (int) (time / 1000);
-        if (seconds < 60) {
-            buffer.append("00:00:"); //$NON-NLS-1$
-            if (seconds < 10)
-                buffer.append('0');
-            buffer.append(seconds);
-        } else {
-            int minutes = seconds / 60;
-            if (minutes < 60) {
-                buffer.append("00:"); //$NON-NLS-1$
-                if (minutes < 10)
-                    buffer.append('0');
-                buffer.append(minutes);
-                buffer.append(':');
-                seconds = seconds % 60;
-                if (seconds < 10)
-                    buffer.append('0');
-                buffer.append(seconds);
-            } else {
-                int hours = minutes / 60;
-                if (hours < 10)
-                    buffer.append('0');
-                buffer.append(hours);
-                buffer.append(':');
-                minutes = minutes % 60;
-                if (minutes < 10)
-                    buffer.append('0');
-                buffer.append(minutes);
-                buffer.append(':');
-                seconds = seconds % 60;
-                if (seconds < 10)
-                    buffer.append('0');
-                buffer.append(seconds);
-            }
-        }
-        return buffer.toString();
-    }
-
-    /**
-     * Returns a string to display the given time as the hour of the day
-     * formatted as "hh:mm:ss".
-     *
-     * @param time
-     *            The time to format as a long.
-     * @return The formatted string.
-     */
-    public static String timeEnd(long time) {
-        GregorianCalendar calendar = new GregorianCalendar();
-        calendar.add(Calendar.SECOND, (int) (time / 1000));
-        Date date = calendar.getTime();
-        SimpleDateFormat dateFormat = new SimpleDateFormat("KK:mm:ss"); //$NON-NLS-1$
-        return dateFormat.format(date);
-    }
-
-    /**
-     * Returns a string to display the given time as a duration formatted as:
-     * <ul>
-     * <li>"XXXms" if the duration is less than 0.1s (e.g. "543ms")</li>
-     * <li>"X.YYs" if the duration is less than 1s (e.g. "5.43s")</li>
-     * <li>"XX.Ys" if the duration is less than 1mn (e.g. "54.3s")</li>
-     * <li>"XXmn XXs" if the duration is less than 1h (e.g. "54mn 3s")</li>
-     * <li>"XXh XXmn XXs" if the duration is over than 1h (e.g. "5h 4mn 3s")
-     * </li>
-     * </ul>
-     *
-     * @param time
-     *            The time to format as a long.
-     * @return The formatted string.
-     */
-    public static String timeString(long time) {
-        NumberFormat format = NumberFormat.getInstance();
-        format.setMaximumFractionDigits(1);
-        StringBuilder buffer = new StringBuilder();
-        if (time == 0) {
-            // print nothing
-        }
-        if (time < 100) { // less than 0.1s
-            buffer.append(time);
-            buffer.append("ms"); //$NON-NLS-1$
-        } else if (time < 1000) { // less than 1s
-            if ((time % 100) != 0) {
-                format.setMaximumFractionDigits(2);
-            }
-            buffer.append(format.format(time / 1000.0));
-            buffer.append("s"); //$NON-NLS-1$
-        } else if (time < Util.ONE_MINUTE) { // less than 1mn
-            if ((time % 1000) == 0) {
-                buffer.append(time / 1000);
-            } else {
-                buffer.append(format.format(time / 1000.0));
-            }
-            buffer.append("s"); //$NON-NLS-1$
-        } else if (time < Util.ONE_HOUR) { // less than 1h
-            buffer.append(time / Util.ONE_MINUTE).append("mn "); //$NON-NLS-1$
-            long seconds = time % Util.ONE_MINUTE;
-            buffer.append(seconds / 1000);
-            buffer.append("s"); //$NON-NLS-1$
-        } else { // more than 1h
-            long h = time / Util.ONE_HOUR;
-            buffer.append(h).append("h "); //$NON-NLS-1$
-            long m = (time % Util.ONE_HOUR) / Util.ONE_MINUTE;
-            buffer.append(m).append("mn "); //$NON-NLS-1$
-            long seconds = m % Util.ONE_MINUTE;
-            buffer.append(seconds / 1000);
-            buffer.append("s"); //$NON-NLS-1$
-        }
-        return buffer.toString();
-    }
-
-    private Util() {
-        // don't instantiate
-    }
-
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/BarGraph.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/BarGraph.java
deleted file mode 100644
index 52e5b98..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/BarGraph.java
+++ /dev/null
@@ -1,291 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.performance.ui;
-
-import java.text.NumberFormat;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Display;
-
-public class BarGraph {
-
-	private static final int MARGIN= 5; // margin on all four sides
-	private static final int BARHEIGHT= 8; // height of bar
-	private static final int GAP= 10; // gap between bars
-	private static final int TGAP= 5; // gap between lines and labels
-
-	private static final boolean NO_SCALE= true; //
-
-	// if NO_SCALE is true the following values are used:
-	private static final double RATIO= 0.6; // fraction of width reserved for bar graph; needs tweaking
-	private static final int FROM_END= 20; // a break (//) is shown this far from end of bar
-	private static final int SLANT= 8; // slant of break
-	private static final int GAP2= 5; // width of break
-
-	private StringBuilder fAreaBuffer;
-
-	private static class BarItem {
-
-		String title;
-		double value;
-		String url;
-		String slowdownExpected;
-		boolean significant;
-
-		BarItem(String t, double[] stats, String u, String slow, boolean sig) {
-			this.title= t;
-			this.value= stats[0]==0 ? 0 : -stats[0] * 100;
-			this.url= u;
-			this.slowdownExpected= slow;
-			this.significant= sig;
-		}
-	}
-
-	private String fTitle;
-	private List<BarItem> fItems;
-
-	BarGraph(String title) {
-		this.fTitle= title;
-		this.fItems= new ArrayList<>();
-	}
-
-	public void addItem(String name, double[] stats, String url, String slow, boolean significant) {
-		this.fItems.add(new BarItem(name, stats, url, slow, significant));
-	}
-
-	public int getHeight() {
-		int n= this.fItems.size();
-		int textHeight= 16;
-		int titleHeight= 0;
-		if (this.fTitle != null)
-			titleHeight= textHeight + GAP;
-		return MARGIN + titleHeight + n * (GAP + BARHEIGHT) + GAP + textHeight + MARGIN;
-	}
-
-	public void paint(Display display, int width, int height, GC gc) {
-
-		NumberFormat nf= NumberFormat.getInstance();
-
-		BarItem[] bars= this.fItems.toArray(new BarItem[this.fItems.size()]);
-
-		// draw white background
-		Color bg= display.getSystemColor(SWT.COLOR_WHITE);
-		gc.setBackground(bg);
-		gc.fillRectangle(0, 0, width, height);
-
-		// determine the widths of the bar and the label areas
-		int w;
-		if (NO_SCALE) {
-			// we use a fixed width
-			w= (int) (RATIO * width);
-		} else {
-			// we calculate the max width
-			int maxNameLength= 0;
-			for (BarItem bar : bars) {
-				Point es= gc.stringExtent(bar.title);
-				maxNameLength= Math.max(maxNameLength, es.x);
-			}
-			w= width - maxNameLength - TGAP - 2 * MARGIN;
-		}
-
-		Color fg= display.getSystemColor(SWT.COLOR_BLACK);
-
-		int vstart= 0; // start rows here
-		if (this.fTitle != null) {
-			vstart= gc.stringExtent(this.fTitle).y + GAP;
-			gc.drawString(this.fTitle, MARGIN, MARGIN, true); // draw title left aligned
-		}
-
-		int center= MARGIN + w / 2;
-		int w2= w / 2 - gc.stringExtent("-999.9").x - TGAP; // reserve space //$NON-NLS-1$
-
-		// determine maximum of values
-		double max= 0.0;
-		for (BarItem bar2 : bars)
-			max= Math.max(max, Math.abs(bar2.value));
-
-		double d;
-		if (NO_SCALE) {
-			d= 25;
-			max= 125;
-		} else {
-			if (max > 400.0) {
-				d= 200;
-			} else if (max > 200.0) {
-				d= 100;
-			} else if (max > 100.0) {
-				d= 50;
-			} else if (max > 50) {
-				d= 25;
-			} else if (max > 25) {
-				d= 10;
-			} else if (max > 10) {
-				d= 5;
-			} else if (max > 5) {
-				d= 2.5;
-			} else {
-				d= 1.0;
-			}
-		}
-
-		// draw striped background
-		int y= MARGIN + vstart;
-		Color lightblue= new Color(display, 237, 243, 254);
-		gc.setBackground(lightblue);
-		for (int i= 0; i < bars.length; i++)
-			if (i % 2 == 0)
-				gc.fillRectangle(0, y + i * (BARHEIGHT + GAP), width, BARHEIGHT + GAP);
-
-		// draw grid
-		int yy= y + bars.length * (BARHEIGHT + GAP);
-		gc.drawLine(center, y, center, yy + TGAP);
-		Color grey= display.getSystemColor(SWT.COLOR_GRAY);
-		for (int i= 1; d * i < max; i++) {
-
-			double xx= d * i;
-			int x= (int) ((xx / max) * w2);
-
-			gc.setForeground(grey);
-			gc.drawLine(center - x, y, center - x, yy + TGAP);
-			gc.drawLine(center + x, y, center + x, yy + TGAP);
-
-			gc.setForeground(fg);
-
-			String s3= nf.format(-xx) + "%"; //$NON-NLS-1$
-			Point es3= gc.stringExtent(s3);
-			gc.drawString(s3, center - x - es3.x / 2, yy + TGAP, true);
-
-			String s4= nf.format(xx) + "%"; //$NON-NLS-1$
-			Point es4= gc.stringExtent(s4);
-			gc.drawString(s4, center + x - es4.x / 2, yy + TGAP, true);
-		}
-		gc.drawLine(0, yy, w, yy);
-
-		nf.setMaximumFractionDigits(1);
-
-		// link color
-		Color blue= display.getSystemColor(SWT.COLOR_BLUE);
-		// draw bars
-//		Color green= display.getSystemColor(SWT.COLOR_GREEN);
-//		Color red= display.getSystemColor(SWT.COLOR_RED);
-		Color green = new Color(display, 95, 191, 95);
-		Color red = new Color(display, 225, 50, 50);
-		Color gray= display.getSystemColor(SWT.COLOR_GRAY);
-		Color yellow= display.getSystemColor(SWT.COLOR_YELLOW);
-		Color white= display.getSystemColor(SWT.COLOR_WHITE);
-		for (int i= 0; i < bars.length; i++) {
-
-			BarItem bar= bars[i];
-			double delta = bar.value;
-			double orgDelta= delta;
-
-			boolean clamped= false;
-			if (NO_SCALE) {
-				if (delta > max) {
-					delta= max;
-					clamped= true;
-				} else if (delta < -max) {
-					delta= -max;
-					clamped= true;
-				}
-			}
-
-			int barLength= (int) (delta / max * w2);
-
-			if (delta < 0) {
-				if (bar.slowdownExpected != null) {
-					gc.setBackground(gray);
-				} else if (!bar.significant) {
-					gc.setBackground(yellow);
-				} else  {
-					gc.setBackground(red);
-				}
-			} else if (!bar.significant) {
-				gc.setBackground(yellow);
-			} else {
-				gc.setBackground(green);
-			}
-
-			if (barLength > 0) {
-				gc.fillRectangle(center, y + (GAP / 2), barLength, BARHEIGHT);
-				gc.drawRectangle(center, y + (GAP / 2), barLength, BARHEIGHT);
-			} else if (barLength < 0) {
-				gc.fillRectangle(center+barLength, y + (GAP / 2), -barLength, BARHEIGHT);
-				gc.drawRectangle(center+barLength, y + (GAP / 2), -barLength, BARHEIGHT);
-			}
-
-			if (clamped) {
-
-				int h2= (BARHEIGHT + GAP);
-				int x= center + barLength;
-				if (barLength > 0)
-					x-= FROM_END;
-				else
-					x+= FROM_END - GAP2 - SLANT;
-				int[] pts= new int[] { x, y + h2 - 1, x + SLANT, y + 1, x + SLANT + GAP2, y + 1, x + GAP2, y + h2 - 1};
-				if (i % 2 == 0)
-					gc.setBackground(lightblue);
-				else
-					gc.setBackground(white);
-				gc.fillPolygon(pts);
-				gc.drawLine(pts[0], pts[1], pts[2], pts[3]);
-				gc.drawLine(pts[4], pts[5], pts[6], pts[7]);
-			}
-
-			String label= nf.format(orgDelta);
-			Point labelExtent= gc.stringExtent(label);
-			int labelxpos= center + barLength;
-			int labelvpos= y + (BARHEIGHT + GAP - labelExtent.y) / 2;
-			if (orgDelta > 0.0) {
-				gc.drawString(label, labelxpos + TGAP, labelvpos, true);
-			} else {
-				gc.drawString(label, labelxpos - TGAP - labelExtent.x, labelvpos, true);
-			}
-
-			int x= MARGIN + w + TGAP;
-			String title= bar.title;
-			boolean hasURL= bar.url != null;
-			Color oldfg= gc.getForeground();
-			if (hasURL) {
-				gc.setForeground(blue);
-				Point e= gc.stringExtent(title);
-				gc.drawLine(x, labelvpos + e.y - 1, x + e.x, labelvpos + e.y - 1);
-			}
-			gc.drawString(title, x, labelvpos, true);
-			if (hasURL)
-				gc.setForeground(oldfg);
-
-			int y0= y;
-			y+= BARHEIGHT + GAP;
-
-			if (hasURL) {
-				if (this.fAreaBuffer == null)
-					this.fAreaBuffer= new StringBuilder();
-				this.fAreaBuffer.append("		echo '<area shape=\"RECT\" coords=\"0," + y0 + ',' + width + ',' + y + "\" href=\"" + bar.url + "\">';\n");
-			}
-		}
-
-	}
-
-	public String getAreas() {
-		if (this.fAreaBuffer != null) {
-			String s= this.fAreaBuffer.toString();
-			this.fAreaBuffer= null;
-			return s;
-		}
-		return null;
-	}
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/FingerPrint.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/FingerPrint.java
deleted file mode 100644
index 0777040..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/FingerPrint.java
+++ /dev/null
@@ -1,219 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.performance.ui;
-
-import java.io.BufferedOutputStream;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.io.PrintStream;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.ImageData;
-import org.eclipse.swt.graphics.ImageLoader;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.test.internal.performance.results.db.ConfigResults;
-import org.eclipse.test.internal.performance.results.db.DB_Results;
-import org.eclipse.test.internal.performance.results.db.PerformanceResults;
-import org.eclipse.test.internal.performance.results.db.ScenarioResults;
-
-/**
- * Class used to create scenario fingerprint.
- */
-public class FingerPrint {
-
-private static final int GRAPH_WIDTH = 1000;
-
-	String component;
-	PrintStream stream;
-	File outputDir;
-
-public FingerPrint(String name, PrintStream ps, File outputDir) {
-	if (!name.startsWith("global")) this.component = name;
-	this.stream = ps;
-	this.outputDir = outputDir;
-}
-
-/**
- * Create and save fingerprints as image and print their reference in the current stream.
- *
- * @param performanceResults The performance results used to print the fingerprints
- */
-public void print(final PerformanceResults performanceResults) {
-	String buildName = performanceResults.getName();
-
-	// Compute fingerprint output file name prefix
-	int currentUnderscoreIndex = buildName.indexOf('_');
-	if  (currentUnderscoreIndex != -1){
-		buildName = buildName.substring(0, currentUnderscoreIndex);
-	}
-	StringBuilder buffer = new StringBuilder("FP_");
-	if (this.component != null) {
-		buffer.append(this.component);
-		buffer.append('_');
-	}
-	buffer.append(buildName);
-	String filePrefix = buffer.toString();
-
-	// Print the legend
-	this.stream.print("The following fingerprints show results for the most representative tests of the ");
-	if (this.component == null) {
-		this.stream.print("current build.<br>\n");
-	} else {
-		this.stream.print(this.component);
-		this.stream.print(" component.<br>\n");
-	}
-	this.stream.print("<table border=\"0\">\n");
-	this.stream.print("<tr><td valign=\"top\">Select which kind of scale you want to use:</td>\n");
-	this.stream.print("<td valign=\"top\">\n");
-	this.stream.print("  <form>\n");
-	this.stream.print("    <select onChange=\"toggleFingerprints();\">\n");
-	this.stream.print("      <option>percentage</option>\n");
-	this.stream.print("      <option>time (linear)</option>\n");
-	this.stream.print("      <option>time (log)</option>\n");
-	this.stream.print("    </select>\n");
-	this.stream.print("  </form>\n");
-	this.stream.print("</td>\n");
-//	this.stream.print("<td valign=\"top\">\n");
-//	this.stream.print("<a href=\"help.html\"><img hspace=\"10\" border=\"0\" src=\""+Utils.LIGHT+"\" title=\"Some tips on fingerprints\"/></a>\n");
-//	this.stream.print("</td></tr></table>\n");
-	this.stream.print("</tr></table>\n");
-	this.stream.print("<img hspace=\"10\" border=\"0\" src=\""+Utils.LIGHT+"\"><a href=\""+Utils.HELP+"\">Help on fingerprints</a>\n");
-
-	// Print script to reset dropdown list selection
-	this.stream.print("<script type=\"text/javascript\">\n");
-	this.stream.print("	setFingerprintsType();\n");
-	this.stream.print("</script>\n");
-
-	// Create each fingerprint and save it
-	String[] configNames = performanceResults.getConfigNames(false/* not sorted*/);
-	String[] configBoxes = performanceResults.getConfigBoxes(false/* not sorted*/);
-	int length = configNames.length;
-	for (int c=0; c<length; c++) {
-		String configName  = configNames[c];
-		List<ScenarioResults> scenarios = performanceResults.getComponentSummaryScenarios(this.component, configName);
-		if (scenarios == null) continue;
-
-		// Create BarGraph
-		// TODO use FingerPrintGraph instead
-		BarGraph barGraph = null;
-		List<ConfigResults> allResults = new ArrayList<>();
-		String defaultDimName = DB_Results.getDefaultDimension().getName();
-		for (ScenarioResults scenarioResults : scenarios) {
-			ConfigResults configResults = scenarioResults.getConfigResults(configName);
-			if (configResults == null || !configResults.isValid()) continue;
-			double[] results = configResults.getCurrentBuildDeltaInfo();
-			double percent = -results[0] * 100.0;
-			if (results != null && Math.abs(percent) < 200) {
-				String name = scenarioResults.getLabel() + " (" + defaultDimName + ")";
-				if (!configResults.getCurrentBuildName().equals(buildName)) {
-					continue; // the test didn't run on last build, skip it
-				}
-				if (!configResults.isBaselined()) {
-					name = "*" + name + " (" + configResults.getBaselineBuildName() + ")";
-				}
-				if (barGraph == null) {
-					barGraph = new BarGraph(null);
-				}
-				barGraph.addItem(name,
-				    results,
-				    configName + "/" + scenarioResults.getFileName() + ".html",
-				    configResults.getCurrentBuildResults().getComment(),
-				    (Utils.confidenceLevel(results) & Utils.ERR) == 0);
-
-				// add results
-				allResults.add(configResults);
-			}
-		}
-		if (barGraph == null) continue;
-
-		// Save image file
-		String fileName = filePrefix + '.' + configName ;
-		File outputFile = new File(this.outputDir, fileName+".gif");
-		save(barGraph, outputFile);
-
-		// Print image file reference in stream
-		String boxName = configBoxes[c];
-		if (outputFile.exists()) {
-			String areas = barGraph.getAreas();
-			if (areas == null) areas = "";
-			this.stream.print("<h4>");
-			this.stream.print(boxName);
-			this.stream.print("</h4>\n");
-			this.stream.print("<?php\n");
-			this.stream.print("	$type=$_SERVER['QUERY_STRING'];\n");
-			this.stream.print("	if ($type==\"\" || $type==\"fp_type=0\") {\n");
-			this.stream.print("		echo '<img src=\"");
-			this.stream.print(fileName);
-			this.stream.print(".gif\" usemap=\"#");
-			this.stream.print(fileName);
-			this.stream.print("\" name=\"");
-			this.stream.print(configName);
-			this.stream.print("\">';\n");
-			this.stream.print("		echo '<map name=\"");
-			this.stream.print(fileName);
-			this.stream.print("\">';\n");
-			this.stream.print(areas);
-			this.stream.print("		echo '</map>';\n");
-			this.stream.print("	}\n");
-		} else {
-			this.stream.print("<br><br>There is no fingerprint for ");
-			this.stream.print(boxName);
-			this.stream.print("<br><br>\n");
-		}
-
-		// Create, paint and print the time bars graph
-		FingerPrintGraph graph = new FingerPrintGraph(this.outputDir, fileName, GRAPH_WIDTH, allResults);
-		graph.paint(this.stream);
-		this.stream.print("?>\n");
-	}
-}
-
-/*
- * Save the computed bar graph.
- */
-private void save(BarGraph barGraph, File outputFile) {
-
-	// Create and paint image
-	Display display = Display.getDefault();
-	int height = barGraph.getHeight();
-	Image image = new Image(display, GRAPH_WIDTH, height);
-	GC gc = new GC(image);
-	barGraph.paint(display, GRAPH_WIDTH, height, gc);
-	gc.dispose();
-
-	saveImage(outputFile, image);
-}
-
-/**
- * @param outputFile
- * @param image
- */
-private void saveImage(File outputFile, Image image) {
-	// Save image
-	ImageData data = Utils.downSample(image);
-	ImageLoader imageLoader = new ImageLoader();
-	imageLoader.data = new ImageData[] { data };
-
-	try (OutputStream out = new BufferedOutputStream(new FileOutputStream(outputFile))){
-		imageLoader.save(out, SWT.IMAGE_GIF);
-	} catch (IOException e) {
-		e.printStackTrace();
-	} finally {
-		image.dispose();
-	}
-}
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/FingerPrintGraph.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/FingerPrintGraph.java
deleted file mode 100644
index 5d71608..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/FingerPrintGraph.java
+++ /dev/null
@@ -1,670 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.performance.ui;
-
-import java.io.File;
-import java.io.PrintStream;
-import java.text.NumberFormat;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.FontData;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.ImageData;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.graphics.Resource;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.test.internal.performance.results.db.BuildResults;
-import org.eclipse.test.internal.performance.results.db.ConfigResults;
-import org.eclipse.test.internal.performance.results.db.DB_Results;
-import org.eclipse.test.internal.performance.results.db.ScenarioResults;
-import org.eclipse.test.internal.performance.results.utils.Util;
-
-/**
- * Abstract class to build graph with bars
- */
-public class FingerPrintGraph {
-
-	// Sizes
-	static final int MARGIN= 5; // margin on all four sides
-	static final int BAR_HEIGHT= 6; // height of bar
-	static final int GAP= 10; // gap between bars
-	static final int TGAP= 5; // gap between lines and labels
-	static final int LINE_HEIGHT = 2*BAR_HEIGHT + GAP;
-
-	// fraction of width reserved for bar graph
-	static final double RATIO= 0.6;
-
-	// Formatting constants
-	static final NumberFormat NUMBER_FORMAT;
-	static {
-		NUMBER_FORMAT = NumberFormat.getInstance();
-		NUMBER_FORMAT.setMaximumFractionDigits(1);
-	}
-
-	// Graphic constants
-	static final Display DEFAULT_DISPLAY = Display.getDefault();
-	static final Color BLACK= DEFAULT_DISPLAY.getSystemColor(SWT.COLOR_BLACK);
-	static final Color BLUE= DEFAULT_DISPLAY.getSystemColor(SWT.COLOR_BLUE);
-	static final Color GREEN= DEFAULT_DISPLAY.getSystemColor(SWT.COLOR_GREEN);
-	static final Color RED = DEFAULT_DISPLAY.getSystemColor(SWT.COLOR_RED);
-	static final Color GRAY = DEFAULT_DISPLAY.getSystemColor(SWT.COLOR_GRAY);
-	static final Color DARK_GRAY = DEFAULT_DISPLAY.getSystemColor(SWT.COLOR_DARK_GRAY);
-	static final Color YELLOW = DEFAULT_DISPLAY.getSystemColor(SWT.COLOR_YELLOW);
-	static final Color WHITE = DEFAULT_DISPLAY.getSystemColor(SWT.COLOR_WHITE);
-
-	// Bar graph kinds
-	static final int NO_TIME = 0; // i.e. percentage
-	static final int TIME_LINEAR = 1;
-	static final int TIME_LOG = 2;
-	static final int[] SUPPORTED_GRAPHS = {
-//		NO_TIME,
-		TIME_LINEAR,
-		TIME_LOG,
-	};
-
-	// Graphic fields
-	GC gc;
-	Image image;
-	int imageWidth;
-	int imageHeight;
-	int graphWidth;
-	int graphHeight;
-	Map<String, Resource> resources = new HashMap<>();
-
-	// Data fields
-	int count = 0;
-	ConfigResults[] results = new ConfigResults[10];
-	BarGraphArea[] areas;
-
-	// Values
-	double maxValue = 0.0;
-	double minValue = Double.MAX_VALUE;
-
-	// File info
-	File outputDir;
-	String imageName;
-	private final String defaultDimName = DB_Results.getDefaultDimension().getName();
-
-	/*
-	 * Member class defining a bar graph area.
-	 * This area applies to a configuration results and is made of several zones.
-	 */
-	class BarGraphArea {
-		List<AreaZone> zones;
-		private ConfigResults configResults;
-
-		/*
-		 * Member class defining a zone inside a bar graph area.
-		 * Typically made of a rectangle and an associated text used as tooltip.
-		 */
-		class AreaZone {
-			Rectangle zone;
-			String title;
-
-			AreaZone(Rectangle zone, String tooltip) {
-	            this.zone = zone;
-	            this.title = tooltip;
-            }
-
-			void print(String url, PrintStream stream) {
-				stream.print("		echo '<area shape=\"RECT\"");
-				if (this.title != null) {
-					stream.print(" title=\""+this.title+"\"");
-				}
-				stream.print("coords=\"");
-				stream.print(this.zone.x);
-				stream.print(',');
-				stream.print(this.zone.y);
-				stream.print(',');
-				stream.print(this.zone.x+this.zone.width);
-				stream.print(',');
-				stream.print(this.zone.y+this.zone.height);
-				stream.print('"');
-				if (url != null) {
-					stream.print(" href=\"");
-					stream.print(url);
-					stream.print('"');
-				}
-				stream.print(">';\n");
-			}
-		}
-
-		 BarGraphArea(ConfigResults results) {
-			this.configResults = results;
-			this.zones = new ArrayList<>();
-        }
-
-		void print(PrintStream stream) {
-			String url = this.configResults.getName() + "/" + ((ScenarioResults) this.configResults.getParent()).getFileName() + ".html";
-			int size = this.zones.size();
-			for (int i=0; i<size; i++) {
-				AreaZone zone = this.zones.get(i);
-				zone.print(url, stream);
-			}
-		}
-
-		void addArea(Rectangle rec, String tooltip) {
-			AreaZone zone = new AreaZone(rec, tooltip);
-			this.zones.add(zone);
-		}
-
-	}
-
-
-FingerPrintGraph(File dir, String fileName, int width, List<ConfigResults> results) {
-    this.imageWidth = width;
-    this.count = results.size();
-    this.results = new ConfigResults[this.count];
-    results.toArray(this.results);
-    this.outputDir = dir;
-    this.imageName = fileName;
-}
-
-/**
- */
-void drawBars(int kind) {
-
-	// Get/Set graphical resources
-	Font italicFont = (Font) this.resources.get("italicFont");
-	if (italicFont == null) {
-		String fontDataName = this.gc.getFont().getFontData()[0].toString();
-		FontData fdItalic = new FontData(fontDataName);
-		fdItalic.setStyle(SWT.ITALIC);
-		italicFont = new Font(DEFAULT_DISPLAY, fdItalic);
-		this.resources.put("italicFont", italicFont);
-	}
-	Color blueref = (Color) this.resources.get("blueref");
-	if (blueref == null) {
-		blueref = new Color(DEFAULT_DISPLAY, 200, 200, 255);
-		this.resources.put("blueref", blueref);
-	}
-	Color lightyellow= (Color) this.resources.get("lightyellow");
-	if (lightyellow == null) {
-		lightyellow = new Color(DEFAULT_DISPLAY, 255, 255, 160);
-		this.resources.put("lightyellow", lightyellow);
-	}
-	Color darkyellow= (Color) this.resources.get("darkyellow");
-	if (darkyellow == null) {
-		darkyellow = new Color(DEFAULT_DISPLAY, 160, 160, 0);
-		this.resources.put("darkyellow", darkyellow);
-	}
-	Color okColor= (Color) this.resources.get("lightgreen");
-	if (okColor == null) {
-		okColor = new Color(DEFAULT_DISPLAY, 95, 191, 95);
-		this.resources.put("lightgreen", okColor);
-	}
-	Color failureColor = (Color) this.resources.get("lightred");
-	if (failureColor == null) {
-		failureColor = new Color(DEFAULT_DISPLAY, 220, 50, 50);
-		this.resources.put("lightred", failureColor);
-	}
-
-	// Build each scenario bar graph
-	this.areas = new BarGraphArea[this.count];
-	double max = kind == TIME_LOG ? Math.log(this.maxValue) : this.maxValue;
-	for (int i=0, y=MARGIN; i < this.count; i++, y+=LINE_HEIGHT) {
-
-		// get builds info
-		ConfigResults configResults = this.results[i];
-		this.areas[i] = new BarGraphArea(configResults);
-		BarGraphArea graphArea = this.areas[i];
-		BuildResults currentBuildResults = configResults.getCurrentBuildResults();
-		double currentValue = currentBuildResults.getValue();
-		double currentError = currentBuildResults.getError();
-		double error = configResults.getError();
-		boolean singleTest = Double.isNaN(error);
-		boolean isSignificant = singleTest || error < Utils.STANDARD_ERROR_THRESHOLD;
-		boolean isCommented = currentBuildResults.getComment() != null;
-		BuildResults baselineBuildResults = configResults.getBaselineBuildResults();
-		double baselineValue = baselineBuildResults.getValue();
-		double baselineError = baselineBuildResults.getError();
-
-		// draw baseline build bar
-		Color whiteref = (Color) this.resources.get("whiteref");
-		if (whiteref == null) {
-			whiteref = new Color(DEFAULT_DISPLAY, 240, 240, 248);
-			this.resources.put("whiteref", whiteref);
-		}
-		this.gc.setBackground(whiteref);
-		double baselineGraphValue = kind == TIME_LOG ? Math.log(baselineValue) : baselineValue;
-		int baselineBarLength= (int) (baselineGraphValue / max * this.graphWidth);
-		int baselineErrorLength= (int) (baselineError / max * this.graphWidth / 2);
-		int labelxpos = MARGIN + baselineBarLength;
-		if (kind == TIME_LOG || baselineErrorLength <= 1) {
-			this.gc.fillRectangle(MARGIN, y + (GAP/2), baselineBarLength, BAR_HEIGHT);
-			Rectangle rec = new Rectangle(MARGIN, y + (GAP/2), baselineBarLength, BAR_HEIGHT);
-			this.gc.drawRectangle(rec);
-			graphArea.addArea(rec, "Time for baseline build "+baselineBuildResults.getName()+": "+Util.timeString((long)baselineValue));
-		} else {
-			int wr = baselineBarLength - baselineErrorLength;
-			Rectangle recValue = new Rectangle(MARGIN, y + (GAP/2), wr, BAR_HEIGHT);
-			this.gc.fillRectangle(recValue);
-			this.gc.setBackground(YELLOW);
-			Rectangle recError = new Rectangle(MARGIN+wr, y + (GAP/2), baselineErrorLength*2, BAR_HEIGHT);
-			this.gc.fillRectangle(recError);
-			Rectangle rec = new Rectangle(MARGIN, y + (GAP/2), baselineBarLength+baselineErrorLength, BAR_HEIGHT);
-			this.gc.drawRectangle(rec);
-			StringBuilder tooltip = new StringBuilder("Time for baseline build ");
-			tooltip.append(baselineBuildResults.getName());
-			tooltip.append(": ");
-			tooltip.append(Util.timeString((long)baselineValue));
-			tooltip.append(" [&#177;");
-			tooltip.append(Util.timeString((long)baselineError));
-			tooltip.append(']');
-			graphArea.addArea(rec, tooltip.toString());
-			labelxpos += baselineErrorLength;
-		}
-
-		// set current build bar color
-		if (baselineValue < currentValue) {
-			if (isCommented) {
-				this.gc.setBackground(GRAY);
-			} else  {
-				this.gc.setBackground(failureColor);
-			}
-		} else {
-			this.gc.setBackground(okColor);
-		}
-
-		// draw current build bar
-		double currentGraphValue = kind == TIME_LOG ? Math.log(currentValue) : currentValue;
-		int currentBarLength= (int) (currentGraphValue / max * this.graphWidth);
-		int currentErrorLength= (int) (currentError / max * this.graphWidth / 2);
-		if (kind == TIME_LOG || currentErrorLength <= 1) {
-			this.gc.fillRectangle(MARGIN, y + (GAP/2) + BAR_HEIGHT, currentBarLength, BAR_HEIGHT);
-			Rectangle rec = new Rectangle(MARGIN, y + (GAP/2) + BAR_HEIGHT, currentBarLength, BAR_HEIGHT);
-			this.gc.drawRectangle(rec);
-			String tooltip = "Time for current build "+currentBuildResults.getName()+": "+Util.timeString((long)currentValue);
-			if (isCommented) {
-				tooltip += ".		" + currentBuildResults.getComment();
-			}
-			graphArea.addArea(rec, tooltip);
-			if (labelxpos < (MARGIN+currentBarLength)) {
-				labelxpos = MARGIN + currentBarLength;
-			}
-		} else {
-			int wr = currentBarLength - currentErrorLength;
-			Rectangle recValue = new Rectangle(MARGIN, y + (GAP/2) + BAR_HEIGHT, wr, BAR_HEIGHT);
-			this.gc.fillRectangle(recValue);
-			this.gc.setBackground(YELLOW);
-			Rectangle recError = new Rectangle(MARGIN+wr, y + (GAP/2) + BAR_HEIGHT, currentErrorLength*2, BAR_HEIGHT);
-			this.gc.fillRectangle(recError);
-			Rectangle rec = new Rectangle(MARGIN, y + (GAP/2) + BAR_HEIGHT, currentBarLength+currentErrorLength, BAR_HEIGHT);
-			this.gc.drawRectangle(rec);
-			StringBuilder tooltip = new StringBuilder("Time for current build ");
-			tooltip.append(currentBuildResults.getName());
-			tooltip.append(": ");
-			tooltip.append(Util.timeString((long)currentValue));
-			tooltip.append(" [&#177;");
-			tooltip.append(Util.timeString((long)currentError));
-			tooltip.append(']');
-			if (isCommented) {
-				tooltip.append(".		");
-				tooltip.append(currentBuildResults.getComment());
-			}
-			graphArea.addArea(rec, tooltip.toString());
-			if (labelxpos < (MARGIN+currentBarLength+currentErrorLength)) {
-				labelxpos = MARGIN + currentBarLength+currentErrorLength;
-			}
-		}
-
-		// set delta value style and color
-		boolean hasFailure = currentBuildResults.getFailure() != null;
-		if (hasFailure) {
-			if (isCommented) {
-				this.gc.setForeground(DARK_GRAY);
-			} else  {
-				this.gc.setForeground(RED);
-			}
-		} else {
-			this.gc.setForeground(BLACK);
-		}
-
-		// draw delta value
-		double delta = -configResults.getDelta();
-		String label = delta > 0 ? "+" : "";
-		label += NUMBER_FORMAT.format(delta*100) + "%";
-		Point labelExtent= this.gc.stringExtent(label);
-		int labelvpos= y + (LINE_HEIGHT - labelExtent.y) / 2;
-		this.gc.drawString(label, labelxpos+TGAP, labelvpos, true);
-		this.gc.setForeground(BLACK);
-		this.gc.setFont(null);
-		int titleStart = (int) (RATIO * this.imageWidth);
-		if (singleTest || !isSignificant) {
-			String deltaTooltip = null;
-			if (singleTest) {
-				deltaTooltip = "This test performed only one iteration; hence its reliability cannot be assessed";
-			} else if (!isSignificant) {
-				deltaTooltip = "This test has a bad reliability: error is "+NUMBER_FORMAT.format(error*100)+"% (> 3%)!";
-			}
-			Image warning = (Image) this.resources.get("warning");
-			int xi = labelxpos+TGAP+labelExtent.x;
-			this.gc.drawImage(warning, xi, labelvpos);
-			ImageData imageData = warning.getImageData();
-			// Set zones
-			// - first one is between end of bar and warning image beginning
-			Rectangle deltaZone = new Rectangle(labelxpos, labelvpos-2, xi-labelxpos, labelExtent.y+4);
-			graphArea.addArea(deltaZone, null);
-			// - second one is the warning image
-			Rectangle warningZone = new Rectangle(xi, labelvpos, imageData.width, imageData.height);
-			graphArea.addArea(warningZone, deltaTooltip);
-			// - last one is between end of the warning image and the scenario title beginning
-			int warningImageEnd = xi+imageData.width;
-			Rectangle emptyZone = new Rectangle(warningImageEnd, labelvpos, titleStart-warningImageEnd, imageData.height);
-			graphArea.addArea(emptyZone, deltaTooltip);
-		} else {
-			// No tooltip => delta zone is between end of bar and the scenario title beginning
-			Rectangle deltaZone = new Rectangle(labelxpos, labelvpos-2, titleStart-labelxpos, labelExtent.y+4);
-			graphArea.addArea(deltaZone, null);
-		}
-
-		// set title style
-		Color oldfg= this.gc.getForeground();
-		this.gc.setForeground(BLUE);
-
-		// draw scenario title
-		int x= titleStart;
-		ScenarioResults scenarioResults = (ScenarioResults) configResults.getParent();
-		String title = scenarioResults.getLabel() + " (" + this.defaultDimName + ")";
-		Point e= this.gc.stringExtent(title);
-		this.gc.drawLine(x, labelvpos + e.y - 1, x + e.x, labelvpos + e.y - 1);
-		this.gc.drawString(title, x, labelvpos, true);
-		this.gc.setForeground(oldfg);
-		this.gc.setFont(null);
-		Rectangle titleZone = new Rectangle(x, labelvpos, e.x, e.y);
-		graphArea.addArea(titleZone, null/*no tooltip*/);
-		if (!configResults.isBaselined()) {
-			Image warning = (Image) this.resources.get("warning");
-			this.gc.drawImage(warning, x+e.x, labelvpos);
-			ImageData imageData = warning.getImageData();
-			Rectangle warningZone = new Rectangle(x+e.x, labelvpos, imageData.width, imageData.height);
-			String titleTooltip =  "This test has no baseline result, hence use build "+configResults.getBaselineBuildName()+" for reference!";
-			graphArea.addArea(warningZone, titleTooltip);
-		}
-	}
-}
-
-void drawLinearScale() {
-
-	// Draw scale background
-	drawScaleBackground();
-
-	// Draw scale grid lines
-	int gridValue = 100;
-	int n = (int) (this.maxValue / gridValue);
-	while (n > 10) {
-		switch (gridValue) {
-			case 100:
-				gridValue = 200;
-				break;
-			case 200:
-				gridValue = 500;
-				break;
-			case 500:
-				gridValue = 1000;
-				break;
-			default:
-				gridValue += 1000;
-				break;
-		}
-		n = (int) (this.maxValue / gridValue);
-	}
-	int gridWidth = (int) (this.graphWidth * gridValue / this.maxValue);
-	int x = MARGIN;
-	long value = 0; // TODO use minValue instead
-	while (x < this.graphWidth) {
-
-		// draw line
-		this.gc.setForeground(GRAY);
-		if (x > 0) {
-			this.gc.setLineStyle(SWT.LINE_DOT);
-			this.gc.drawLine(x, MARGIN, x, this.graphHeight + TGAP);
-		}
-
-		// draw value
-		this.gc.setForeground(BLACK);
-		String val= Util.timeString(value);
-		Point point= this.gc.stringExtent(val);
-		this.gc.drawString(val, x - point.x / 2, this.graphHeight + TGAP, true);
-
-		// compute next grid position
-		x += gridWidth;
-		value += gridValue; // value is expressed in seconds
-	}
-	this.gc.setLineStyle(SWT.LINE_SOLID);
-	this.gc.drawLine(0, this.graphHeight, this.graphWidth, this.graphHeight);
-}
-
-void drawLogarithmScale() {
-
-	// Draw scale background
-	drawScaleBackground();
-
-	// Draw scale grid lines
-	double max = Math.log(this.maxValue);
-	int gridValue = 100;
-	int x = MARGIN;
-	long value = 0; // TODO use minValue instead
-	while (x < this.graphWidth) {
-
-		// draw line
-		this.gc.setForeground(GRAY);
-		if (x > MARGIN) {
-			this.gc.setLineStyle(SWT.LINE_DOT);
-			this.gc.drawLine(x, MARGIN, x, this.graphHeight + TGAP);
-		}
-
-		// draw value
-		this.gc.setForeground(BLACK);
-		String str = Util.timeString(value);
-		Point point= this.gc.stringExtent(str);
-		this.gc.drawString(str, x - point.x / 2, this.graphHeight + TGAP, true);
-
-		// compute next grid position
-		value += gridValue;
-		int v = (int) (value / 100);
-		int c = 1;
-		while (v > 10) {
-			v = v / 10;
-			c *= 10;
-		}
-		switch (v) {
-			case 3:
-				gridValue = 200*c;
-				break;
-			case 5:
-				gridValue = 500*c;
-				break;
-			case 10:
-				gridValue = 1000*c;
-				break;
-		}
-		x = MARGIN + (int) (this.graphWidth * Math.log(value) / max);
-	}
-	this.gc.setLineStyle(SWT.LINE_SOLID);
-	this.gc.drawLine(0, this.graphHeight, this.graphWidth, this.graphHeight);
-}
-
-/**
- * Draw the scale depending on the bar time graph kind.
- */
-void drawScale(int kind) {
-	switch (kind) {
-		case TIME_LINEAR:
-			drawLinearScale();
-			break;
-		case TIME_LOG:
-			drawLogarithmScale();
-			break;
-	}
-}
-
-private void drawScaleBackground() {
-
-	// Draw striped background
-	Color lightblue = (Color) this.resources.get("lightblue");
-	if (lightblue == null) {
-		lightblue = new Color(DEFAULT_DISPLAY, 237, 243, 254);
-		this.resources.put("lightblue", lightblue);
-	}
-	this.gc.setBackground(lightblue);
-	for (int i= 0; i<this.count; i++) {
-		if (i % 2 == 0) {
-	        this.gc.fillRectangle(0, MARGIN + i * LINE_HEIGHT, this.imageWidth, LINE_HEIGHT);
-        }
-	}
-
-	// Draw bottom vertical line
-	int yy= MARGIN + this.count * LINE_HEIGHT;
-	this.gc.drawLine(MARGIN, MARGIN, MARGIN, yy + TGAP);
-}
-
-String getImageName(int kind) {
-	switch (kind) {
-		case TIME_LINEAR:
-			return this.imageName+"_linear";
-		case TIME_LOG:
-			return this.imageName+"_log";
-	}
-	return this.imageName;
-}
-
-void paint(int kind) {
-
-	// Set image
-	this.graphHeight = MARGIN + this.count * LINE_HEIGHT;
-	this.imageHeight = this.graphHeight + GAP + 16 + MARGIN;
-	this.image = new Image(DEFAULT_DISPLAY, this.imageWidth, this.imageHeight);
-	this.gc = new GC(this.image);
-
-	// draw white background
-	this.gc.setBackground(WHITE);
-	this.gc.fillRectangle(0, 0, this.imageWidth, this.imageHeight);
-
-	// Set widths and heights
-	int width= (int) (RATIO * this.imageWidth); // width for results bar
-	this.graphWidth= width - this.gc.stringExtent("-999.9%").x - TGAP - MARGIN; // reserve space //$NON-NLS-1$
-
-	// Get warning image width
-	Image warning = (Image) this.resources.get("warning");
-	if (warning == null) {
-		warning = new Image(this.gc.getDevice(), new File(this.outputDir, Utils.WARNING_OBJ).toString());
-		this.resources.put("warning", warning);
-	}
-	this.graphWidth -= warning.getImageData().width;
-
-	// Set maximum of values
-	this.maxValue = 0.0;
-	this.minValue = Double.MAX_VALUE;
-	for (int i= 0; i<this.count; i++) {
-		BuildResults baselineBuildResults = this.results[i].getBaselineBuildResults();
-		double value = baselineBuildResults.getValue();
-		double error = baselineBuildResults.getError();
-		if (!Double.isNaN(error)) value += Math.abs(error);
-		if (value < 1000000 && value > this.maxValue) {
-			this.maxValue = value;
-		}
-		if (value < this.minValue) {
-			this.minValue = value;
-		}
-		BuildResults currentBuildResults = this.results[i].getCurrentBuildResults();
-		value = currentBuildResults.getValue();
-		error = currentBuildResults.getError();
-		if (!Double.isNaN(error)) value += Math.abs(error);
-		if (value < 1000000 && value > this.maxValue) {
-			this.maxValue = value;
-		}
-		if (value < this.minValue) {
-			this.minValue = value;
-		}
-	}
-	this.minValue = 0; // do not use minValue for now...
-
-	// Draw the scale
-	drawScale(kind);
-
-	// Draw the bars
-	drawBars(kind);
-
-	// Dispose
-	this.gc.dispose();
-}
-
-/**
- * Create, paint and save all supported bar graphs and add the corresponding
- * image and map references in the given stream.
- *
- * @param stream
- */
-final public void paint(PrintStream stream) {
-
-	// Paint supported graphs
-	int length = SUPPORTED_GRAPHS.length;
-	for (int i=0; i<length; i++) {
-		int kind = SUPPORTED_GRAPHS[i];
-		paint(kind);
-		save(kind, stream);
-	}
-
-	// Dispose created graphic resources
-	Iterator<Resource> iterator = this.resources.values().iterator();
-	while (iterator.hasNext()) {
-		Resource resource = iterator.next();
-		resource.dispose();
-	}
-	this.resources.clear();
-}
-
-void print(int kind, PrintStream stream) {
-	String imgName = getImageName(kind);
-	stream.print("	if ($type==\"fp_type="+kind+"\") {\n");
-	stream.print("		echo '<img src=\"");
-	stream.print(imgName);
-	stream.print(".gif\" usemap=\"#");
-	stream.print(imgName);
-	stream.print("\" name=\"");
-	stream.print(imgName.substring(imgName.lastIndexOf('.')));
-	stream.print("\">';\n");
-	stream.print("		echo '<map name=\"");
-	stream.print(imgName);
-	stream.print("\">';\n");
-	if (this.areas != null) {
-		for (int i=0; i<this.count; i++) {
-			this.areas[i].print(stream);
-		}
-	}
-	stream.print("		echo '</map>';\n");
-	stream.print("	}\n");
-}
-
-void save(int kind, PrintStream stream) {
-	File file = new File(this.outputDir, getImageName(kind)+".gif");
-	Utils.saveImage(file, this.image);
-	if (file.exists()) {
-		print(kind, stream);
-	} else {
-		stream.print("<br><br>There is no fingerprint for ");
-		stream.print(this.imageName);
-		stream.print(" (kind=");
-		stream.print(kind);
-		stream.print(")<br><br>\n");
-	}
-}
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/GenerateResults.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/GenerateResults.java
deleted file mode 100644
index 27b0855..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/GenerateResults.java
+++ /dev/null
@@ -1,1022 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.performance.ui;
-
-import java.io.BufferedOutputStream;
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.PrintStream;
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Date;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.SubMonitor;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.test.internal.performance.results.db.AbstractResults;
-import org.eclipse.test.internal.performance.results.db.ConfigResults;
-import org.eclipse.test.internal.performance.results.db.DB_Results;
-import org.eclipse.test.internal.performance.results.db.PerformanceResults;
-import org.eclipse.test.internal.performance.results.db.ScenarioResults;
-import org.eclipse.test.internal.performance.results.utils.Util;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.FrameworkUtil;
-
-/**
- * Main class to generate performance results of all scenarios matching a given pattern
- * in one HTML page per component.
- *
- * @see #printUsage() method to see a detailed parameters usage
- */
-public class GenerateResults {
-
-/**
- * Prefix of baseline builds displayed in data graphs.
- * This field is set using <b>-baseline.prefix</b> argument.
- * <p>
- * Example:
- *		<pre>-baseline.prefix 3.2_200606291905</pre>
- *
- * @see #currentBuildPrefixes
- */
-String baselinePrefix = null;
-
-/**
- * Root directory where all files are generated.
- * This field is set using <b>-output</b> argument.
- * <p>
- * Example:
- * 	<pre>-output /releng/results/I20070615-1200/performance</pre>
- */
-File outputDir;
-
-/**
- * Root directory where all data are locally stored to speed-up generation.
- * This field is set using <b>-dataDir</b> argument.
- * <p>
- * Example:
- * 	<pre>-dataDir /tmp</pre>
- */
-File dataDir;
-
-/**
- * Arrays of 2 strings which contains config information: name and description.
- * This field is set using <b>-config</b> and/or <b>-config.properties</b> arguments.
- * <p>
- * Example:
- * <pre>
- * 	-config eclipseperflnx3_R3.3,eclipseperfwin2_R3.3,eclipseperflnx2_R3.3,eclipseperfwin1_R3.3,eclipseperflnx1_R3.3
- * 	-config.properties
- * 		"eclipseperfwin1_R3.3,Win XP Sun 1.4.2_08 (2 GHz 512 MB);
- * 		eclipseperflnx1_R3.3,RHEL 3.0 Sun 1.4.2_08 (2 GHz 512 MB);
- * 		eclipseperfwin2_R3.3,Win XP Sun 1.4.2_08 (3 GHz 2 GB);
- * 		eclipseperflnx2_R3.3,RHEL 3.0 Sun 1.4.2_08 (3 GHz 2 GB);
- * 		eclipseperflnx3_R3.3,RHEL 4.0 Sun 1.4.2_08 (3 GHz 2.5 GB)"
- * </pre>
- * Note that:
- * <ul>
- * <li>if only <b>-config</b> is set, then configuration name is used for description </li>
- * <li>if only <b>-config.properties</b> is set, then all configurations defined with this argument are generated
- * <li>if both arguments are defined, then only configurations defined by <b>-config</b> argument are generated,
- * 		<b>-config.properties</b> argument is only used to set the configuration description.</li>
- * </ul>
- */
-String[][] configDescriptors;
-
-/**
- * Scenario pattern used to generate performance results.
- * This field is set using <b>-scenarioPattern</b> argument.
- * <p>
- * Note that this pattern uses SQL conventions, not RegEx ones,
- * which means that '%' is used to match several consecutive characters
- * and '_' to match a single character.
- * <p>
- * Example:
- * 	<pre>-scenario.pattern org.eclipse.%.test</pre>
- */
-String scenarioPattern;
-
-/**
- * A list of prefixes for builds displayed in data graphs.
- * This field is set using <b>-currentPrefix</b> argument.
- * <p>
- * Example:
- * 	<pre>-current.prefix N, I</pre>
- *
- * @see #baselinePrefix
- */
-List<String> currentBuildPrefixes;
-
-/**
- * A list of prefixes of builds to highlight in displayed data graphs.
- * This field is set using <b>-highlight</b> and/or <b>-highlight.latest</b> arguments.
- * <p>
- * Example:
- * 	<pre>-higlight 3_2</pre>
- */
-List<String> pointsOfInterest;
-
-/**
- * Tells whether only fingerprints has to be generated.
- * This field is set to <code>true</code> if <b>-fingerprints</b> argument is specified.
- * <p>
- * Default is <code>false</code> which means that scenario data
- * will also be generated.
- *
- * @see #genData
- * @see #genAll
- */
-boolean genFingerPrints = false;
-
-/**
- * Tells whether only fingerprints has to be generated.
- * This field is set to <code>true</code> if <b>-data</b> argument is specified.
- * <p>
- * Default is <code>false</code> which means that fingerprints
- * will also be generated.
- *
- * @see #genFingerPrints
- * @see #genAll
- */
-boolean genData = false;
-
-/**
- * Tells whether only fingerprints has to be generated.
- * This field is set to <code>false</code>
- * if <b>-fingerprints</b> or <b>-data</b> argument is specified.
- * <p>
- * Default is <code>true</code> which means that scenario data
- * will also be generated.
- *
- * @see #genData
- * @see #genFingerPrints
- */
-boolean genAll = true;
-
-/**
- * Tells whether information should be displayed in the console while generating.
- * This field is set to <code>true</code> if <b>-print</b> argument is specified.
- * <p>
- * Default is <code>false</code> which means that nothing is print during the generation.
- */
-PrintStream printStream = null;
-
-/**
- * Tells what should be the failure percentage threshold.
- * <p>
- * Default is 10%.
- */
-int failure_threshold = 10; // PerformanceTestPlugin.getDBLocation().startsWith("net://");
-
-PerformanceResults performanceResults;
-
-public GenerateResults() {
-}
-
-public GenerateResults(boolean fingerprints, File data) {
-	this.dataDir = data;
-	this.genFingerPrints = fingerprints;
-	this.genAll = !fingerprints;
-	this.printStream = System.out;
-}
-
-/*
- * Parse the command arguments and create corresponding performance
- * results object.
- */
-private void parse(String[] args) {
-	StringBuilder buffer = new StringBuilder("Parameters used to generate performance results (");
-	buffer.append(new SimpleDateFormat().format(new Date(System.currentTimeMillis())));
-	buffer.append("):\n");
-	int i = 0;
-	int argsLength = args.length;
-	if (argsLength == 0) {
-		printUsage();
-	}
-
-	String currentBuildId = null;
-	String baseline = null;
-	String jvm = null;
-	this.configDescriptors = null;
-
-	while (i < argsLength) {
-		String arg = args[i];
-		if (!arg.startsWith("-")) {
-		    System.err.println("ERROR: Unrecognized argument (arg) found, with value of >" + arg + "<");
-			i++;
-			continue;
-		}
-		if (argsLength == i + 1 && i != argsLength - 1) {
-			System.out.println("Missing value for last parameter");
-			printUsage();
-		}
-		if (arg.equals("-baseline")) {
-			baseline = args[i + 1];
-			if (baseline.startsWith("-")) {
-				System.out.println("Missing value for "+arg+" parameter");
-				printUsage();
-			}
-			buffer.append("	-baseline = "+baseline+'\n');
-			i++;
-			i++;
-			continue;
-		}
-		if (arg.equals("-baseline.prefix")) {
-			this.baselinePrefix = args[i + 1];
-			if (this.baselinePrefix.startsWith("-")) {
-				System.out.println("Missing value for "+arg+" parameter");
-				printUsage();
-			}
-			buffer.append("	").append(arg).append(" = ").append(this.baselinePrefix).append('\n');
-			i++;
-			i++;
-			continue;
-		}
-		if (arg.equals("-current.prefix")) {
-			String idPrefixList = args[i + 1];
-			if (idPrefixList.startsWith("-")) {
-				System.out.println("Missing value for "+arg+" parameter");
-				printUsage();
-			}
-			buffer.append("	").append(arg).append(" = ");
-			String[] ids = idPrefixList.split(",");
-			this.currentBuildPrefixes = new ArrayList<>();
-			for (String id : ids) {
-				this.currentBuildPrefixes.add(id);
-				buffer.append(id);
-			}
-			buffer.append('\n');
-			i++;
-			i++;
-			continue;
-		}
-		if (arg.equals("-highlight") || arg.equals("-highlight.latest")) {
-			if (args[i + 1].startsWith("-")) {
-				System.out.println("Missing value for "+arg+" parameter");
-				printUsage();
-			}
-			buffer.append("	").append(arg).append(" = ");
-			String[] ids = args[i + 1].split(",");
-			this.pointsOfInterest = new ArrayList<>();
-			for (int j = 0; j < ids.length; j++) {
-				this.pointsOfInterest.add(ids[j]);
-				buffer.append(ids[j]);
-				if (j < ids.length - 1) {
-				    buffer.append(",");
-				}
-			}
-			buffer.append('\n');
-			i++;
-			i++;
-			continue;
-		}
-		if (arg.equals("-current")) {
-			currentBuildId  = args[i + 1];
-			if (currentBuildId.startsWith("-")) {
-				System.out.println("Missing value for "+arg+" parameter");
-				printUsage();
-			}
-			buffer.append("	").append(arg).append(" = ").append(currentBuildId).append('\n');
-			i++;
-			i++;
-			continue;
-		}
-		if (arg.equals("-jvm")) {
-			jvm = args[i + 1];
-			if (jvm.startsWith("-")) {
-				System.out.println("Missing value for "+arg+" parameter");
-				printUsage();
-			}
-			buffer.append("	").append(arg).append(" = ").append(jvm).append('\n');
-			i++;
-			i++;
-			continue;
-		}
-		if (arg.equals("-output")) {
-			String dir = args[++i];
-			if (dir.startsWith("-")) {
-				System.out.println("Missing value for "+arg+" parameter");
-				printUsage();
-			}
-			this.outputDir = new File(dir);
-			if (!this.outputDir.exists() && !this.outputDir.mkdirs()) {
-				System.err.println("Cannot create directory "+dir+" to write results in!");
-				throw new RuntimeException("Can not create directory " + dir);
-				//System.exit(2);
-			}
-			buffer.append("	").append(arg).append(" = ").append(dir).append('\n');
-			i++;
-			continue;
-		}
-		if (arg.equals("-dataDir")) {
-			String dir = args[++i];
-			if (dir.startsWith("-")) {
-				System.out.println("Missing value for "+arg+" parameter");
-				printUsage();
-			}
-			this.dataDir = new File(dir);
-			if (!this.dataDir.exists() && !this.dataDir.mkdirs()) {
-				System.err.println("Cannot create directory "+dir+" to save data locally!");
-				//System.exit(2);
-				throw new RuntimeException("Can not create directory " + dir);
-			}
-			buffer.append("	").append(arg).append(" = ").append(dir).append('\n');
-			i++;
-			continue;
-		}
-		if (arg.equals("-config")) {
-			String configs = args[i + 1];
-			if (configs.startsWith("-")) {
-				System.out.println("Missing value for "+arg+" parameter");
-				printUsage();
-			}
-			String[] names = configs.split(",");
-			int length = names.length;
-			buffer.append("	").append(arg).append(" = ");
-			for (int j=0; j<length; j++) {
-				if (j>0) buffer.append(',');
-				buffer.append(names[j]);
-			}
-			if (this.configDescriptors == null) {
-				this.configDescriptors = new String[length][2];
-				for (int j=0; j<length; j++) {
-					this.configDescriptors[j][0] = names[j];
-					this.configDescriptors[j][1] = names[j];
-				}
-			} else {
-				int confLength = this.configDescriptors[0].length;
-				int newLength = confLength;
-				mainLoop: for (int j=0; j<confLength; j++) {
-					for (int k=0; k<length; k++) {
-						if (this.configDescriptors[j][0].equals(names[k])) {
-							continue mainLoop;
-						}
-					}
-					this.configDescriptors[j][0] = null;
-					this.configDescriptors[j][1] = null;
-					newLength--;
-				}
-				if (newLength < confLength) {
-					String[][] newDescriptors = new String[newLength][2];
-					for (int j=0, c=0; j<newLength; j++) {
-						if (this.configDescriptors[c] != null) {
-							newDescriptors[j][0] = this.configDescriptors[c][0];
-							newDescriptors[j][1] = this.configDescriptors[c][1];
-						} else {
-							c++;
-						}
-					}
-					this.configDescriptors = newDescriptors;
-				}
-			}
-			buffer.append('\n');
-			i++;
-			i++;
-			continue;
-		}
-		if (arg.equals("-config.properties")) {
-			String configProperties = args[i + 1];
-			if (configProperties.startsWith("-")) {
-				System.out.println("Missing value for "+arg+" parameter");
-				printUsage();
-			}
-			if (this.configDescriptors == null) {
-				System.out.println("Missing -config parameter");
-				printUsage();
-			}
-			int length = this.configDescriptors.length;
-			StringTokenizer tokenizer = new StringTokenizer(configProperties, ";");
-			buffer.append('\t').append(arg).append(" = '").append(configProperties).append("' splitted in ").append(length).append(" configs:");
-			while (tokenizer.hasMoreTokens()) {
-				String labelDescriptor = tokenizer.nextToken();
-				String[] elements = labelDescriptor.trim().split(",");
-				for (int j=0; j<length; j++) {
-					if (elements[0].equals(this.configDescriptors[j][0])) {
-						this.configDescriptors[j][1] = elements[1];
-						buffer.append("\n\t\t+ ");
-						buffer.append(elements[0]);
-						buffer.append(" -> ");
-						buffer.append(elements[1]);
-					}
-				}
-			}
-			buffer.append('\n');
-			i++;
-			i++;
-			continue;
-		}
-		if (arg.equals("-scenario.filter") || arg.equals("-scenario.pattern")) {
-			this.scenarioPattern= args[i + 1];
-			if (this.scenarioPattern.startsWith("-")) {
-				System.out.println("Missing value for "+arg+" parameter");
-				printUsage();
-			}
-			buffer.append("	").append(arg).append(" = ").append(this.scenarioPattern).append('\n');
-			i++;
-			i++;
-			continue;
-		}
-		if (arg.equals("-fingerprints")) {
-			this.genFingerPrints = true;
-			this.genAll = false;
-			buffer.append("	").append(arg).append('\n');
-			i++;
-			continue;
-		}
-		if (arg.equals("-data")) {
-			this.genData = true;
-			this.genAll = false;
-			buffer.append("	").append(arg).append('\n');
-			i++;
-			continue;
-		}
-		if (arg.equals("-print")) {
-			this.printStream = System.out; // default is to print to console
-			buffer.append("	").append(arg);
-			i++;
-			String printFile = i==argsLength ? null : args[i];
-			if (printFile==null ||printFile.startsWith("-")) {
-				buffer.append(" (to the console)").append('\n');
-			} else {
-			    i++;
-				try {
-					this.printStream = new PrintStream(new BufferedOutputStream(new FileOutputStream(printFile)));
-				}
-				catch (FileNotFoundException fnfe) {
-					// use the console if the output file cannot be created
-				}
-				buffer.append(" (to file: ").append(printFile).append(")\n");
-			}
-			continue;
-		}
-		if (arg.equals("-failure.threshold")) {
-			String value = args[i + 1];
-			try {
-				this.failure_threshold = Integer.parseInt(value);
-				if (this.failure_threshold < 0) {
-					System.out.println("Value for "+arg+" parameter must be positive.");
-					printUsage();
-				}
-			}
-			catch (NumberFormatException nfe) {
-				System.out.println("Invalid value for "+arg+" parameter");
-				printUsage();
-			}
-			buffer.append("	").append(arg).append(" = ").append(value).append('\n');
-			i++;
-			i++;
-			continue;
-		}
-		// To get to hear mean "matched none".
-        System.err.println("ERROR: Unrecognized argument (arg) found, with value of >" + arg + "<");
-        i++;
-        continue;
-	}
-	if (this.printStream != null) {
-		this.printStream.print(buffer.toString());
-	}
-
-	// Stop if some mandatory parameters are missing
-	if (this.outputDir == null || this.configDescriptors == null || jvm == null) {
-		printUsage();
-	}
-
-	// Set performance results
-	setPerformanceResults(currentBuildId, baseline);
-}
-
-/*
- * Print component PHP file
- */
-private void printComponent(/*PerformanceResults performanceResults, */String component) throws FileNotFoundException {
-	if (this.printStream != null) this.printStream.print(".");
-	File outputFile = new File(this.outputDir, component + ".php");
-  try (PrintStream stream = new PrintStream(new BufferedOutputStream(new FileOutputStream(outputFile)))) {
-
-    // Print header
-    boolean isGlobal = component.startsWith("global");
-    if (isGlobal) {
-      File globalFile = new File(this.outputDir, "global.php");
-      try (PrintStream gStream = new PrintStream(new BufferedOutputStream(new FileOutputStream(globalFile)))) {
-        gStream.print(Utils.HTML_OPEN);
-        gStream.print("</head>\n");
-        gStream.print("<body>\n");
-        gStream.print("<?php\n");
-        gStream.print("	include(\"global_fp.php\");\n");
-        gStream.print("?>\n");
-        gStream.print("<table border=0 cellpadding=2 cellspacing=5 width=\"100%\">\n");
-        gStream.print("<tbody><tr> <td colspan=3 align=\"left\" bgcolor=\"#0080c0\" valign=\"top\"><b><font color=\"#ffffff\" face=\"Arial,Helvetica\">\n");
-        gStream.print("Detailed performance data grouped by scenario prefix</font></b></td></tr></tbody></table>\n");
-        gStream.print("<a href=\"org.eclipse.ant.php?\">org.eclipse.ant*</a><br>\n");
-        gStream.print("<a href=\"org.eclipse.compare.php?\">org.eclipse.compare*</a><br>\n");
-        gStream.print("<a href=\"org.eclipse.core.php?\">org.eclipse.core*</a><br>\n");
-        gStream.print("<a href=\"org.eclipse.jdt.core.php?\">org.eclipse.jdt.core*</a><br>\n");
-        gStream.print("<a href=\"org.eclipse.jdt.debug.php?\">org.eclipse.jdt.debug*</a><br>\n");
-        gStream.print("<a href=\"org.eclipse.jdt.text.php?\">org.eclipse.jdt.text*</a><br>\n");
-        gStream.print("<a href=\"org.eclipse.jdt.ui.php?\">org.eclipse.jdt.ui*</a><br>\n");
-        gStream.print("<a href=\"org.eclipse.jface.php?\">org.eclipse.jface*</a><br>\n");
-        gStream.print("<a href=\"org.eclipse.osgi.php?\">org.eclipse.osgi*</a><br>\n");
-        gStream.print("<a href=\"org.eclipse.pde.api.tools.php?\">org.eclipse.pde.api.tools*</a><br>\n");
-        gStream.print("<a href=\"org.eclipse.pde.ui.php?\">org.eclipse.pde.ui*</a><br>\n");
-        gStream.print("<a href=\"org.eclipse.swt.php?\">org.eclipse.swt*</a><br>\n");
-        gStream.print("<a href=\"org.eclipse.team.php?\">org.eclipse.team*</a><br>\n");
-        gStream.print("<a href=\"org.eclipse.ua.php?\">org.eclipse.ua*</a><br>\n");
-        gStream.print("<a href=\"org.eclipse.ui.php?\">org.eclipse.ui*</a><br><p><br><br>\n");
-        gStream.print("</body>\n");
-        gStream.print(Utils.HTML_CLOSE);
-      }
-    } else {
-      stream.print(Utils.HTML_OPEN);
-    }
-    stream.print("<link href=\"" + Utils.TOOLTIP_STYLE + "\" rel=\"stylesheet\" type=\"text/css\">\n");
-    stream.print("<script src=\"" + Utils.TOOLTIP_SCRIPT + "\"></script>\n");
-    stream.print("<script src=\"" + Utils.FINGERPRINT_SCRIPT + "\"></script>\n");
-    stream.print(Utils.HTML_DEFAULT_CSS);
-
-    // Print title
-    stream.print("<body>");
-    printComponentTitle(/* performanceResults, */component, isGlobal, stream);
-
-    // print the html representation of fingerprint for each config
-    Display display = Display.getDefault();
-    if (this.genFingerPrints || this.genAll) {
-      final FingerPrint fingerprint = new FingerPrint(component, stream, this.outputDir);
-      display.syncExec(() -> {
-        try {
-          fingerprint.print(GenerateResults.this.performanceResults);
-        } catch (Exception ex) {
-          ex.printStackTrace();
-        }
-      });
-    }
-    // FingerPrint fingerprint = new FingerPrint(component, stream, this.outputDir);
-    // fingerprint.print(performanceResults);
-
-    // print scenario status table
-    if (!isGlobal) {
-      // print the component scenario status table beneath the fingerprint
-      final ScenarioStatusTable sst = new ScenarioStatusTable(component, stream);
-      display.syncExec(() -> {
-        try {
-          sst.print(GenerateResults.this.performanceResults);
-        } catch (Exception ex) {
-          ex.printStackTrace();
-        }
-      });
-      // ScenarioStatusTable sst = new ScenarioStatusTable(component, stream);
-      // sst.print(performanceResults);
-    }
-
-    stream.print(Utils.HTML_CLOSE);
-  }
-}
-
-private void printComponentTitle(/*PerformanceResults performanceResults, */String component, boolean isGlobal, PrintStream stream) {
-	String baselineName = this.performanceResults.getBaselineName();
-	String currentName = this.performanceResults.getName();
-
-	// Print title line
-	stream.print("<h3>Performance of ");
-	if (!isGlobal) {
-		stream.print(component);
-		stream.print(": ");
-	}
-	stream.print(currentName);
-	stream.print(" relative to ");
-  int index = baselineName.indexOf('-');
-  if (index > 0) {
-    index = baselineName.lastIndexOf('-');
-    stream.print(baselineName.substring(0, index-1));
-  } else {
-    stream.print(baselineName);
-  }
-    stream.print("</h3>\n");
-
-	// Print reference to global results
-	if (!isGlobal) {
-		stream.print("<?php\n");
-		stream.print("	$type=$_SERVER['QUERY_STRING'];\n");
-		stream.print("	if ($type==\"\") {\n");
-		stream.print("		$type=\"fp_type=0\";\n");
-		stream.print("	}\n");
-		stream.print("	$href=\"<a href=\\\"performance.php?\";\n");
-		stream.print("	$href=$href . $type . \"\\\">Back to global results</a><br><br>\";\n");
-		stream.print("	echo $href;\n");
-		stream.print("?>\n");
-	}
-}
-
-/*
- * Print summary of coefficient of variation for each scenario of the given pattern
- * both for baseline and current builds.
- */
-private void printSummary(/*PerformanceResults performanceResults*/) {
-	long start = System.currentTimeMillis();
-	if (this.printStream != null) this.printStream.print("Print scenarios variations summary...");
-	File outputFile = new File(this.outputDir, "cvsummary.html");
-	try (PrintStream stream = new PrintStream(new BufferedOutputStream(new FileOutputStream(outputFile)))) {
-	  try {
-  		printSummaryPresentation(stream);
-  //		List scenarioNames = DB_Results.getScenarios();
-  //		int size = scenarioNames.size();
-  		String[] components = this.performanceResults.getComponents();
-  		int componentsLength = components.length;
-  		printSummaryColumnsTitle(stream/*, performanceResults*/);
-  		String[] configs = this.performanceResults.getConfigNames(true/*sorted*/);
-  		int configsLength = configs.length;
-  		for (int i=0; i<componentsLength; i++) {
-  			String componentName = components[i];
-  			List<AbstractResults> scenarioNames = this.performanceResults.getComponentScenarios(componentName);
-  			int size = scenarioNames.size();
-  			for (int s=0; s<size; s++) {
-  				String scenarioName = scenarioNames.get(s).getName();
-  				if (scenarioName == null) continue;
-  				ScenarioResults scenarioResults = this.performanceResults.getScenarioResults(scenarioName);
-  				if (scenarioResults != null) {
-  					stream.print("<tr>\n");
-  					for (int j=0; j<2; j++) {
-  						for (int c=0; c<configsLength; c++) {
-  							printSummaryScenarioLine(j, configs[c], scenarioResults, stream);
-  						}
-  					}
-  					stream.print("<td>");
-  					stream.print(scenarioName);
-  					stream.print("</td></tr>\n");
-  				}
-  			}
-  		}
-	  } finally {
-	    stream.print("</table></body></html>\n");
-    }
-	} catch (Exception e) {
-		e.printStackTrace();
-	}
-	if (this.printStream != null) this.printStream.println("done in "+(System.currentTimeMillis()-start)+"ms");
-}
-
-/*
- * Print summary presentation (eg. file start and text presenting the purpose of this file contents)..
- */
-private void printSummaryPresentation(PrintStream stream) {
-	stream.print(Utils.HTML_OPEN);
-	stream.print(Utils.HTML_DEFAULT_CSS);
-	stream.print("<title>Summary of Elapsed Process Variation Coefficients</title></head>\n");
-	stream.print("<body><h3>Summary of Elapsed Process Variation Coefficients</h3>\n");
-	stream.print("<p> This table provides a bird's eye view of variability in elapsed process times\n");
-	stream.print("for baseline and current build stream performance scenarios.");
-	stream.print(" This summary is provided to facilitate the identification of scenarios that should be examined due to high variability.");
-	stream.print("The variability for each scenario is expressed as a <a href=\"http://en.wikipedia.org/wiki/Coefficient_of_variation\">coefficient\n");
-	stream.print("of variation</a> (CV). The CV is calculated by dividing the <b>standard deviation\n");
-	stream.print("of the elapse process time over builds</b> by the <b>average elapsed process\n");
-	stream.print("time over builds</b> and multiplying by 100.\n");
-	stream.print("</p><p>High CV values may be indicative of any of the following:<br></p>\n");
-	stream.print("<ol><li> an unstable performance test. </li>\n");
-	stream.print("<ul><li>may be evidenced by an erratic elapsed process line graph.<br><br></li></ul>\n");
-	stream.print("<li>performance regressions or improvements at some time in the course of builds.</li>\n");
-	stream.print("<ul><li>may be evidenced by plateaus in elapsed process line graphs.<br><br></li></ul>\n");
-	stream.print("<li>unstable testing hardware.\n");
-	stream.print("<ul><li>consistent higher CV values for one test configuration as compared to others across");
-	stream.print(" scenarios may be related to hardward problems.</li></ul></li></ol>\n");
-	stream.print("<p> Scenarios are listed in alphabetical order in the far right column. A scenario's\n");
-	stream.print("variation coefficients (CVs) are in columns to the left for baseline and current\n");
-	stream.print("build streams for each test configuration. Scenarios with CVs > 10% are highlighted\n");
-	stream.print("in yellow (10%<CV>&lt;CV<20%) and orange(CV>20%). </p>\n");
-	stream.print("<p> Each CV value links to the scenario's detailed results to allow viewers to\n");
-	stream.print("investigate the variability.</p>\n");
-}
-
-/*
- * Print columns titles of the summary table.
- */
-private void printSummaryColumnsTitle(PrintStream stream/*, PerformanceResults performanceResults*/) {
-	String[] configBoxes = this.performanceResults.getConfigBoxes(true/*sorted*/);
-	int length = configBoxes.length;
-	stream.print("<table border=\"1\"><tr><td colspan=\"");
-	stream.print(length);
-	stream.print("\"><b>Baseline CVs</b></td><td colspan=\"");
-	stream.print(length);
-	stream.print("\"><b>Current Build Stream CVs</b></td><td rowspan=\"2\"><b>Scenario Name</b></td></tr>\n");
-	stream.print("<tr>");
-	for (int n=0; n<2; n++) {
-		for (int c=0; c<length; c++) {
-			stream.print("<td>");
-			stream.print(configBoxes[c]);
-			stream.print("</td>");
-		}
-	}
-	stream.print("</tr>\n");
-}
-
-/*
- * Print a scenario line in the summary table.
- */
-private void printSummaryScenarioLine(int i, String config, ScenarioResults scenarioResults, PrintStream stream) {
-	ConfigResults configResults = scenarioResults.getConfigResults(config);
-	if (configResults == null || !configResults.isValid()) {
-		stream.print("<td>n/a</td>");
-		return;
-	}
-	String url = config + "/" + scenarioResults.getFileName()+".html";
-	double[] stats = null;
-	if (i==0) { // baseline results
-		List<String> baselinePrefixes;
-		if (this.baselinePrefix == null) {
-			baselinePrefixes = Util.BASELINE_BUILD_PREFIXES;
-		} else {
-			baselinePrefixes = new ArrayList<>();
-			baselinePrefixes.add(this.baselinePrefix);
-		}
-		stats = configResults.getStatistics(baselinePrefixes);
-	} else {
-		stats = configResults.getStatistics(this.currentBuildPrefixes);
-	}
-	double variation = stats[3];
-	if (variation > 0.1 && variation < 0.2) {
-		stream.print("<td bgcolor=\"yellow\">");
-	} else if (variation >= 0.2) {
-		stream.print("<td bgcolor=\"FF9900\">");
-	} else {
-		stream.print("<td>");
-	}
-	stream.print("<a href=\"");
-	stream.print(url);
-	stream.print("\"/>");
-	stream.print(Util.PERCENTAGE_FORMAT.format(variation));
-	stream.print("</a></td>");
-}
-
-/*
- * Print usage in case one of the argument of the line was incorrect.
- * Note that calling this method ends the program run due to final System.exit()
- */
-private void printUsage() {
-	System.out.println(
-		"Usage:\n\n" +
-		"-baseline\n" +
-		"	Build id against which to compare results.\n" +
-		"	Same as value specified for the \"build\" key in the eclipse.perf.config system property.\n\n" +
-
-		"[-baseline.prefix]\n" +
-		"	Optional.  Build id prefix used in baseline test builds and reruns.  Used to plot baseline historical data.\n" +
-		"	A common prefix used for the value of the \"build\" key in the eclipse.perf.config system property when rerunning baseline tests.\n\n" +
-
-		"-current\n" +
-		"	build id for which to generate results.  Compared to build id specified in -baseline parameter above.\n" +
-		"	Same as value specified for the \"build\" key in the eclipse.perf.config system property. \n\n" +
-
-		"[-current.prefix]\n" +
-		"	Optional.  Comma separated list of build id prefixes used in current build stream.\n" +
-		"	Used to plot current build stream historical data.  Defaults to \"N,I\".\n" +
-		"	Prefixes for values specified for the \"build\" key in the eclipse.perf.config system property. \n\n" +
-
-		"-jvm\n" +
-		"	Value specified in \"jvm\" key in eclipse.perf.config system property for current build.\n\n" +
-
-		"-config\n" +
-		"	Comma separated list of config names for which to generate results.\n" +
-		"	Same as values specified in \"config\" key in eclipse.perf.config system property.\n\n" +
-
-		"-output\n" +
-		"	Path to default output directory.\n\n" +
-
-		"[-config.properties]\n" +
-		"	Optional.  Used by scenario status table to provide the following:\n" +
-		"		alternate descriptions of config values to use in columns.\n" +
-		"	The value should be specified in the following format:\n" +
-		"	name1,description1;name2,description2;etc..\n\n" +
-
-		"[-highlight]\n" +
-		"	Optional.  Comma-separated list of build Id prefixes used to find most recent matching for each entry.\n" +
-		"	Result used to highlight points in line graphs.\n\n" +
-
-		"[-scenario.pattern]\n" +
-		"	Optional.  Scenario prefix pattern to query database.  If not specified,\n" +
-		"	default of % used in query.\n\n" +
-
-		"[-fingerprints]\n" +
-		"	Optional.  Use to generate fingerprints only.\n\n" +
-
-		"[-data]\n" +
-		"	Optional.  Generates table of scenario reference and current data with line graphs.\n\n" +
-
-		"[-print]\n" +
-		"	Optional.  Display output in the console while generating.\n" +
-
-		"[-nophp]\n" +
-		"	Optional.  Generate files for non-php server.\n" +
-
-		"[-failure.threshold]\n" +
-		"	Optional.  Set the failure percentage threshold (default is 10%).\n"
-	);
-
-	System.exit(1);
-}
-
-/**
- * Run the generation from a list of arguments.
- * Typically used to generate results from an application.
- */
-public IStatus run(String[] args) {
-	parse(args);
-	return generate(null);
-}
-
-/**
- * Run the generation.
- */
-public IStatus run(PerformanceResults results, String buildName, String baseline, File output, final IProgressMonitor monitor) {
-	this.performanceResults = results;
-	this.outputDir = output;
-	setDefaults(buildName, baseline);
-	return generate(monitor);
-}
-
-/*
- * Note that all necessary information to generate properly must be set before
- * calling this method
- */
-private IStatus generate(final IProgressMonitor monitor) {
-	long begin = System.currentTimeMillis();
-	int work = 1100;
-    int dataWork = 1000 * this.performanceResults.getConfigBoxes(false).length;
-	if (this.genAll || this.genData) {
-	    work += dataWork;
-    }
-	SubMonitor subMonitor = SubMonitor.convert(monitor, work);
-	subMonitor.setTaskName("Generate perf results for build "+this.performanceResults.getName());
-	try {
-
-		// Print whole scenarios summary
-		if (this.printStream != null) this.printStream.println();
-		printSummary(/*performanceResults*/);
-
-		// Copy images and scripts to output dir
-		Bundle bundle = FrameworkUtil.getBundle(GenerateResults.class);
-		// Copy bundle files
-		Utils.copyBundleFiles(bundle, "images", "*.gif", this.outputDir); // images
-		Utils.copyBundleFiles(bundle, "scripts", "*.js", this.outputDir); // java scripts
-		Utils.copyBundleFiles(bundle, "scripts", "*.css", this.outputDir); // styles
-		Utils.copyBundleFiles(bundle, "doc", "*.html", this.outputDir); // doc
-		Utils.copyBundleFiles(bundle, "doc/images", "*.png", this.outputDir); // images for doc
-
-		// Print HTML pages and all linked files
-		if (this.printStream != null) {
-			this.printStream.println("Print performance results HTML pages:");
-			this.printStream.print("	- components main page");
-		}
-		long start = System.currentTimeMillis();
-		subMonitor.subTask("Write fingerprints: global (0%)...");
-		printComponent(/*performanceResults, */"global_fp");
-		subMonitor.worked(100);
-		if (subMonitor.isCanceled()) throw new OperationCanceledException();
-		String[] components = this.performanceResults.getComponents();
-		int length = components.length;
-		int step = 1000 / length;
-		int progress = 0;
-		for (int i=0; i<length; i++) {
-			int percentage = (int) ((progress / ((double) length)) * 100);
-			subMonitor.subTask("Write fingerprints: "+components[i]+" ("+percentage+"%)...");
-			printComponent(/*performanceResults, */components[i]);
-			subMonitor.worked(step);
-			if (subMonitor.isCanceled()) throw new OperationCanceledException();
-			progress++;
-		}
-		if (this.printStream != null) {
-			String duration = Util.timeString(System.currentTimeMillis()-start);
-			this.printStream.println(" done in "+duration);
-		}
-
-		// Print the scenarios data
-		if (this.genData || this.genAll) {
-			start = System.currentTimeMillis();
-			if (this.printStream != null) this.printStream.println("	- all scenarios data:");
-			ScenarioData data = new ScenarioData(this.baselinePrefix, this.pointsOfInterest, this.currentBuildPrefixes, this.outputDir);
-			try {
-				data.print(this.performanceResults, this.printStream, subMonitor.newChild(dataWork));
-			} catch (Exception ex) {
-				ex.printStackTrace();
-			}
-			if (this.printStream != null) {
-				String duration = Util.timeString(System.currentTimeMillis()-start);
-				this.printStream.println("	=> done in "+duration);
-			}
-		}
-		if (this.printStream != null) {
-			long time = System.currentTimeMillis();
-			this.printStream.println("End of generation: "+new SimpleDateFormat("H:mm:ss").format(new Date(time)));
-			String duration = Util.timeString(System.currentTimeMillis()-begin);
-			this.printStream.println("=> done in "+duration);
-		}
-		return new Status(IStatus.OK, GenerateResults.class, "Everything is OK");
-	}
-	catch (OperationCanceledException oce) {
-		return new Status(IStatus.OK, GenerateResults.class, "Generation was cancelled!");
-	}
-	catch (Exception ex) {
-		return new Status(IStatus.ERROR, GenerateResults.class, "An unexpected exception occurred!", ex);
-	}
-	finally {
-		if (this.printStream != null) {
-			this.printStream.flush();
-			if (this.printStream != System.out) {
-				this.printStream.close();
-			}
-		}
-	}
-}
-
-private void setDefaults(String buildName, String baseline) {
-	if (buildName == null) {
-		buildName = this.performanceResults.getName();
-	}
-
-	// Set default output dir if not set
-	if (this.outputDir.getPath().indexOf(buildName) == -1) {
-		File dir = new File(this.outputDir, buildName);
-		if (dir.exists() || dir.mkdir()) {
-			this.outputDir = dir;
-			if (this.printStream != null) {
-				this.printStream.println("	+ changed output dir to: "+dir.getPath());
-			}
-		}
-	}
-
-	// must set our known "last build" (that we are interested in) before
-	// 'getAllBuildNames' is called, else it may set "name" to some later
-	// build we are not interested in analyzing yet.
-    this.performanceResults.setLastBuildName(buildName);
-
-	// Verify that build is known
-	String[] builds = this.performanceResults.getAllBuildNames();
-	if (builds == null || builds.length == 0) {
-		System.err.println("Cannot connect to database to generate results build '"+buildName+"'");
-		// TODO: changed a system.exit to this exception ... but, there might be better choices?
-		throw new IllegalStateException("Cannot connect to database to generate results build '"+buildName+"'");
-	}
-	if (Arrays.binarySearch(builds, buildName, Util.BUILD_DATE_COMPARATOR) < 0) {
-		throw new RuntimeException("No results in database for build '"+buildName+"'");
-	}
-	if (this.printStream != null) {
-		this.printStream.println();
-		this.printStream.flush();
-	}
-
-	// Init baseline prefix if not set
-	if (this.baselinePrefix == null) {
-		int index = baseline.lastIndexOf('-');
-		if (index > 0) {
-			this.baselinePrefix = baseline.substring(0, index);
-		} else {
-			this.baselinePrefix = DB_Results.getDbBaselinePrefix();
-		}
-	}
-
-	// Init current build prefixes if not set
-	if (this.currentBuildPrefixes == null) {
-		this.currentBuildPrefixes = new ArrayList<>();
-		char buildType = buildName.charAt(0);
-		if (buildType == 'M') {
-			this.currentBuildPrefixes.add("M");
-		} else if (buildType == 'N') {
-			this.currentBuildPrefixes.add("N");
-		} else if (buildType == 'I') {
-		this.currentBuildPrefixes.add("I");
-		} else {
-		    // TODO: may want to throw error here?
-		    this.currentBuildPrefixes.add("?");
-		}
-	}
-}
-
-private void setPerformanceResults(String buildName, String baselineName) {
-
-	// Set performance results
-	this.performanceResults = new PerformanceResults(buildName, baselineName, this.baselinePrefix, this.printStream);
-
-	// Set defaults
-	setDefaults(buildName, this.performanceResults.getBaselineName());
-
-	// Read performance results data
-	this.performanceResults.readAll(buildName, this.configDescriptors, this.scenarioPattern, this.dataDir, this.failure_threshold, null);
-}
-
-public void stop() {
-	// Do nothing
-}
-
-}
\ No newline at end of file
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/ImportDataMain.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/ImportDataMain.java
deleted file mode 100644
index 717cb0b..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/ImportDataMain.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2019 Paul Pazderski and others.
- *
- * This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which
- * accompanies this distribution, and is available at https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors: Paul Pazderski - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.performance.ui;
-
-import java.io.EOFException;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.ObjectInputStream;
-import java.nio.file.Files;
-import java.nio.file.Path;
-import java.nio.file.Paths;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.equinox.app.IApplication;
-import org.eclipse.equinox.app.IApplicationContext;
-import org.eclipse.test.internal.performance.data.Sample;
-import org.eclipse.test.internal.performance.db.Variations;
-
-/**
- * Helper application for Eclipse releng process. Instead of writing performance test data into a central database they are now
- * serialized into a file. This application take the part to deserialize the results from file and store them in a local database
- * for the following result generation step.
- * <p>
- * The data files to import are given as command line arguments and will be deleted upon successful import into database.
- * </p>
- */
-public class ImportDataMain implements IApplication {
-
-  @Override
-  public Object start(IApplicationContext context) throws Exception {
-    String[] args = (String[]) context.getArguments().get("application.args");
-    if (args.length > 0) {
-      System.out.println("\n\t= = Raw arguments ('application.args') passed to performance import application: = =");
-      for (String arg : args) {
-        System.out.println("\t\t>" + arg + "<");
-      }
-    }
-    IStatus result = run(args);
-    (result.isOK() ? System.out : System.err).println(result.getMessage());
-    if (result.getException() != null) {
-      result.getException().printStackTrace();
-    }
-    return result;
-  }
-
-  private IStatus run(String[] args) {
-    try {
-      // parse arguments
-      List<Path> inputFiles = new ArrayList<>();
-      boolean processOpts = true;
-      for (String arg : args) {
-        if (arg.equals("--")) {
-          processOpts = false;
-          continue;
-        }
-        if (processOpts && arg.startsWith("-")) {
-          System.err.println("ERROR: Unrecognized option found, with value of >" + arg + "<");
-          continue;
-        }
-
-        Path inputFile = Paths.get(arg);
-        if (Files.isReadable(inputFile)) {
-          inputFiles.add(inputFile);
-        } else {
-          System.err.println("ERROR: invalid input argument. Cannot read file: " + inputFile);
-        }
-      }
-
-      // check database
-      System.out.println("INFO: Connecting to database...");
-
-      // import data
-      IStatus exitStatus = new Status(IStatus.OK, ImportDataMain.class, "Nothing to import.");
-      System.out.println("INFO: Start importing " + inputFiles.size() + " performance data files.");
-      for (Path inputFile : inputFiles) {
-        exitStatus = importData(inputFile);
-        if (exitStatus.isOK()) {
-          Files.delete(inputFile);
-        }
-      }
-      return exitStatus;
-    } catch (Exception ex) {
-      return new Status(IStatus.ERROR, ImportDataMain.class, "Performance data import failed with exception!", ex);
-    }
-  }
-
-  @Override
-  public void stop() {
-    // Do nothing
-  }
-
-  /**
-   * Import performance test results from the given input file into database.
-   *
-   * @param inputFile
-   *          serialized performance data to import
-   * @throws ClassCastException
-   *           if the input file has not the expected content but unknown objects
-   * @throws IOException
-   *           for general problems on reading the input file
-   */
-  private IStatus importData(Path inputFile) throws IOException, ClassNotFoundException {
-    System.out.println("INFO: Reading data from " + inputFile);
-    // Note: the input file can contain multiple data entries
-    // (ID+Variation+Sample) but they are not written consecutive
-    // by one object stream but instead by a new object stream
-    // each time. That's why it's required to use one input stream
-    // but multiple object streams to read them.
-    try (InputStream is = Files.newInputStream(inputFile)) {
-      while (true) { // loop will end on input stream EOF
-        ObjectInputStream ois = new ObjectInputStream(is);
-        String scenarioId = null;
-        Variations variations = null;
-        Sample sample = null;
-        while (scenarioId == null || variations == null || sample == null) {
-          Object o = ois.readObject();
-          if (String.class.equals(o.getClass())) {
-            scenarioId = (String) o;
-          } else if (Variations.class.equals(o.getClass())) {
-            variations = (Variations) o;
-          } else if (Sample.class.equals(o.getClass())) {
-            sample = (Sample) o;
-          } else {
-            System.err.println("WARN: Input contains unexpected object of type " + o.getClass().getCanonicalName());
-          }
-        }
-
-        System.out.println("DEBUG: Store data for scenario " + scenarioId);
-      }
-    } catch (EOFException ex) {
-      // EOFException is the intended way to end the loop
-      return new Status(IStatus.OK, ImportDataMain.class, "Everything is OK");
-    }
-  }
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/LineGraph.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/LineGraph.java
deleted file mode 100644
index 6348195..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/LineGraph.java
+++ /dev/null
@@ -1,201 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.performance.ui;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.test.internal.performance.data.Dim;
-
-public class LineGraph {
-
-    StringBuilder fAreaBuffer;
-
-    private static class GraphItem {
-
-        String title;
-        String description=null;
-        double value;
-        Color color;
-        boolean displayDescription=false;
-
-        GraphItem(String title, String description,double value, Color color,boolean display) {
-        	this(title, description, value, color);
-        	this.displayDescription=display;
-        }
-
-        GraphItem(String title, String description, double value, Color color) {
-            this.title= title;
-            this.value= value;
-            this.color= color;
-            this.description= description;
-        }
-
-        Point getSize(GC g) {
-            Point e1= g.stringExtent(this.description);
-            Point e2= g.stringExtent(this.title);
-            return new Point(Math.max(e1.x, e2.x), e1.y+e2.y);
-        }
-    }
-
-    static final int PADDING= 15;
-
-
-    String fTitle;
-    List<GraphItem> fItems;
-    Dim fDimension;
-
-
-    public LineGraph(String title, Dim dim) {
-        this.fTitle= title;
-        this.fItems= new ArrayList<>();
-        this.fDimension= dim;
-    }
-
-    public void paint(Image im) {
-
-        Rectangle bounds= im.getBounds();
-
-        GC g= new GC(im);
-
-        Point ee= g.stringExtent(this.fTitle);
-        int titleHeight= ee.y;
-
-        double maxItem= getMaxItem();
-        double minItem= getMinItem();
-
-        int max= (int) (Math.ceil(maxItem * (maxItem < 0 ? 0.9 : 1.2)));
-        int min= (int) (Math.floor(minItem * (minItem < 0 ? 1.2 : 0.9)));
-
-        String smin= this.fDimension.getDisplayValue(min);
-        Point emin= g.stringExtent(smin);
-
-        String smax= this.fDimension.getDisplayValue(max);
-        Point emax= g.stringExtent(smax);
-
-        int labelWidth= Math.max(emin.x, emax.x) + 2;
-
-        int top= PADDING;
-        int bottom= bounds.height - titleHeight - PADDING;
-        int left= PADDING + labelWidth;
-
-        GraphItem lastItem= this.fItems.get(this.fItems.size()-1);
-        int right= bounds.width - lastItem.getSize(g).x - PADDING/2;
-
-        // draw the title
-        //g.drawString(fTitle, (bounds.width - titleWidth) / 2, titleHeight, true);
-
-        // draw the max and min values
-        g.drawString(smin, PADDING/2+labelWidth-emin.x, bottom-titleHeight, true);
-        g.drawString(smax, PADDING/2+labelWidth-emax.x, top, true);
-
-        // draw the vertical and horizontal lines
-        g.drawLine(left, top, left, bottom);
-        g.drawLine(left, bottom, right, bottom);
-
-        Color oldbg= g.getBackground();
-        Color oldfg= g.getForeground();
-
-        int n= this.fItems.size();
-        int xincrement= n > 1 ? (right-left) / (n-1) : 0;
-
-        int graduations= max - min;
-        if (graduations == 0)
-            graduations= 1;
-
-        int lastx= 0;
-        int lasty= 0;
-
-        int xposition= left;
-
-        for (int i= 0; i < n; i++) {
-            GraphItem thisItem= this.fItems.get(i);
-
-            int yposition= (int) (bottom - (((thisItem.value-min) * (bottom-top)) / graduations));
-
-            if (i > 0)	// don't draw for first segment
-                g.drawLine(lastx, lasty, xposition, yposition);
-
-            g.setBackground(thisItem.color);
-            g.setForeground(thisItem.color);
-            g.fillOval(xposition-2, yposition-2, 5, 5);
-
-            if (this.fAreaBuffer == null)
-                this.fAreaBuffer= new StringBuilder();
-
-            this.fAreaBuffer.append("\r<area shape=\"CIRCLE\" coords=\""+(xposition-2)+','+(yposition-2)+','+5+" alt=\""+ thisItem.title+": "+thisItem.description+"\""+ " title=\""+ thisItem.title+": "+thisItem.description+"\">");
-
-
-            int shift;
-            if (i > 0 && yposition < lasty)
-                shift= 3;	 // below dot
-            else
-                shift= -(2*titleHeight+3);	// above dot
-            if (thisItem.displayDescription){
-            	g.drawString(thisItem.title, xposition+2, yposition+shift, true);
-            	g.drawString(thisItem.description, xposition+2, yposition+shift+titleHeight, true);
-            }
-            g.setBackground(oldbg);
-            g.setForeground(oldfg);
-
-            lastx= xposition;
-            lasty= yposition;
-            xposition+= xincrement;
-        }
-
-        g.dispose();
-    }
-
-    public void addItem(String name, String description, double value, Color col) {
-    	addItem(name, description, value, col,false);
-    }
-
-    public void addItem(String name, String description, double value, Color col, boolean display) {
-        this.fItems.add(new GraphItem(name, description, value, col,display));
-    }
-
-    public double getMaxItem() {
-        double maxItem= 0;
-        for (int i= 0; i < this.fItems.size(); i++) {
-            GraphItem graphItem= this.fItems.get(i);
-            if (graphItem.value > maxItem)
-                maxItem= graphItem.value;
-        }
-        if (maxItem == 0)
-            return 1;
-        return maxItem;
-    }
-
-    public double getMinItem() {
-        double minItem= getMaxItem();
-        for (int i= 0; i < this.fItems.size(); i++) {
-            GraphItem graphItem= this.fItems.get(i);
-            if (graphItem.value < minItem)
-                minItem= graphItem.value;
-        }
-        if (minItem == 0)
-            return -1;
-        return minItem;
-    }
-    public String getAreas() {
-        if (this.fAreaBuffer != null) {
-            String s= this.fAreaBuffer.toString();
-            this.fAreaBuffer= null;
-            return s;
-        }
-        return null;
-    }
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/Main.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/Main.java
deleted file mode 100644
index db1bd2c..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/Main.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others. All rights reserved.
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.performance.ui;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.equinox.app.IApplication;
-import org.eclipse.equinox.app.IApplicationContext;
-import org.eclipse.test.internal.performance.results.db.DB_Results;
-
-/**
- * Main class to generate performance results of all scenarios matching a given
- * pattern in one HTML page per component.
- *
- * @see GenerateResults for the complete implementation
- */
-public class Main implements IApplication {
-
-    /**
-     * Generate the performance results for a specified build regarding to a
-     * specific reference. This action generates following HTML files:
-     * <ul>
-     * <li>A summary table to see the variations for all the concerned scenarios
-     * </li>
-     * <li>A global php file including global scenario fingerprints and links
-     * for all concerned components results php files</li>
-     * <li>A php file for each component including scenario fingerprints and
-     * status table with links to a scenario data file</li>
-     * <li>A data HTML file for each config of each scenario included in status
-     * table</li>
-     * </ul>
-     *
-     * @see org.eclipse.equinox.app.IApplication#start(org.eclipse.equinox.app.IApplicationContext)
-     */
-    @Override
-    public Object start(IApplicationContext context) throws Exception {
-        DB_Results.DB_CONNECTION = true; // force DB connection while running
-                                         // the application
-        GenerateResults generation = new GenerateResults();
-        String[] args = (String[]) context.getArguments().get("application.args");
-        if (args.length > 0) {
-            System.out.println("\n\t= = Raw arguments ('application.args') passed to performance ui application: = =");
-            for (int i = 0; i < args.length; i++) {
-                System.out.println("\t\t>" + args[i] + "<");
-            }
-        }
-        IStatus exitStatus = generation.run(args);
-        return exitStatus;
-    }
-
-    @Override
-    public void stop() {
-        // Do nothing
-    }
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/Messages.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/Messages.java
deleted file mode 100644
index 615d686..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/Messages.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2007 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.performance.ui;
-
-import java.text.MessageFormat;
-
-import org.eclipse.osgi.util.NLS;
-
-public class Messages extends NLS {
-
-	private static final String BUNDLE_NAME = "org.eclipse.test.performance.ui.messages";//$NON-NLS-1$
-
-	private Messages() {
-		// Do not instantiate
-	}
-
-	public static String standardError;
-
-	static {
-		NLS.initializeMessages(BUNDLE_NAME, Messages.class);
-	}
-	
-	/**
-	 * Bind the given message's substitution locations with the given string values.
-	 * 
-	 * @param message the message to be manipulated
-	 * @return the manipulated String
-	 */
-	public static String bind(String message) {
-		return bind(message, null);
-	}
-	
-	/**
-	 * Bind the given message's substitution locations with the given string values.
-	 * 
-	 * @param message the message to be manipulated
-	 * @param binding the object to be inserted into the message
-	 * @return the manipulated String
-	 */
-	public static String bind(String message, Object binding) {
-		return bind(message, new Object[] {binding});
-	}
-
-	/**
-	 * Bind the given message's substitution locations with the given string values.
-	 * 
-	 * @param message the message to be manipulated
-	 * @param binding1 An object to be inserted into the message
-	 * @param binding2 A second object to be inserted into the message
-	 * @return the manipulated String
-	 */
-	public static String bind(String message, Object binding1, Object binding2) {
-		return bind(message, new Object[] {binding1, binding2});
-	}
-
-	/**
-	 * Bind the given message's substitution locations with the given string values.
-	 * 
-	 * @param message the message to be manipulated
-	 * @param bindings An array of objects to be inserted into the message
-	 * @return the manipulated String
-	 */
-	public static String bind(String message, Object[] bindings) {
-		return MessageFormat.format(message, bindings);
-	}
-
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/RawDataTable.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/RawDataTable.java
deleted file mode 100644
index 11690b5..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/RawDataTable.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2020 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.performance.ui;
-
-import java.io.PrintStream;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.test.internal.performance.data.Dim;
-import org.eclipse.test.internal.performance.results.db.AbstractResults;
-import org.eclipse.test.internal.performance.results.db.BuildResults;
-import org.eclipse.test.internal.performance.results.db.ConfigResults;
-import org.eclipse.test.internal.performance.results.db.DB_Results;
-import org.eclipse.test.internal.performance.results.utils.Util;
-
-/**
- * Class used to fill details file of scenario builds data.
- * @see ScenarioData
- */
-public class RawDataTable {
-
-	private ConfigResults configResults;
-	private List<String> buildPrefixes;
-	private PrintStream stream;
-	private Dim[] dimensions = DB_Results.getResultsDimensions();
-	private boolean debug = false;
-
-private RawDataTable(ConfigResults results, PrintStream ps) {
-	this.configResults = results;
-	this.stream = ps;
-}
-
-public RawDataTable(ConfigResults results, List<String> prefixes, PrintStream ps) {
-	this(results, ps);
-	this.buildPrefixes = prefixes;
-}
-public RawDataTable(ConfigResults results, String baselinePrefix, PrintStream ps) {
-	this(results, ps);
-	this.buildPrefixes = new ArrayList<>();
-	this.buildPrefixes.add(baselinePrefix);
-}
-
-/**
- * Print all build data to the current stream.
- */
-public void print(){
-	this.stream.print("<table border=\"1\">");
-	printSummary();
-	printDetails();
-	this.stream.print("</table>\n");
-}
-
-/*
- * Print table columns headers.
- */
-private void printColumnHeaders() {
-	StringBuilder buffer = new StringBuilder();
-	int length = this.dimensions.length;
-	for (int i=0; i<length; i++) {
-		buffer.append("<td><b>");
-		buffer.append(this.dimensions[i].getName());
-		buffer.append("</b></td>");
-	}
-	this.stream.print(buffer.toString());
-}
-
-/*
- * Print all build results in the table.
- */
-private void printDetails() {
-	this.stream.print("<tr><td><b>Build ID</b></td>");
-	printColumnHeaders();
-	this.stream.print("</tr>\n");
-
-	List<AbstractResults> builds = this.configResults.getBuildsMatchingPrefixes(this.buildPrefixes);
-	Collections.reverse(builds);
-	int size = builds.size();
-	for (int i=0; i<size; i++) {
-		BuildResults buildResults = (BuildResults) builds.get(i);
-		this.stream.print("<tr><td>");
-		this.stream.print(buildResults.getName());
-		this.stream.print("</td>");
-		int dimLength = this.dimensions.length;
-		for (int d=0; d<dimLength; d++) {
-			Dim dimension = this.dimensions[d];
-			int dim_id = dimension.getId();
-			double value = buildResults.getValue(dim_id);
-			printDimTitle(dimension.getName());
-			String displayValue = dimension.getDisplayValue(value);
-			this.stream.print(displayValue);
-			if (this.debug) System.out.print("\t"+displayValue);
-			this.stream.print("</td>");
-		}
-		if (this.debug) System.out.println();
-		this.stream.print("</tr>\n");
-	}
-	if (this.debug) System.out.println("\n");
-}
-
-/*
- * Print summary on top of the table.
- */
-private void printSummary() {
-	this.stream.print("<tr><td><b>Stats</b></td>");
-	printColumnHeaders();
-	this.stream.print("</tr>\n");
-
-	int length = this.dimensions.length;
-	double[][] dimStats = new double[length][];
-	for (int i=0; i<length; i++) {
-		dimStats[i] = this.configResults.getStatistics(this.buildPrefixes, this.dimensions[i].getId());
-	}
-
-	this.stream.print("<tr><td>#BUILDS SAMPLED</td>");
-	for (int i=0; i<length; i++) {
-		String dimName = this.dimensions[i].getName();
-		printDimTitle(dimName);
-		this.stream.print((int)dimStats[i][0]);
-		this.stream.print("</td>");
-	}
-	this.stream.print("</tr>\n");
-	this.stream.print("<tr><td>MEAN</td>");
-	printRowDoubles(dimStats, 1);
-	this.stream.print("</tr>\n");
-	this.stream.print("<tr><td>STD DEV</td>");
-	printRowDoubles(dimStats, 2);
-	this.stream.print("</tr>\n");
-	this.stream.print("<tr><td>COEF. VAR</td>");
-	printRowDoubles(dimStats, 3);
-	this.stream.print("</tr>\n");
-
-	// Blank line
-	this.stream.print("<tr>");
-	for (int i=0; i<length+1;	i++){
-		this.stream.print("<td>&nbsp;</td>");
-	}
-	this.stream.print("</tr>\n");
-}
-
-/*
- * Print values in table row.
- */
-private void printRowDoubles(double[][] stats, int idx) {
-	int length = this.dimensions.length;
-	for (int i=0; i<length; i++) {
-		double value = stats[i][idx];
-		String dimName = this.dimensions[i].getName();
-		if (idx == 3) {
-			if (value > 0.1 && value < 0.2) {
-				this.stream.print("<td bgcolor=\"yellow\" title=\"");
-			} else if (value >= 0.2) {
-				this.stream.print("<td bgcolor=\"FF9900\" title=\"");
-			} else {
-				this.stream.print("<td title=\"");
-			}
-			this.stream.print(dimName);
-			this.stream.print("\">");
-			this.stream.print(Util.PERCENTAGE_FORMAT.format(value));
-			this.stream.print("</td>");
-		} else {
-			printDimTitle(dimName);
-			this.stream.print(this.dimensions[i].getDisplayValue(value));
-			this.stream.print("</td>");
-		}
-	}
-}
-
-/*
- * Print dim title inside value reference.
- * TODO (frederic) See if this title is really necessary
- */
-private void printDimTitle(String dimName) {
-    this.stream.print("<td title=\"");
-    this.stream.print(dimName);
-    this.stream.print("\">");
-}
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/ScenarioData.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/ScenarioData.java
deleted file mode 100644
index cd83aab..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/ScenarioData.java
+++ /dev/null
@@ -1,450 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2020 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.performance.ui;
-
-import java.io.BufferedOutputStream;
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.io.PrintStream;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.OperationCanceledException;
-import org.eclipse.core.runtime.SubMonitor;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.ImageData;
-import org.eclipse.swt.graphics.ImageLoader;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.test.internal.performance.data.Dim;
-import org.eclipse.test.internal.performance.results.db.AbstractResults;
-import org.eclipse.test.internal.performance.results.db.BuildResults;
-import org.eclipse.test.internal.performance.results.db.ComponentResults;
-import org.eclipse.test.internal.performance.results.db.ConfigResults;
-import org.eclipse.test.internal.performance.results.db.DB_Results;
-import org.eclipse.test.internal.performance.results.db.PerformanceResults;
-import org.eclipse.test.internal.performance.results.db.ScenarioResults;
-import org.eclipse.test.internal.performance.results.utils.Util;
-
-import junit.framework.AssertionFailedError;
-
-/**
- * Class used to print scenario all builds data.
- */
-public class ScenarioData {
-	private String baselinePrefix = null;
-	private List<String> pointsOfInterest;
-	private List<String> buildIDStreamPatterns;
-	private File rootDir;
-	private static final int GRAPH_WIDTH = 600;
-	private static final int GRAPH_HEIGHT = 200;
-	private Dim[] dimensions = DB_Results.getResultsDimensions();
-
-/**
- * Summary of results for a scenario for a given build compared to a
- * reference.
- *
- * @param baselinePrefix The prefix of the baseline build names
- * @param pointsOfInterest A list of buildId's to highlight on line graphs
- * @param buildIDPatterns
- * @param outputDir The directory root where the files are generated
- *
-*/
-public ScenarioData(String baselinePrefix, List<String> pointsOfInterest, List<String> buildIDPatterns, File outputDir) {
-	this.baselinePrefix = baselinePrefix;
-	this.pointsOfInterest = pointsOfInterest;
-	this.buildIDStreamPatterns = buildIDPatterns;
-	this.rootDir = outputDir;
-}
-
-/*
- * Create a file handle verifying that its name does not go over
- * the maximum authorized length.
- */
-private File createFile(File outputDir, String subdir, String name, String extension) {
-	File dir = outputDir;
-	if (subdir != null) {
-		dir = new File(outputDir, subdir);
-		if (!dir.exists()) {
-			dir.mkdir();
-		}
-	}
-	return new File(dir, name + '.' + extension);
-}
-
-/*
- * Returns a LineGraph object representing measurements for a scenario over builds.
- */
-private TimeLineGraph getLineGraph(ScenarioResults scenarioResults, ConfigResults configResults, Dim dim, List<BuildResults> highlightedPoints, List<String> currentBuildIdPrefixes) {
-	Display display = Display.getDefault();
-
-	Color black = display.getSystemColor(SWT.COLOR_BLACK);
-	Color magenta = display.getSystemColor(SWT.COLOR_MAGENTA);
-
-	String scenarioName = scenarioResults.getName();
-	TimeLineGraph graph = new TimeLineGraph(scenarioName + ": " + dim.getName(), dim);
-	String baseline = configResults.getBaselineBuildName();
-	String current = configResults.getCurrentBuildName();
-
-	final String defaultBaselinePrefix = DB_Results.getDbBaselinePrefix();
-	Iterator<AbstractResults> builds = configResults.getResults();
-	buildLoop: while (builds.hasNext()) {
-		BuildResults buildResults = (BuildResults) builds.next();
-		String buildID = buildResults.getName();
-		int underscoreIndex = buildID.indexOf('-');
-		String label = (underscoreIndex != -1 && buildID.equals(current)) ? buildID.substring(0, underscoreIndex) : buildID;
-		if (buildID.startsWith(defaultBaselinePrefix) && (underscoreIndex != -1)) {
-			label = defaultBaselinePrefix+buildID.charAt(defaultBaselinePrefix.length())+buildID.substring(underscoreIndex);
-		}
-
-		double value = buildResults.getValue(dim.getId());
-
-		if (buildID.equals(current)) {
-			Color color = black;
-			graph.addItem("main", label, dim.getDisplayValue(value), value, color, true, Utils.getDateFromBuildID(buildID), true);
-			continue;
-		}
-		if (highlightedPoints.contains(buildResults)) {
-			graph.addItem("main", label, dim.getDisplayValue(value), value, black, false, Utils.getDateFromBuildID(buildID, false), true);
-			continue;
-		}
-		for (String element : currentBuildIdPrefixes) {
-			if (buildID.startsWith(element.toString())) {
-				graph.addItem("main", buildID, dim.getDisplayValue(value), value, black, false, Utils.getDateFromBuildID(buildID), false);
-				continue buildLoop;
-			}
-		}
-		if (buildID.equals(baseline)) {
-			boolean drawBaseline = (this.baselinePrefix != null) ? false : true;
-			graph.addItem("reference", label, dim.getDisplayValue(value), value, magenta, true, Utils.getDateFromBuildID(buildID, true), true, drawBaseline);
-			continue;
-		}
-		if (this.baselinePrefix != null) {
-			if (buildID.startsWith(this.baselinePrefix) && !buildID.equals(baseline) && Utils.getDateFromBuildID(buildID, true) <= Utils.getDateFromBuildID(baseline, true)) {
-				graph.addItem("reference", label, dim.getDisplayValue(value), value, magenta, false, Utils.getDateFromBuildID(buildID, true), false);
-				continue;
-			}
-		}
-	}
-	return graph;
-}
-
-/**
- * Print the scenario all builds data from the given performance results.
- *
- * @param performanceResults The needed information to generate scenario data
- */
-public void print(PerformanceResults performanceResults, PrintStream printStream, final SubMonitor subMonitor) {
-	String[] configNames = performanceResults.getConfigNames(false/*not sorted*/);
-	String[] configBoxes = performanceResults.getConfigBoxes(false/*not sorted*/);
-	int length = configNames.length;
-	int size = performanceResults.size();
-	double total = length * size;
-	subMonitor.setWorkRemaining(length*size);
-	int progress = 0;
-	for (int i=0; i<length; i++) {
-		final String configName = configNames[i];
-		final String configBox = configBoxes[i];
-
-		// Manage monitor
-//		subMonitor.setTaskName("Generating data for "+configBox);
-		final String subTaskPrefix = "Generating data: "+configBox;
-		subMonitor.subTask(subTaskPrefix);
-		if (subMonitor.isCanceled()) throw new OperationCanceledException();
-
-		long start = System.currentTimeMillis();
-		if (printStream != null) printStream.print("		+ "+configName);
-		final File outputDir = new File(this.rootDir, configName);
-		outputDir.mkdir();
-		Iterator<AbstractResults> components = performanceResults.getResults();
-		while (components.hasNext()) {
-			if (printStream != null) printStream.print(".");
-			final ComponentResults componentResults = (ComponentResults) components.next();
-
-			// Manage monitor
-			int percentage = (int) ((progress++ / total) * 100);
-//			subMonitor.setTaskName("Generating data for "+configBox+": "+percentage+"%");
-//			subMonitor.subTask("Component "+componentResults.getName()+"...");
-			subMonitor.subTask(subTaskPrefix + " (" +componentResults.getName()+ ") "+ percentage + "%...");
-
-			Display display = Display.getDefault();
-		     display.syncExec(
-				() -> printSummary(configName, configBox, componentResults, outputDir, subMonitor)
-			);
-//			printSummary(configName, configBox, componentResults, outputDir, monitor);
-			printDetails(configName, configBoxes[i], componentResults, outputDir);
-
-			subMonitor.worked(1);
-			if (subMonitor.isCanceled()) throw new OperationCanceledException();
-		}
-		if (printStream != null) {
-			String duration = Util.timeString(System.currentTimeMillis()-start);
-			printStream.println(" done in "+duration);
-		}
-	}
-}
-
-/*
- * Print the summary file of the builds data.
- */
-void printSummary(String configName, String configBox, ComponentResults componentResults, File outputDir, SubMonitor subMonitor) {
-	Iterator<AbstractResults> scenarios = componentResults.getResults();
-	while (scenarios.hasNext()) {
-		List<BuildResults> highlightedPoints = new ArrayList<>();
-		ScenarioResults scenarioResults = (ScenarioResults) scenarios.next();
-		ConfigResults configResults = scenarioResults.getConfigResults(configName);
-		if (configResults == null || !configResults.isValid()) continue;
-
-		// get latest points of interest matching
-		if (this.pointsOfInterest != null) {
-			Iterator<String> buildPrefixes = this.pointsOfInterest.iterator();
-			while (buildPrefixes.hasNext()) {
-				String buildPrefix = buildPrefixes.next();
-				List<BuildResults> builds = configResults.getBuilds(buildPrefix);
-				if (buildPrefix.indexOf('*') <0 && buildPrefix.indexOf('?') < 0) {
-					if (builds.size() > 0) {
-						highlightedPoints.add(builds.get(builds.size()-1));
-					}
-				} else {
-					highlightedPoints.addAll(builds);
-				}
-			}
-		}
-
-		String scenarioFileName = scenarioResults.getFileName();
-		File outputFile = new File(outputDir, scenarioFileName+".html");
-		PrintStream stream = null;
-		try {
-			stream = new PrintStream(new BufferedOutputStream(new FileOutputStream(outputFile)));
-		} catch (FileNotFoundException e) {
-			System.err.println("can't create output file" + outputFile); //$NON-NLS-1$
-		}
-		if (stream == null) {
-			stream = System.out;
-		}
-		stream.print(Utils.HTML_OPEN);
-		stream.print(Utils.HTML_DEFAULT_CSS);
-
-		stream.print("<title>" + scenarioResults.getName() + "(" + configBox + ")" + "</title></head>\n"); //$NON-NLS-1$
-		stream.print("<h4>Scenario: " + scenarioResults.getName() + " (" + configBox + ")</h4><br>\n"); //$NON-NLS-1$ //$NON-NLS-2$
-
-		String failureMessage = Utils.failureMessage(configResults.getCurrentBuildDeltaInfo(), true);
- 		if (failureMessage != null){
-   			stream.print("<table><tr><td><b>"+failureMessage+"</td></tr></table>\n");
- 		}
-
- 		BuildResults currentBuildResults = configResults.getCurrentBuildResults();
- 		String comment = currentBuildResults.getComment();
-		if (comment != null) {
-			stream.print("<p><b>Note:</b><br>\n");
-			stream.print(comment + "</p>\n");
-		}
-
-		// Print link to raw data.
-		String rawDataFile = "raw/" + scenarioFileName+".html";
-		stream.print("<br><br><b><a href=\""+rawDataFile+"\">Raw data and Stats</a></b><br><br>\n");
-		stream.print("<b>Click measurement name to view line graph of measured values over builds.</b><br><br>\n");
-		if (subMonitor.isCanceled()) throw new OperationCanceledException();
-
-		try {
-			// Print build result table
-			stream.print("<table border=\"1\">\n"); //$NON-NLS-1$
-			stream.print("<tr><td><b>Build Id</b></td>"); //$NON-NLS-1$
-			int dimLength = this.dimensions.length;
-			for (int d=0; d<dimLength; d++) {
-				Dim dim = this.dimensions[d];
-				stream.print("<td><a href=\"#" + dim.getLabel() + "\"><b>" + dim.getName() + "</b></a></td>");
-			}
-			stream.print("</tr>\n");
-
-			// Write build lines
-			printTableLine(stream, currentBuildResults);
-			printTableLine(stream, configResults.getBaselineBuildResults());
-
-			// Write difference line
-			printDifferenceLine(stream, configResults);
-
-			// End of table
-			stream.print("</table>\n");
-			stream.print("*Delta values in red and green indicate degradation > 10% and improvement > 10%,respectively.<br><br>\n");
-			stream.print("<br><hr>\n\n");
-
-			// print text legend.
-			stream.print("Black points plot values measured in integration builds.<br>\n" + "Magenta points plot the repeated baseline measurement over time.<br>\n"
-					+ "Boxed points represent previous releases, milestone builds, current reference and current build.<br><br>\n"
-					+ "Hover over any point for build id and value.\n");
-
-			// print image maps of historical
-			for (int d=0; d<dimLength; d++) {
-				Dim dim = this.dimensions[d];
-				TimeLineGraph lineGraph = getLineGraph(scenarioResults, configResults, dim, highlightedPoints, this.buildIDStreamPatterns);
-				if (subMonitor.isCanceled()) throw new OperationCanceledException();
-
-				String dimShortName = dim.getLabel();
-				String imgFileName = scenarioFileName + "_" + dimShortName;
-				File imgFile = createFile(outputDir, "graphs", imgFileName, "gif");
-				saveGraph(lineGraph, imgFile);
-				stream.print("<br><a name=\"" + dimShortName + "\"></a>\n");
-				stream.print("<br><b>" + dim.getName() + "</b><br>\n");
-				stream.print(dim.getDescription() + "<br><br>\n");
-				stream.print("<img src=\"graphs/");
-				stream.print(imgFile.getName());
-				stream.print("\" usemap=\"#" + lineGraph.fTitle + "\">");
-				stream.print("<map name=\"" + lineGraph.fTitle + "\">");
-				stream.print(lineGraph.getAreas());
-				stream.print("</map>\n");
-				if (subMonitor.isCanceled()) throw new OperationCanceledException();
-			}
-			stream.print("<br><br></body>\n");
-			stream.print(Utils.HTML_CLOSE);
-			if (stream != System.out)
-				stream.close();
-
-		} catch (AssertionFailedError e) {
-			e.printStackTrace();
-			continue;
-		}
-	}
-}
-
-/*
- * Print the data for a build results.
- */
-private void printTableLine(PrintStream stream, BuildResults buildResults) {
-	stream.print("<tr><td>");
-	stream.print(buildResults.getName());
-	if (buildResults.isBaseline()) stream.print(" (reference)");
-	stream.print("</td>");
-	int dimLength = this.dimensions.length;
-	for (int d=0; d<dimLength; d++) {
-		Dim dim = this.dimensions[d];
-		int dim_id = dim.getId();
-		double stddev = buildResults.getDeviation(dim_id);
-		String displayValue = dim.getDisplayValue(buildResults.getValue(dim_id));
-		stream.print("<td>");
-		stream.print(displayValue);
-		if (stddev < 0) {
-			stream.print(" [n/a]\n");
-		} else if (stddev > 0) {
-			stream.print(" [");
-			stream.print(dim.getDisplayValue(stddev));
-			stream.print("]");
-		}
-		stream.print( "</td>");
-	}
-	stream.print("</tr>\n");
-}
-
-/*
- * Print the line showing the difference between current and baseline builds.
- */
-private void printDifferenceLine(PrintStream stream, ConfigResults configResults) {
-	stream.print("<tr><td>*Delta</td>");
-	int dimLength = this.dimensions.length;
-	for (int d=0; d<dimLength; d++) {
-		Dim currentDim = this.dimensions[d];
-		int dim_id = currentDim.getId();
-		BuildResults currentBuild = configResults.getCurrentBuildResults();
-		BuildResults baselineBuild = configResults.getBaselineBuildResults();
-
-		// Compute difference values
-		double baselineValue = baselineBuild.getValue(dim_id);
-		double diffValue = baselineValue - currentBuild.getValue(dim_id);
-		double diffPercentage =  baselineValue == 0 ? 0 : Math.round(diffValue / baselineValue * 1000) / 10.0;
-		String diffDisplayValue = currentDim.getDisplayValue(diffValue);
-
-		// Set colors
-		String fontColor = "";
-		if (diffPercentage > 10) {
-			fontColor = "#006600";	// green
-		}
-		if (diffPercentage < -10) {
-			fontColor = "#FF0000";	// red
-		}
-
-		// Print line
-		String percentage = (diffPercentage == 0) ? "" : "<br>" + diffPercentage + " %";
-		if (diffPercentage > 10 || diffPercentage < -10) {
-			stream.print("<td><FONT COLOR=\"" + fontColor + "\"><b>" + diffDisplayValue + percentage + "</b></FONT></td>");
-		} else {
-			stream.print("<td>" + diffDisplayValue + percentage + "</td>");
-		}
-	}
-	stream.print("</tr></font>");
-}
-
-/*
- * Print details file of the scenario builds data.
- */
-private void printDetails(String configName, String configBox, ComponentResults componentResults, File outputDir) {
-	Iterator<AbstractResults> scenarios = componentResults.getResults();
-	while (scenarios.hasNext()) {
-		ScenarioResults scenarioResults = (ScenarioResults) scenarios.next();
-		ConfigResults configResults = scenarioResults.getConfigResults(configName);
-		if (configResults == null || !configResults.isValid()) continue;
-		String scenarioName= scenarioResults.getName();
-		String scenarioFileName = scenarioResults.getFileName();
-		File outputFile = createFile(outputDir, "raw", scenarioFileName, "html");
-		PrintStream stream = null;
-		try {
-			stream = new PrintStream(new BufferedOutputStream(new FileOutputStream(outputFile)));
-		} catch (FileNotFoundException e) {
-			System.err.println("can't create output file" + outputFile); //$NON-NLS-1$
-		}
-		if (stream == null) stream = System.out;
-		RawDataTable currentResultsTable = new RawDataTable(configResults, this.buildIDStreamPatterns, stream);
-		RawDataTable baselineResultsTable = new RawDataTable(configResults, this.baselinePrefix, stream);
-		stream.print(Utils.HTML_OPEN);
-		stream.print(Utils.HTML_DEFAULT_CSS);
-		stream.print("<title>" + scenarioName + "(" + configBox + ")" + " - Details</title></head>\n"); //$NON-NLS-1$
-		stream.print("<h4>Scenario: " + scenarioName + " (" + configBox + ")</h4>\n"); //$NON-NLS-1$
-		stream.print("<a href=\"../"+scenarioFileName+".html\">VIEW GRAPH</a><br><br>\n"); //$NON-NLS-1$
-		stream.print("<table><td><b>Current Stream Test Runs</b></td><td><b>Baseline Test Runs</b></td></tr>\n");
-		stream.print("<tr valign=\"top\">\n");
-		stream.print("<td>");
-		currentResultsTable.print();
-		stream.print("</td>\n");
-		stream.print("<td>");
-		baselineResultsTable.print();
-		stream.print("</td>\n");
-		stream.print("</tr>\n");
-		stream.print("</table>\n");
-		stream.close();
-	}
-}
-
-/*
- * Prints a LineGraph object as a gif file.
- */
-private void saveGraph(LineGraph p, File outputFile) {
-	Image image = new Image(Display.getDefault(), GRAPH_WIDTH, GRAPH_HEIGHT);
-	p.paint(image);
-
-	/* Downscale to 8 bit depth palette to save to gif */
-	ImageData data = Utils.downSample(image);
-	ImageLoader il = new ImageLoader();
-	il.data = new ImageData[] { data };
-	try (OutputStream out = new BufferedOutputStream(new FileOutputStream(outputFile))){
-
-		il.save(out, SWT.IMAGE_GIF);
-
-	} catch (IOException e) {
-		e.printStackTrace();
-	} finally {
-		image.dispose();
-	}
-}
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/ScenarioStatusTable.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/ScenarioStatusTable.java
deleted file mode 100644
index 49c4868..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/ScenarioStatusTable.java
+++ /dev/null
@@ -1,234 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.performance.ui;
-
-import java.io.PrintStream;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.eclipse.test.internal.performance.results.db.AbstractResults;
-import org.eclipse.test.internal.performance.results.db.BuildResults;
-import org.eclipse.test.internal.performance.results.db.ConfigResults;
-import org.eclipse.test.internal.performance.results.db.PerformanceResults;
-import org.eclipse.test.internal.performance.results.db.ScenarioResults;
-
-/**
- * Class used to print a scenario status table.
- */
-public class ScenarioStatusTable {
-
-	private String component;
-	private PrintStream stream;
-	private int jsIdCount;
-
-/**
- * Creates an HTML table of red x/green check for a scenario for each
- * configuration.
- */
-public ScenarioStatusTable(String  name, PrintStream stream) {
-    this.component = name;
-    this.stream = stream;
-}
-
-/**
- * Prints the HTML representation of scenario status table into the given stream.
- */
-public void print(PerformanceResults performanceResults) {
-
-	String baselineName = performanceResults.getBaselineName();
-	List<AbstractResults> scenarios = performanceResults.getComponentScenarios(this.component);
-	int size = scenarios.size();
-
-	// Print titles
-	printTitle();
-	this.stream.print("<table border=\"1\">\n");
-	this.stream.print("<tr>\n");
-	this.stream.print("<td><h4>All ");
-	this.stream.print(computeSize(scenarios));
-	this.stream.print(" scenarios</h4></td>\n");
-	printColumnsTitle(performanceResults);
-
-	// Print one line per scenario results
-	this.jsIdCount = 0;
-	for (int i=0; i<size; i++) {
-		ScenarioResults scenarioResults = (ScenarioResults) scenarios.get(i);
-		if (!scenarioResults.isValid()) continue;
-		this.stream.print("<tr>\n");
-		this.stream.print("<td>");
-		boolean hasSummary = scenarioResults.hasSummary();
-		if (hasSummary) this.stream.print("<b>");
-		String scenarioBaseline = scenarioResults.getBaselineBuildName();
-		boolean hasBaseline = baselineName.equals(scenarioBaseline);
-		if (!hasBaseline) {
-			this.stream.print("*");
-			this.stream.print(scenarioResults.getShortName());
-			this.stream.print(" <small>(vs.&nbsp;");
-			this.stream.print(scenarioBaseline);
-			this.stream.print(")</small>");
-		} else {
-			this.stream.print(scenarioResults.getShortName());
-		}
-		if (hasSummary) this.stream.print("</b>");
-		this.stream.print("\n");
-		String[] configs = performanceResults.getConfigNames(true/*sort*/);
-		int length = configs.length;
-		for (int j=0; j<length; j++) {
-			printConfigStats(scenarioResults, configs[j]);
-		}
-	}
-	this.stream.print("</table>\n");
-}
-
-private int computeSize(List<AbstractResults> scenarios) {
-	int size = scenarios.size();
-	int n = 0;
-	for (int i=0; i<size; i++) {
-		ScenarioResults scenarioResults = (ScenarioResults) scenarios.get(i);
-		if (scenarioResults.isValid()) n++;
-	}
-	return n;
-}
-
-/*
- * Print the table columns title.
- */
-private void printColumnsTitle(PerformanceResults performanceResults) {
-	String[] configNames = performanceResults.getConfigNames(true/*sort*/);
-	String[] configBoxes = performanceResults.getConfigBoxes(true/*sort*/);
-	int length = configNames.length;
-	for (int i=0; i<length; i++) {
-		String columnTitle = configNames[i];
-		String boxName = configBoxes[i];
-		int idx = boxName.indexOf('(');
-		if (idx < 0) {
-			columnTitle = boxName;
-		} else {
-			// first line
-			StringTokenizer tokenizer = new StringTokenizer(boxName.substring(0, idx).trim(), " ");
-			StringBuilder buffer = new StringBuilder(tokenizer.nextToken());
-			while (tokenizer.hasMoreTokens()) {
-				buffer.append("&nbsp;");
-				buffer.append(tokenizer.nextToken());
-			}
-			buffer.append(' ');
-			// second line
-			tokenizer = new StringTokenizer(boxName.substring(idx).trim(), " ");
-			buffer.append(tokenizer.nextToken());
-			while (tokenizer.hasMoreTokens()) {
-				buffer.append("&nbsp;");
-				buffer.append(tokenizer.nextToken());
-			}
-			columnTitle = buffer.toString();
-		}
-		this.stream.print("<td><h5>");
-		this.stream.print(columnTitle);
-		this.stream.print("</h5>\n");
-	}
-}
-
-/*
- * Print the scenario statistics value for the given configuration.
- */
-private void printConfigStats(ScenarioResults scenarioResults, String config) {
-	ConfigResults configResults = scenarioResults.getConfigResults(config);
-	if (configResults == null || !configResults.isValid()) {
-		this.stream.print("<td>n/a</td>");
-		return;
-	}
-	BuildResults currentBuildResults = configResults.getCurrentBuildResults();
-	String failure = currentBuildResults.getFailure();
-	double[] deviation = configResults.getCurrentBuildDeltaInfo();
-	int confidence = Utils.confidenceLevel(deviation);
-	boolean hasFailure = failure != null;
-	String comment = currentBuildResults.getComment();
-	String image = Utils.getImage(confidence, hasFailure, comment != null);
-	this.stream.print("<td><a ");
-	if (!hasFailure|| (confidence & Utils.NAN) != 0 || (failure != null && failure.length() == 0)){
-		// write deviation with error in table when test pass
-		this.stream.print("href=\"");
-		this.stream.print(configResults.getName());
-		this.stream.print('/');
-		this.stream.print(scenarioResults.getFileName());
-		this.stream.print(".html\">\n");
-		this.stream.print("<img hspace=\"10\" border=\"0\" src=\"");
-		this.stream.print(image);
-		this.stream.print("\"/></a>\n");
-	} else {
-		// create message with tooltip text including deviation with error plus failure message
-		this.jsIdCount+=1;
-		this.stream.print("class=\"tooltipSource\" onMouseover=\"show_element('toolTip");
-		this.stream.print(this.jsIdCount);
-		this.stream.print("')\" onMouseout=\"hide_element('toolTip");
-		this.stream.print(this.jsIdCount);
-		this.stream.print("')\" \nhref=\"");
-		this.stream.print(configResults.getName());
-		this.stream.print('/');
-		this.stream.print(scenarioResults.getFileName());
-		this.stream.print(".html\">\n");
-		this.stream.print("<img hspace=\"10\" border=\"0\" src=\"");
-		this.stream.print(image);
-		this.stream.print("\"/>\n");
-		this.stream.print("<span class=\"hidden_tooltip\" id=\"toolTip");
-		this.stream.print(this.jsIdCount);
-		this.stream.print("\">");
-		this.stream.print(failure);
-		this.stream.print("</span></a>\n");
-	}
-	String result = Utils.failureMessage(deviation, false);
-	this.stream.print(result);
-	this.stream.print("\n");
-}
-
-/*
- * Print the status table explanationtitle.
- */
-private void printTitle() {
-	this.stream.print("<br><h4>Scenario Status</h4>\n");
-	this.stream.print("The following table gives a complete but compact view of performance results for the component.<br>\n");
-	this.stream.print("Each line of the table shows the results for one scenario on all machines.<br><br>\n");
-	this.stream.print("The name of the scenario is in <b>bold</b> when its results are also displayed in the fingerprints<br>\n");
-	this.stream.print("and starts with an '*' when the scenario has no results in the last baseline run.<br><br>\n");
-	this.stream.print("Here are information displayed for each test (ie. in each cell):\n");
-	this.stream.print("<ul>\n");
-	this.stream.print("<li>an icon showing whether the test fails or passes and whether it's reliable or not.<br>\n");
-	this.stream.print("The legend for this icon is:\n");
-	this.stream.print("<ul>\n");
-	this.stream.print("<li>Green (<img src=\"");
-	this.stream.print(Utils.OK_IMAGE);
-	this.stream.print("\">): mark a <b>successful result</b>, which means this test has neither significant performance regression nor significant standard error</li>");
-	this.stream.print("<li>Red (<img src=\"");
-	this.stream.print(Utils.FAIL_IMAGE);
-	this.stream.print("\">): mark a <b>failing result</b>, which means this test shows a significant performance regression (more than 10%)</li>\n");
-	this.stream.print("<li>Gray (<img src=\"");
-	this.stream.print(Utils.FAIL_IMAGE_EXPLAINED);
-	this.stream.print("\">): mark a <b>failing result</b> (see above) with a comment explaining this degradation.</li>\n");
-	this.stream.print("<li>Yellow (<img src=\"");
-	this.stream.print(Utils.FAIL_IMAGE_WARN);
-	this.stream.print("\"> or <img src=\"");
-	this.stream.print(Utils.OK_IMAGE_WARN);
-	this.stream.print("\">): mark a <b>failing or successful result</b> with a significant standard error (more than ");
-	this.stream.print(Utils.STANDARD_ERROR_THRESHOLD_STRING);
-	this.stream.print(")</li>\n");
-	this.stream.print("<li>Black (<img src=\"");
-	this.stream.print(Utils.UNKNOWN_IMAGE);
-	this.stream.print("\">): mark an <b>undefined result</b>, which means that deviation on this test is not a number (<code>NaN</code>) or is infinite (happens when the reference value is equals to 0!)</li>");
-	this.stream.print("<li>\"n/a\": mark a test for with <b>no</b> performance results</li>\n");
-	this.stream.print("</ul></li>\n");
-	this.stream.print("<li>the value of the deviation from the baseline as a percentage (ie. formula is: <code>(build_test_time - baseline_test_time) / baseline_test_time</code>)</li>\n");
-	this.stream.print("<li>the value of the standard error of this deviation as a percentage (ie. formula is: <code>sqrt(build_test_stddev^2 / N + baseline_test_stddev^2 / N) / baseline_test_time</code>)<br>\n");
-	this.stream.print("When test only has one measure, the standard error cannot be computed and is replaced with a '<font color=\"#CCCC00\">[n/a]</font>'.</li>\n");
-	this.stream.print("</ul>\n");
-	this.stream.print("<u>Hints</u>:<ul>\n");
-	this.stream.print("<li>fly over image of failing tests to see the complete error message</li>\n");
-	this.stream.print("<li>to look at the complete and detailed test results, click on its image</li>\n");
-	this.stream.print("</ul>\n");
-}
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/TimeLineGraph.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/TimeLineGraph.java
deleted file mode 100644
index 982826a..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/TimeLineGraph.java
+++ /dev/null
@@ -1,310 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.performance.ui;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Comparator;
-import java.util.Enumeration;
-import java.util.Hashtable;
-import java.util.List;
-
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.test.internal.performance.data.Dim;
-
-public class TimeLineGraph extends LineGraph{
-
-    Hashtable<String, List<TimeLineGraphItem>> fItemGroups;
-
-    public TimeLineGraph (String title, Dim dim) {
-        super(title, dim);
-        this.fItemGroups=new Hashtable<>();
-    }
-
-    @Override
-    public void paint(Image im) {
-
-        Rectangle bounds= im.getBounds();
-
-        GC g= new GC(im);
-
-        Point ee= g.stringExtent(this.fTitle);
-        int titleHeight= ee.y;
-
-        double maxItem= getMaxItem();
-        double minItem= getMinItem();
-
-        int max= (int) (Math.ceil(maxItem * (maxItem < 0 ? 0.8 : 1.2)));
-        int min= (int) (Math.floor(minItem * (minItem < 0 ? 1.2 : 0.8)));
-
-        String smin= this.fDimension.getDisplayValue(min);
-        Point emin= g.stringExtent(smin);
-
-        String smax= this.fDimension.getDisplayValue(max);
-        Point emax= g.stringExtent(smax);
-
-        int labelWidth= Math.max(emin.x, emax.x) + 2;
-
-        int top= PADDING;
-        int bottom= bounds.height - titleHeight - PADDING;
-        int left= PADDING + labelWidth;
-
-        //getMostRecent
-        TimeLineGraphItem lastItem= getMostRecent(this.fItemGroups);
-        int right=bounds.width - PADDING/2;
-        if (lastItem!=null)
-        	right= bounds.width - lastItem.getSize(g).x - PADDING/2;
-
-        // draw the max and min values
-        g.drawString(smin, PADDING/2+labelWidth-emin.x, bottom-titleHeight, true);
-        g.drawString(smax, PADDING/2+labelWidth-emax.x, top, true);
-        g.drawString("TIME (not drawn to scale)", (right-left)/3+PADDING+titleHeight,bottom-PADDING+(titleHeight*2), true);
-
-        // draw the vertical and horizontal lines
-        g.drawLine(left, top, left, bottom);
-        g.drawLine(left, bottom, right, bottom);
-
-        Color oldbg= g.getBackground();
-        Color oldfg= g.getForeground();
-
-        setCoordinates(right-left,left,bottom-top,max-min);
-
-        Enumeration<List<TimeLineGraphItem>> _enum=this.fItemGroups.elements();
-        Comparator<TimeLineGraphItem> comparator=new TimeLineGraphItem.GraphItemComparator();
-
-        while (_enum.hasMoreElements()) {
- 			List<TimeLineGraphItem> items = _enum.nextElement();
- 			TimeLineGraphItem[] fItemsArray=items.toArray(new TimeLineGraphItem[items.size()]);
-			Arrays.sort(fItemsArray,comparator);
-			int lastx = 0;
-			int lasty = 0;
-
-			int n = fItemsArray.length;
-
-			for (int i = 0; i < n; i++) {
-				TimeLineGraphItem thisItem = fItemsArray[i];
-
-				int yposition = thisItem.y;
-				int xposition = thisItem.x;
-				g.setLineWidth(1);
-
-				g.setBackground(thisItem.color);
-				g.setForeground(thisItem.color);
-
-				if (thisItem.drawAsBaseline){
-					g.setLineWidth(0);
-					g.drawLine(xposition, yposition,right,yposition);
-					g.drawLine(left,yposition,xposition, yposition);
-    		    }
-
-				if (i > 0) // don't draw for first segment
-					g.drawLine(lastx, lasty, xposition, yposition);
-
-				g.setBackground(thisItem.color);
-				g.setForeground(thisItem.color);
-			//	g.fillOval(xposition - 2, yposition - 2, 6, 6);
-				g.fillRectangle(xposition - 2, yposition - 2, 5, 5);
-
-				if (thisItem.isSpecial)
-					g.drawRectangle(xposition -4, yposition - 4, 8, 8);
-
-				if (this.fAreaBuffer == null)
-					this.fAreaBuffer = new StringBuilder();
-
-				this.fAreaBuffer.append("\r<area shape=\"circle\" coords=\""
-						+ (xposition - 2) + ',' + (yposition - 2) + ',' + 5
-						+ " alt=\"" + thisItem.title + ": "
-						+ thisItem.description + "\"" + " title=\""
-						+ thisItem.title + ": " + thisItem.description + "\">");
-
-				int shift;
-				if (i > 0 && yposition < lasty)
-					shift = 3; // below dot
-				else
-					shift = -(2 * titleHeight + 3); // above dot
-				if (thisItem.displayDescription) {
-					g.drawString(thisItem.title, xposition + 2, yposition
-							+ shift, true);
-					g.drawString(thisItem.description, xposition + 2, yposition
-							+ shift + titleHeight, true);
-				}
-				g.setBackground(oldbg);
-				g.setForeground(oldfg);
-
-				lastx = xposition;
-				lasty = yposition;
-			}
-		}
-
-        g.dispose();
-    }
-
-    public void addItem(String groupName,String name, String description, double value, Color col, boolean display, long timestamp) {
-    	addItem(groupName, name, description, value, col, display,	timestamp,false);
-    }
-
-    public void addItem(String groupName,String name, String description, double value, Color col, boolean display, long timestamp,boolean isSpecial) {
- 		addItem(groupName, name,description, value, col, display,
- 				timestamp,isSpecial,false);
-	}
-
-    public void addItem(String groupName,String name, String description, double value, Color col, boolean display, long timestamp,boolean isSpecial,boolean drawBaseline) {
-      	List<TimeLineGraphItem> items = this.fItemGroups.get(groupName);
-  		if (this.fItemGroups.get(groupName) == null) {
-  			items=new ArrayList<>();
-  			this.fItemGroups.put(groupName, items);
-  		}
-  		items.add(new TimeLineGraphItem(name, description, value, col, display,
-  				timestamp,isSpecial,drawBaseline));
-    }
-
-    @Override
-    public double getMaxItem() {
-    	Enumeration<List<TimeLineGraphItem>> _enum=this.fItemGroups.elements();
-        double maxItem= 0;
-    	while (_enum.hasMoreElements()) {
-			List<TimeLineGraphItem> items = _enum.nextElement();
-			for (int i = 0; i < items.size(); i++) {
-				TimeLineGraphItem graphItem = items.get(i);
-				if (graphItem.value > maxItem)
-					maxItem = graphItem.value;
-			}
-		}
-        if (maxItem == 0)
-            return 1;
-        return maxItem;
-    }
-
-    @Override
-    public double getMinItem() {
-       	Enumeration<List<TimeLineGraphItem>> _enum = this.fItemGroups.elements();
-		double minItem = getMaxItem();
-
-		while (_enum.hasMoreElements()) {
-			List<TimeLineGraphItem> items = _enum.nextElement();
-			for (int i = 0; i < items.size(); i++) {
-				TimeLineGraphItem graphItem = items.get(i);
-				if (graphItem.value < minItem)
-					minItem = graphItem.value;
-			}
-		}
-        if (minItem == 0)
-            return -1;
-        return minItem;
-    }
-
-    private TimeLineGraphItem getMostRecent(Hashtable<String, List<TimeLineGraphItem>> lineGraphGroups) {
-		Enumeration<List<TimeLineGraphItem>> _enum = lineGraphGroups.elements();
-		long mostRecentTimestamp = 0;
-		TimeLineGraphItem mostRecentItem = null;
-
-		while (_enum.hasMoreElements()) {
-			List<TimeLineGraphItem> items = _enum.nextElement();
-			for (int i = 0; i < items.size(); i++) {
-				if (items.size() == 1)
-					return items.get(i);
-				else {
-					TimeLineGraphItem graphItem = items.get(i);
-					if (graphItem.timestamp > mostRecentTimestamp) {
-						mostRecentTimestamp = graphItem.timestamp;
-						mostRecentItem = items.get(i);
-					}
-				}
-			}
-		}
-		return mostRecentItem;
-	}
-
-    private void setCoordinates(int width, int xOffset, int height, int yValueRange){
-
-        List<TimeLineGraphItem> mainGroup=this.fItemGroups.get("main");
-        List<TimeLineGraphItem> referenceGroup=this.fItemGroups.get("reference");
-
-        Comparator<TimeLineGraphItem> comparator=new TimeLineGraphItem.GraphItemComparator();
-
-        TimeLineGraphItem[] fItemsArray=mainGroup.toArray(new TimeLineGraphItem[mainGroup.size()]);
-		Arrays.sort(fItemsArray,comparator);
-
-		int n = mainGroup.size();
-		int xIncrement=width/n;
-		double max=getMaxItem()*1.2;
-//		double min=getMinItem()*0.8;
-
-		for (int i = 0; i < n; i++) {
-			TimeLineGraphItem thisItem = fItemsArray[i];
-			thisItem.setX(xOffset + (i * xIncrement));
-			thisItem.setY((int)(PADDING+((max-thisItem.value) * (height)/(yValueRange))));
-
-			}
-
-		if (referenceGroup==null)
-			return;
-
-		n = referenceGroup.size();
-		for (int i = 0; i < n; i++) {
-			 TimeLineGraphItem thisItem = referenceGroup.get(i);
-			 if (thisItem.timestamp==-1)
-				 thisItem.setX(xOffset + (i * (width/n)));
-			 else
-				 setRelativeXPosition(thisItem,mainGroup);
-
-			 thisItem.setY((int)(PADDING+((max-thisItem.value) * (height)/(yValueRange))));
-
-		}
-    }
-
-
-	private void setRelativeXPosition (TimeLineGraphItem thisItem, List<TimeLineGraphItem> items){
-			Comparator<TimeLineGraphItem> comparator=new TimeLineGraphItem.GraphItemComparator();
-			TimeLineGraphItem[] fItemsArray=items.toArray(new TimeLineGraphItem[items.size()]);
-			Arrays.sort(fItemsArray,comparator);
-
-			TimeLineGraphItem closestPrecedingItem=null;
-			long minimumTimeDiffPreceding=thisItem.timestamp;
-
-			TimeLineGraphItem closestFollowingItem=null;
-			long minimumTimeDiffFollowing=thisItem.timestamp;
-
-			for (int i=0;i<fItemsArray.length;i++){
-				TimeLineGraphItem anItem=fItemsArray[i];
-				long timeDiff=thisItem.timestamp-anItem.timestamp;
-
-				 if (timeDiff>0&&timeDiff<minimumTimeDiffPreceding){
-					 closestPrecedingItem=anItem;
-				 	minimumTimeDiffPreceding=thisItem.timestamp-anItem.timestamp;
-				 }
-				 if (timeDiff<=0&&Math.abs(timeDiff)<=minimumTimeDiffFollowing){
-					 closestFollowingItem=anItem;
-					 minimumTimeDiffFollowing=thisItem.timestamp-anItem.timestamp;
-				 }
-			}
-			if (closestFollowingItem==null && closestPrecedingItem!=null)
-				thisItem.setX(closestPrecedingItem.x);
-
-			else if (closestFollowingItem!=null && closestPrecedingItem==null)
-				thisItem.setX(closestFollowingItem.x);
-			else{
-			    if (closestFollowingItem == null || closestPrecedingItem == null) {
-			      throw new RuntimeException("closestFollowingItem or closestPrecedingItem was unexpectedly null. Program error?");
-			    }
-				long timeRange=closestFollowingItem.timestamp-closestPrecedingItem.timestamp;
-
-				int xRange=closestFollowingItem.x-closestPrecedingItem.x;
-				double increments=(xRange*1.0)/timeRange;
-
-				thisItem.setX((int)(Math.round((thisItem.timestamp-closestPrecedingItem.timestamp)*increments)+closestPrecedingItem.x));
-			}
-	}
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/TimeLineGraphItem.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/TimeLineGraphItem.java
deleted file mode 100644
index d132967..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/TimeLineGraphItem.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.test.performance.ui;
-
-import java.util.Comparator;
-
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Point;
-
-public class TimeLineGraphItem {
-
-
-    String title;
-    String description=null;
-    double value;
-    Color color;
-    boolean displayDescription=false;
-    long timestamp;
-    boolean isSpecial=false;
-    boolean drawAsBaseline=false;
-    int x;
-    int y;
-
-    TimeLineGraphItem(String title, String description,double value,Color color,boolean display, long timestamp, boolean isSpecial,boolean isBaseline) {
-    	this(title, description, value, color,display, timestamp,isSpecial);
-    	this.drawAsBaseline=isBaseline;
-    }
-
-    TimeLineGraphItem(String title, String description,double value,Color color,boolean display, long timestamp, boolean isSpecial) {
-    	this(title, description, value, color,display, timestamp);
-    	this.isSpecial=isSpecial;
-    }
-
-    TimeLineGraphItem(String title, String description,double value,Color color,boolean display, long timestamp) {
-    	this(title, description, value, color,timestamp);
-    	this.displayDescription=display;
-    }
-
-    TimeLineGraphItem(String title, String description, double value, Color color,long timestamp) {
-        this.title= title;
-        this.value= value;
-        this.color= color;
-        this.description= description;
-        this.timestamp=timestamp;
-    }
-
-    Point getSize(GC g) {
-        Point e1= g.stringExtent(this.description);
-        Point e2= g.stringExtent(this.title);
-        return new Point(Math.max(e1.x, e2.x), e1.y+e2.y);
-    }
-
-    public static class GraphItemComparator implements Comparator<TimeLineGraphItem>{
-		@Override
-    public int compare(TimeLineGraphItem o1, TimeLineGraphItem o2) {
-			long ts1=o1.timestamp;
-			long ts2=o2.timestamp;
-
-			if (ts1>ts2)
-				return 1;
-			if (ts1<ts2)
-				return -1;
-
-			return 0;
-		}
-    }
-
-	public int getX() {
-		return this.x;
-	}
-
-	public void setX(int x) {
-		this.x = x;
-	}
-
-	public int getY() {
-		return this.y;
-	}
-
-	public void setY(int y) {
-		this.y = y;
-	}
-
-
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/Utils.java b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/Utils.java
deleted file mode 100644
index 831c076..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/Utils.java
+++ /dev/null
@@ -1,460 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials are made
- * available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors: IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.test.performance.ui;
-
-import java.io.BufferedOutputStream;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.net.URL;
-import java.text.DecimalFormat;
-import java.text.NumberFormat;
-import java.util.Arrays;
-import java.util.Calendar;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.ImageData;
-import org.eclipse.swt.graphics.ImageLoader;
-import org.eclipse.swt.graphics.PaletteData;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.test.internal.performance.PerformanceTestPlugin;
-import org.eclipse.test.internal.performance.db.Variations;
-import org.eclipse.test.internal.performance.results.utils.Util;
-import org.osgi.framework.Bundle;
-
-public class Utils {
-
-  public final static double STANDARD_ERROR_THRESHOLD = 0.03;                                                                                                                                                 // 3%
-  static final NumberFormat  PERCENT_FORMAT           = NumberFormat.getPercentInstance();
-  static {
-    PERCENT_FORMAT.setMaximumFractionDigits(1);
-  }
-  static final DecimalFormat DEVIATION_FORMAT = (DecimalFormat) NumberFormat.getPercentInstance();
-  static {
-    DEVIATION_FORMAT.setMaximumFractionDigits(1);
-    DEVIATION_FORMAT.setMinimumFractionDigits(1);
-    DEVIATION_FORMAT.setPositivePrefix("+");
-    DEVIATION_FORMAT.setNegativePrefix("- ");
-  }
-  static final DecimalFormat STDERR_FORMAT = (DecimalFormat) NumberFormat.getNumberInstance();
-  static {
-    STDERR_FORMAT.setMaximumFractionDigits(1);
-    STDERR_FORMAT.setMinimumFractionDigits(1);
-    STDERR_FORMAT.setMultiplier(100);
-  }
-  public final static String STANDARD_ERROR_THRESHOLD_STRING = PERCENT_FORMAT.format(STANDARD_ERROR_THRESHOLD);
-
-  // Image files
-  public final static String UNKNOWN_IMAGE                   = "images/Unknown.gif";
-  public final static String OK_IMAGE                        = "images/OK.gif";
-  public final static String OK_IMAGE_WARN                   = "images/OK_caution.gif";
-  public final static String FAIL_IMAGE                      = "images/FAIL.gif";
-  public final static String FAIL_IMAGE_WARN                 = "images/FAIL_caution.gif";
-  public final static String FAIL_IMAGE_EXPLAINED            = "images/FAIL_greyed.gif";
-  public final static String LIGHT                           = "images/light.gif";
-  public final static String WARNING_OBJ                     = "images/warning_obj.gif";
-
-  // Java script files
-  public final static String TOOLTIP_SCRIPT                  = "scripts/ToolTip.js";
-  public final static String TOOLTIP_STYLE                   = "scripts/ToolTip.css";
-  public final static String FINGERPRINT_SCRIPT              = "scripts/Fingerprints.js";
-
-  // Doc files
-  public final static String HELP                            = "doc/help.html";
-
-  // Status
-  public final static int    OK                              = 0;
-  public final static int    NAN                             = 0x1;
-  public final static int    ERR                             = 0x2;
-
-  /**
-   * Return &lt;html&gt;&lt;head&gt;&lt;meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"&gt;
-   */
-  public final static String HTML_OPEN                       = "<html><head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">\n";
-
-  /**
-   * Return "&lt;/html&gt;".
-   */
-  public final static String HTML_CLOSE                      = "</html>\n";
-
-  /**
-   * Default style-sheet used on eclipse.org
-   */
-  public final static String HTML_DEFAULT_CSS                = "<style type=\"text/css\">" + "p, table, td, th {  font-family: arial, helvetica, geneva; font-size: 10pt}\n" + "pre {  font-family: \"Courier New\", Courier, mono; font-size: 10pt}\n"
-      + "h2 { font-family: arial, helvetica, geneva; font-size: 18pt; font-weight: bold ; line-height: 14px}\n" + "code {  font-family: \"Courier New\", Courier, mono; font-size: 10pt}\n" + "sup {  font-family: arial,helvetica,geneva; font-size: 10px}\n"
-      + "h3 {  font-family: arial, helvetica, geneva; font-size: 14pt; font-weight: bold}\n" + "li {  font-family: arial, helvetica, geneva; font-size: 10pt}\n" + "h1 {  font-family: arial, helvetica, geneva; font-size: 28px; font-weight: bold}\n"
-      + "body {  font-family: arial, helvetica, geneva; font-size: 10pt; clip:   rect(   ); margin-top: 5mm; margin-left: 3mm}\n" + ".indextop { font-size: x-large;; font-family: Verdana, Arial, Helvetica, sans-serif; font-weight: bold}\n"
-      + ".indexsub { font-size: xx-small;; font-family: Arial, Helvetica, sans-serif; color: #8080FF}\n" + "</style>\n\n";
-
-  /**
-   * Creates a Variations object using build id pattern, config and jvm.
-   *
-   * @param buildIdPattern
-   * @param config
-   * @param jvm
-   */
-  public static Variations getVariations(String buildIdPattern, String config, String jvm) {
-    String buildIdPatterns = buildIdPattern.replace(',', '%');
-    Variations variations = new Variations();
-    variations.put(PerformanceTestPlugin.CONFIG, config);
-    variations.put(PerformanceTestPlugin.BUILD, buildIdPatterns);
-    variations.put("jvm", jvm);
-    return variations;
-  }
-
-  /**
-   * Copy all bundle files contained in the given path
-   */
-  public static void copyBundleFiles(Bundle bundle, String path, String pattern, File output) {
-    Enumeration<URL> imageFiles = bundle.findEntries(path, pattern, false);
-    while (imageFiles.hasMoreElements()) {
-      URL url = imageFiles.nextElement();
-      try {
-        File outputFile = new File(output, url.getFile());
-        if (!outputFile.getParentFile().exists()) {
-          outputFile.getParentFile().mkdirs();
-        }
-        Util.copyStream(url.openStream(), outputFile);
-      } catch (IOException e) {
-        // TODO Auto-generated catch block
-        e.printStackTrace();
-      }
-    }
-  }
-
-  /**
-   * Downsample Image to 8 bit depth format so that the resulting image data can be saved to GIF. Note. If the source image contains
-   * photo quality content with more than 256 colours, resulting data will look very poor.
-   */
-  static int closest(RGB[] rgbs, int n, RGB rgb) {
-    int minDist = 256 * 256 * 3;
-    int minIndex = 0;
-    for (int i = 0; i < n; ++i) {
-      RGB rgb2 = rgbs[i];
-      int da = rgb2.red - rgb.red;
-      int dg = rgb2.green - rgb.green;
-      int db = rgb2.blue - rgb.blue;
-      int dist = da * da + dg * dg + db * db;
-      if (dist < minDist) {
-        minDist = dist;
-        minIndex = i;
-      }
-    }
-    return minIndex;
-  }
-
-  static class ColorCounter implements Comparable<ColorCounter> {
-
-    RGB rgb;
-
-    int count;
-
-    @Override
-    public int compareTo(ColorCounter o) {
-      return o.count - this.count;
-    }
-  }
-
-  public static ImageData downSample(Image image) {
-    ImageData data = image.getImageData();
-    if (!data.palette.isDirect && data.depth <= 8)
-      return data;
-
-    // compute a histogram of color frequencies
-    HashMap<RGB, ColorCounter> freq = new HashMap<>();
-    int width = data.width;
-    int[] pixels = new int[width];
-    int[] maskPixels = new int[width];
-    for (int y = 0, height = data.height; y < height; ++y) {
-      data.getPixels(0, y, width, pixels, 0);
-      for (int x = 0; x < width; ++x) {
-        RGB rgb = data.palette.getRGB(pixels[x]);
-        ColorCounter counter = freq.get(rgb);
-        if (counter == null) {
-          counter = new ColorCounter();
-          counter.rgb = rgb;
-          freq.put(rgb, counter);
-        }
-        counter.count++;
-      }
-    }
-
-    // sort colors by most frequently used
-    ColorCounter[] counters = new ColorCounter[freq.size()];
-    freq.values().toArray(counters);
-    Arrays.sort(counters);
-
-    // pick the most frequently used 256 (or fewer), and make a palette
-    ImageData mask = null;
-    if (data.transparentPixel != -1 || data.maskData != null) {
-      mask = data.getTransparencyMask();
-    }
-    int n = Math.min(256, freq.size());
-    RGB[] rgbs = new RGB[n + (mask != null ? 1 : 0)];
-    for (int i = 0; i < n; ++i)
-      rgbs[i] = counters[i].rgb;
-    if (mask != null) {
-      rgbs[rgbs.length - 1] = data.transparentPixel != -1 ? data.palette.getRGB(data.transparentPixel) : new RGB(255, 255, 255);
-    }
-    PaletteData palette = new PaletteData(rgbs);
-
-    // create a new image using the new palette:
-    // for each pixel in the old image, look up the best matching
-    // index in the new palette
-    ImageData newData = new ImageData(width, data.height, 8, palette);
-    if (mask != null)
-      newData.transparentPixel = rgbs.length - 1;
-    for (int y = 0, height = data.height; y < height; ++y) {
-      data.getPixels(0, y, width, pixels, 0);
-      if (mask != null)
-        mask.getPixels(0, y, width, maskPixels, 0);
-      for (int x = 0; x < width; ++x) {
-        if (mask != null && maskPixels[x] == 0) {
-          pixels[x] = rgbs.length - 1;
-        } else {
-          RGB rgb = data.palette.getRGB(pixels[x]);
-          pixels[x] = closest(rgbs, n, rgb);
-        }
-      }
-      newData.setPixels(0, y, width, pixels, 0);
-    }
-    return newData;
-  }
-
-  /**
-   * Returns the date/time from the build id in format yyyymmddhm
-   *
-   * @param buildId
-   * @return date/time in format YYYYMMDDHHMM, ie. 200504060010
-   */
-  public static long getDateFromBuildID(String buildId) {
-    return getDateFromBuildID(buildId, false);
-  }
-
-  public static long getDateFromBuildID(String buildId, boolean matchLast) {
-    // initialize to "error" value.
-    Long result = Long.MAX_VALUE;
-    try {
-      if (buildId.indexOf('-') > -1) {
-        // if regular build, expect <buildType><date>-<time> format
-        String[] buildIdParts = buildId.split("-");
-        // two parts are from IDs such as I20140606-1215, so skip first
-        // char, and hour and second are in second part.
-        if (buildIdParts.length == 2) {
-          int year = Integer.parseInt(buildIdParts[0].substring(1, 5));
-          int month = Integer.parseInt(buildIdParts[0].substring(5, 7));
-          int date = Integer.parseInt(buildIdParts[0].substring(7, 9));
-          int hours = Integer.parseInt(buildIdParts[1].substring(0, 2));
-          int min = Integer.parseInt(buildIdParts[1].substring(2, 4));
-          Calendar calendar = Calendar.getInstance();
-          calendar.set(year, month, date, hours, min);
-          result = calendar.getTimeInMillis();
-        } else if (buildIdParts.length == 3) {
-          // three parts, such a from R-4.5-201506032000, so only
-          // part[2] is date. Special case, where we "code" the R-builds with I-build
-          // date at end, so we know they "go together". Those identifiers look
-          // like R-4.5-201506032000_201511032000 or similar.
-          // if no underscore is detected, we use simply "part 2".
-          // if underscore is detected then further spiting is
-          // required. In that case, if matchLast is true, we use that to the
-          // right of underscore. If matchLast is false, we use that to the left of
-          // underscore. If matchLast is true, but there is no underscore, we
-          // print a warning, but still return the normal 'part 2'.
-          int uLocation = buildIdParts[2].indexOf('_');
-          if (uLocation > -1) {
-            String firstDateString = buildIdParts[2].substring(0, uLocation - 1);
-            String secondDateString = buildIdParts[2].substring(uLocation);
-            if (matchLast) {
-              result = getDateAsMilliSecs(secondDateString);
-            } else {
-              result = getDateAsMilliSecs(firstDateString);
-            }
-          } else {
-            String dateString = buildIdParts[2];
-            result = getDateAsMilliSecs(dateString);
-          }
-        } else {
-          System.err.println("ERROR: BuildId where number of build parts (based on split(\"-\")) was neither 2 nor 3 parts. Unexpected data. BuildId: " + buildId);
-        }
-      } else {
-        System.err.println("ERROR: BuildId with no '-' found. BuildId: " + buildId + ". Unexpected data.");
-      }
-    } catch (StringIndexOutOfBoundsException e) {
-      // Do nothing, but print warning, and return MAX_VALUE"
-      System.err.println("ERROR: StringIndexOutofBoundsExeception while processing Date part of buildId, " + buildId + ". Probably due to error in data in database?");
-    }
-    // If we "fall through" with no assignment, we return "MAX_VALUE", since
-    // most (all?) checks of date involve "if less than", so this makes
-    // those evaluate to false. TODO: should do explicit check for "equals MAX_VALUE" so we
-    // would know it was an error.
-    return result;
-  }
-
-  public static Long getDateAsMilliSecs(String dateString) {
-    // we use "MAX_VALUE" as an error indicator.
-    Long result = Long.MAX_VALUE;
-    Pattern expectedFormat = Pattern.compile("\\d{12}");
-    Matcher matcher = expectedFormat.matcher(dateString);
-    // we assume strict format on date, such as 201511040800.
-    // 12 digits only.
-    if (matcher.matches()) {
-      int year = Integer.parseInt(dateString.substring(0, 4));
-      int month = Integer.parseInt(dateString.substring(4, 6));
-      int date = Integer.parseInt(dateString.substring(6, 8));
-      int hours = Integer.parseInt(dateString.substring(8, 10));
-      int min = Integer.parseInt(dateString.substring(10, 12));
-      Calendar localCalendar = Calendar.getInstance();
-      localCalendar.set(year, month, date, hours, min);
-      result = localCalendar.getTimeInMillis();
-    } else {
-      System.err.println("ERROR: dateString, " + dateString + ", was not exactly 12 digits in length. Long.MAX_VALUE returned");
-    }
-    return result;
-  }
-
-  /**
-   * Returns a message corresponding to given statistics.
-   *
-   * @param resultStats
-   *          The value with its standard error
-   * @param full
-   * @return The failure message. May be empty if stats are good...
-   */
-  public static String failureMessage(double[] resultStats, boolean full) {
-    StringBuilder buffer = new StringBuilder();
-    int level = confidenceLevel(resultStats);
-    // boolean isWarn = (level & WARN) != 0;
-    boolean isErr = (level & ERR) != 0;
-    if (full) {
-      if (isErr) {
-        buffer.append("*** WARNING ***  ");
-        buffer.append(Messages.bind(Messages.standardError, PERCENT_FORMAT.format(resultStats[1]), STANDARD_ERROR_THRESHOLD_STRING));
-      }
-      return buffer.toString();
-    }
-    if (resultStats != null) {
-      double deviation = resultStats[0];
-      buffer.append("<font color=\"#0000FF\" size=\"1\">");
-      if (Double.isNaN(deviation) || Double.isInfinite(deviation)) {
-        buffer.append(" [n/a]");
-      } else {
-        double stderr = resultStats[1];
-        deviation = Math.abs(deviation) < 0.001 ? 0 : -deviation;
-        if (Double.isNaN(stderr) || Double.isInfinite(stderr)) {
-          buffer.append(DEVIATION_FORMAT.format(deviation));
-          buffer.append("</font><font color=\"#DDDD00\" size=\"1\"> ");
-          buffer.append(" [n/a]");
-        } else {
-          buffer.append(DEVIATION_FORMAT.format(deviation));
-          buffer.append(" [&#177;");
-          buffer.append(STDERR_FORMAT.format(Math.abs(stderr)));
-          buffer.append(']');
-        }
-      }
-      buffer.append("</font>");
-    }
-    return buffer.toString();
-  }
-
-  /**
-   * Returns the confidence level for given statistics:
-   * <ul>
-   * <li>{@link #NAN}: if the value is infinite or not a number</li>
-   * <li>{@link #ERR}: if the standard error is over the expected threshold ({@link #STANDARD_ERROR_THRESHOLD})</li>
-   * <li>{@link #OK}: in all other cases</li>
-   * </ul>
-   *
-   * @param resultStats
-   *          array of 2 doubles, the former is the average value and the latter is the standard error made while computing the
-   *          average.
-   * @return a value telling caller the level of confidence of the provided value
-   */
-  public static int confidenceLevel(double[] resultStats) {
-    int level = OK;
-    if (resultStats != null) {
-      if (Double.isNaN(resultStats[0]) || Double.isInfinite(resultStats[0])) {
-        level = NAN;
-      } else {
-        // if (resultStats[1] >= (STANDARD_ERROR_THRESHOLD/2)) { //
-        // warns standard error higher than the half of authorized
-        // threshold
-        // level |= WARN;
-        // }
-        if (resultStats[1] >= STANDARD_ERROR_THRESHOLD) { // standard
-                                                          // error
-                                                          // higher than
-                                                          // the
-                                                          // authorized
-                                                          // threshold
-          level = ERR;
-        }
-      }
-    }
-    return level;
-  }
-
-  /**
-   * Get an icon image corresponding to a given level of confidence and explanation.
-   *
-   * @param confidence
-   *          the confiden level
-   * @param hasExplanation
-   *          flags indicates whether the confidence may be tempered by an explanation
-   * @return Corresponding image
-   */
-  public static String getImage(int confidence, boolean scenarioFailed, boolean hasExplanation) {
-    String image = null;
-
-    if (scenarioFailed) {
-      if (hasExplanation) {
-        image = FAIL_IMAGE_EXPLAINED;
-      } else if ((confidence & ERR) != 0) {
-        image = FAIL_IMAGE_WARN;
-      } else {
-        image = FAIL_IMAGE;
-      }
-    } else if ((confidence & NAN) != 0) {
-      image = UNKNOWN_IMAGE;
-    } else if ((confidence & ERR) != 0) {
-      image = OK_IMAGE_WARN;
-    } else {
-      image = OK_IMAGE;
-    }
-    return image;
-  }
-
-  /**
-   * @param outputFile
-   * @param image
-   */
-  public static void saveImage(File outputFile, Image image) {
-    // Save image
-    ImageData data = downSample(image);
-    ImageLoader imageLoader = new ImageLoader();
-    imageLoader.data = new ImageData[] { data };
-
-    try (OutputStream out = new BufferedOutputStream(new FileOutputStream(outputFile))){
-
-      imageLoader.save(out, SWT.IMAGE_GIF);
-    } catch (IOException e) {
-      e.printStackTrace();
-    }
-    finally {
-      image.dispose();
-    }
-  }
-
-}
diff --git a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/messages.properties b/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/messages.properties
deleted file mode 100644
index a486ba1..0000000
--- a/bundles/org.eclipse.test.performance.ui/src/org/eclipse/test/performance/ui/messages.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2007 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-### Performance Tests Messages.
-
-standardError = Standard error on this test is {0} (should be less than {1} to become reliable!)
diff --git a/bundles/pom.xml b/bundles/pom.xml
deleted file mode 100644
index dc6bbdf..0000000
--- a/bundles/pom.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <artifactId>eclipse.platform.releng.buildtools</artifactId>
-        <groupId>org.eclipse.platform</groupId>
-        <version>1.0.101-SNAPSHOT</version>
-    </parent>
-    <artifactId>bundles</artifactId>
-    <packaging>pom</packaging>
-    <modules>
-        <module>org.eclipse.build.tools</module>
-        <module>org.eclipse.releng.build.tools.convert</module>
-        <module>org.eclipse.releng.build.tools.convert.application</module>
-        <module>org.eclipse.releng.build.tools.comparator</module>
-        <module>org.eclipse.test.performance.ui</module>
-	    <module>org.eclipse.releng.tools</module>
-	    <module>org.eclipse.releng.tools.tests</module>
-    </modules>
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.eclipse.tycho</groupId>
-                <artifactId>tycho-maven-plugin</artifactId>
-                <version>${tycho.version}</version>
-                <extensions>true</extensions>
-            </plugin>
-        </plugins>
-    </build>
-</project>
diff --git a/features/org.eclipse.releng.build.tools.feature/.gitignore b/features/org.eclipse.releng.build.tools.feature/.gitignore
deleted file mode 100644
index bb5e943..0000000
--- a/features/org.eclipse.releng.build.tools.feature/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/bin
-/target
\ No newline at end of file
diff --git a/features/org.eclipse.releng.build.tools.feature/.settings/org.eclipse.core.resources.prefs b/features/org.eclipse.releng.build.tools.feature/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 99f26c0..0000000
--- a/features/org.eclipse.releng.build.tools.feature/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-encoding/<project>=UTF-8
diff --git a/features/org.eclipse.releng.build.tools.feature/.settings/org.eclipse.core.runtime.prefs b/features/org.eclipse.releng.build.tools.feature/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/features/org.eclipse.releng.build.tools.feature/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/features/org.eclipse.releng.build.tools.feature/build.properties b/features/org.eclipse.releng.build.tools.feature/build.properties
deleted file mode 100644
index b3a611b..0000000
--- a/features/org.eclipse.releng.build.tools.feature/build.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-bin.includes = feature.xml,\
-               feature.properties
diff --git a/features/org.eclipse.releng.build.tools.feature/feature.properties b/features/org.eclipse.releng.build.tools.feature/feature.properties
deleted file mode 100644
index 5e628d7..0000000
--- a/features/org.eclipse.releng.build.tools.feature/feature.properties
+++ /dev/null
@@ -1,33 +0,0 @@
-###############################################################################
-# Copyright (c) 2013 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     David Williams - initial 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 releng build tools
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse Platform Releng
-
-# "description" property - description of the feature
-description=Ant tasks and applications to assist in building Eclipse Platform.
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2013 IBM Corporation and others.\n\
-All rights reserved. This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License v1.0\n\
-which accompanies this distribution, and is available at\n\
-http://www.eclipse.org/legal/epl-v10.html\n
-################ end of copyright property ####################################
\ No newline at end of file
diff --git a/features/org.eclipse.releng.build.tools.feature/feature.xml b/features/org.eclipse.releng.build.tools.feature/feature.xml
deleted file mode 100644
index e854bfc..0000000
--- a/features/org.eclipse.releng.build.tools.feature/feature.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="org.eclipse.releng.build.tools.feature"
-      label="%featureName"
-      version="1.0.101.qualifier"
-      provider-name="%providerName"
-      license-feature="org.eclipse.license"
-      license-feature-version="0.0.0">
-
-   <description>
-      %description
-   </description>
-
-   <copyright>
-      %copyright
-   </copyright>
-
-
-   <plugin
-         id="org.eclipse.build.tools"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.releng.build.tools.convert"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.releng.build.tools.convert.application"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.releng.build.tools.comparator"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.test.performance"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.test.performance.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-</feature>
diff --git a/features/org.eclipse.releng.build.tools.feature/pom.xml b/features/org.eclipse.releng.build.tools.feature/pom.xml
deleted file mode 100644
index 5cf7656..0000000
--- a/features/org.eclipse.releng.build.tools.feature/pom.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>org.eclipse.platform</groupId>
-    <artifactId>features</artifactId>
-    <version>1.0.101-SNAPSHOT</version>
-  </parent>
-  <artifactId>org.eclipse.releng.build.tools.feature</artifactId>
-  <version>1.0.101-SNAPSHOT</version>
-  <packaging>eclipse-feature</packaging>
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.eclipse.tycho.extras</groupId>
-        <artifactId>tycho-source-feature-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>source-feature</id>
-            <phase>package</phase>
-            <goals>
-              <goal>source-feature</goal>
-            </goals>
-            <configuration>
-              <excludes>
-                <plugin id="org.eclipse.test.performance"/>
-              </excludes>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-p2-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>attached-p2-metadata</id>
-            <phase>package</phase>
-            <goals>
-              <goal>p2-metadata</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-</project>
diff --git a/features/org.eclipse.releng.tools/.settings/org.eclipse.core.resources.prefs b/features/org.eclipse.releng.tools/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index ae3a78c..0000000
--- a/features/org.eclipse.releng.tools/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-separateDerivedEncodings=true
diff --git a/features/org.eclipse.releng.tools/.settings/org.eclipse.core.runtime.prefs b/features/org.eclipse.releng.tools/.settings/org.eclipse.core.runtime.prefs
deleted file mode 100644
index 5a0ad22..0000000
--- a/features/org.eclipse.releng.tools/.settings/org.eclipse.core.runtime.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-line.separator=\n
diff --git a/features/org.eclipse.releng.tools/build.properties b/features/org.eclipse.releng.tools/build.properties
deleted file mode 100644
index 18b4366..0000000
--- a/features/org.eclipse.releng.tools/build.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-###############################################################################
-# Copyright (c) 2005, 2006 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = feature.xml,feature.properties
diff --git a/features/org.eclipse.releng.tools/feature.properties b/features/org.eclipse.releng.tools/feature.properties
deleted file mode 100644
index db98c0b..0000000
--- a/features/org.eclipse.releng.tools/feature.properties
+++ /dev/null
@@ -1,42 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2020 IBM Corporation and others.
-#
-# This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License 2.0
-# which accompanies this distribution, and is available at
-# https://www.eclipse.org/legal/epl-2.0/
-#
-# SPDX-License-Identifier: EPL-2.0
-# 
-# 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 Releng Tools
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse.org
-
-# "description" property - description of the feature
-description=Eclipse Releng Tools
-
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2000, 2020 IBM Corporation and others.\n\
-
-This program and the accompanying materials\n\
-are made available under the terms of the Eclipse Public License 2.0\n\
-which accompanies this distribution, and is available at\n\
-https://www.eclipse.org/legal/epl-2.0/
-
-SPDX-License-Identifier: EPL-2.0\n\
-\n\
-Contributors:\n\
-    IBM Corporation - initial API and implementation\n
-################ end of copyright property ####################################
\ No newline at end of file
diff --git a/features/org.eclipse.releng.tools/feature.xml b/features/org.eclipse.releng.tools/feature.xml
deleted file mode 100644
index e9e8246..0000000
--- a/features/org.eclipse.releng.tools/feature.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="org.eclipse.releng.tools"
-      label="%featureName"
-      version="3.11.100.qualifier"
-      provider-name="%providerName"
-      image="eclipse_update_120.jpg"
-      license-feature="org.eclipse.license"
-      license-feature-version="0.0.0">
-
-   <description>
-      %description
-   </description>
-
-   <copyright>
-      %copyright
-   </copyright>
-
-   <license url="%licenseURL">
-      %license
-   </license>
-
-   <plugin
-         id="org.eclipse.releng.tools"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-</feature>
diff --git a/features/org.eclipse.releng.tools/forceQualifierUpdate.txt b/features/org.eclipse.releng.tools/forceQualifierUpdate.txt
deleted file mode 100644
index 1f61f41..0000000
--- a/features/org.eclipse.releng.tools/forceQualifierUpdate.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-# To force a version qualifier update add the bug here
-Bug 403352 - Update all parent versions to match our build stream
-Bug 540097 - Comparator Errors in I20181012-1800 Build
diff --git a/features/org.eclipse.releng.tools/pom.xml b/features/org.eclipse.releng.tools/pom.xml
deleted file mode 100644
index c0e06b0..0000000
--- a/features/org.eclipse.releng.tools/pom.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright (c) 2012, 2017 Eclipse Foundation and others.
-  All rights reserved. This program and the accompanying materials
-  are made available under the terms of the Eclipse Distribution License v1.0
-  which accompanies this distribution, and is available at
-  http://www.eclipse.org/org/documents/edl-v10.php
- 
-  Contributors:
-     Igor Fedorenko - initial implementation
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>org.eclipse.platform</groupId>
-    <artifactId>features</artifactId>
-    <version>1.0.101-SNAPSHOT</version>
-  </parent>
-  <groupId>org.eclipse.releng.feature</groupId>
-  <artifactId>org.eclipse.releng.tools</artifactId>
-  <version>3.11.100-SNAPSHOT</version>
-  <packaging>eclipse-feature</packaging>
-  <build>
-    <plugins>
-    <!-- 
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-source-plugin</artifactId>
-        <version>${tycho.version}</version>
-        <executions>
-          <execution>
-            <phase>package</phase>
-            <id>feature-source</id>
-            <goals>
-              <goal>feature-source</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-      -->
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-p2-plugin</artifactId>
-        <version>${tycho.version}</version>
-        <executions>
-          <execution>
-            <id>attach-p2-metadata</id>
-            <phase>package</phase>
-            <goals>
-              <goal>p2-metadata</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-</project>
diff --git a/features/pom.xml b/features/pom.xml
deleted file mode 100644
index 154fee0..0000000
--- a/features/pom.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-  <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <artifactId>eclipse.platform.releng.buildtools</artifactId>
-        <groupId>org.eclipse.platform</groupId>
-        <version>1.0.101-SNAPSHOT</version>
-    </parent>
-  <artifactId>features</artifactId>
-  <packaging>pom</packaging>
-  <modules>
-    <module>org.eclipse.releng.build.tools.feature</module>
-	<module>org.eclipse.releng.tools</module>
-  </modules>
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-maven-plugin</artifactId>
-        <version>${tycho.version}</version>
-        <extensions>true</extensions>
-      </plugin>
-    </plugins>
-  </build>
-</project>
diff --git a/jetty.repository/category.xml b/jetty.repository/category.xml
deleted file mode 100644
index a110332..0000000
--- a/jetty.repository/category.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site>
-	<iu id="org.eclipse.jetty.http" version="0.0.0" />
-	<iu id="org.eclipse.jetty.http.source" version="0.0.0" />
-	<iu id="org.eclipse.jetty.io" version="0.0.0" />
-	<iu id="org.eclipse.jetty.io.source" version="0.0.0" />
-	<iu id="org.eclipse.jetty.security" version="0.0.0" />
-	<iu id="org.eclipse.jetty.security.source" version="0.0.0" />
-	<iu id="org.eclipse.jetty.server" version="0.0.0" />
-	<iu id="org.eclipse.jetty.server.source" version="0.0.0" />
-	<iu id="org.eclipse.jetty.servlet" version="0.0.0" />
-	<iu id="org.eclipse.jetty.servlet.source" version="0.0.0" />
-	<iu id="org.eclipse.jetty.util" version="0.0.0" />
-	<iu id="org.eclipse.jetty.util.source" version="0.0.0" />
-	<iu id="org.eclipse.jetty.util.ajax" version="0.0.0" />
-	<iu id="org.eclipse.jetty.util.ajax.source" version="0.0.0" />
-	<iu id="jakarta.servlet-api" version="0.0.0" />
-	<iu id="jakarta.servlet-api.source" version="0.0.0" />
-</site>
diff --git a/jetty.repository/jetty.target b/jetty.repository/jetty.target
deleted file mode 100644
index dafb3c7..0000000
--- a/jetty.repository/jetty.target
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<?pde version="3.8"?>
-<target>
-	<locations>
-		<location includeDependencyScope="compile" includeSource="true" missingManifest="ignore" type="Maven">
-			<groupId>org.eclipse.jetty</groupId>
-			<artifactId>jetty-servlet</artifactId>
-			<version>10.0.6</version>
-			<type>jar</type>
-		</location>
-		<location includeDependencyScope="compile" includeSource="true" missingManifest="ignore" type="Maven">
-			<groupId>jakarta.servlet</groupId>
-			<artifactId>jakarta.servlet-api</artifactId>
-			<version>4.0.4</version>
-			<type>jar</type>
-		</location>
-	</locations>
-</target>
\ No newline at end of file
diff --git a/jetty.repository/pom.xml b/jetty.repository/pom.xml
deleted file mode 100644
index b8f457c..0000000
--- a/jetty.repository/pom.xml
+++ /dev/null
@@ -1,132 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- Copyright (c) 2008 Sonatype, Inc. All rights reserved. This program 
-	and the accompanying materials are made available under the terms of the 
-	Eclipse Public License 2.0 which accompanies this distribution, and is available 
-	at https://www.eclipse.org/legal/epl-2.0/ SPDX-License-Identifier: EPL-2.0 -->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-	<modelVersion>4.0.0</modelVersion>
-	<groupId>org.eclipse.plaform.releng.buildtools</groupId>
-	<artifactId>org.eclipse.platform.jetty.repository</artifactId>
-	<version>10.0.6</version>
-	<packaging>eclipse-repository</packaging>
-
-	<name>Jetty p2 Update Site for Platform build neeeds</name>
-
-	<properties>
-		<tycho-version>2.4.0</tycho-version>
-	</properties>
-
-	<repositories>
-		<repository>
-			<id>jetty-snapshots</id>
-			<url>https://oss.sonatype.org/content/repositories/jetty-snapshots/</url>
-			<releases>
-				<enabled>true</enabled>
-			</releases>
-			<snapshots>
-				<enabled>true</enabled>
-			</snapshots>
-		</repository>
-	</repositories>
-	<pluginRepositories>
-		<pluginRepository>
-			<id>tycho-snapshots</id>
-			<url>https://repo.eclipse.org/content/repositories/tycho-snapshots/</url>
-			<releases>
-				<enabled>true</enabled>
-			</releases>
-			<snapshots>
-				<enabled>true</enabled>
-			</snapshots>
-		</pluginRepository>
-	</pluginRepositories>
-
-	<build>
-		<plugins>
-			<plugin>
-				<groupId>org.eclipse.tycho</groupId>
-				<artifactId>tycho-maven-plugin</artifactId>
-				<version>${tycho-version}</version>
-				<extensions>true</extensions>
-			</plugin>
-			<plugin>
-				<groupId>org.eclipse.tycho</groupId>
-				<artifactId>target-platform-configuration</artifactId>
-				<version>${tycho-version}</version>
-				<configuration>
-					<pomDependencies>consider</pomDependencies>
-					<target>
-						<file>jetty.target</file>
-					</target>
-				</configuration>
-			</plugin>
-			<plugin>
-				<groupId>org.eclipse.tycho</groupId>
-				<artifactId>tycho-p2-repository-plugin</artifactId>
-				<version>${tycho-version}</version>
-				<configuration>
-					<includeAllDependencies>false</includeAllDependencies>
-				</configuration>
-			</plugin>
-		</plugins>
-	</build>
-
-	<profiles>
-		<!-- Eclipse SimRel requires all artifacts to be jar-signed. So we sign 
-			the (non eclipse) artifacts and update the p2 metadata accordingly -->
-		<profile>
-			<id>eclipse-sign</id>
-			<pluginRepositories>
-				<pluginRepository>
-					<id>cbi-releases</id>
-					<url>https://repo.eclipse.org/content/repositories/cbi-releases/</url>
-				</pluginRepository>
-			</pluginRepositories>
-			<build>
-				<plugins>
-					<plugin>
-						<groupId>org.eclipse.cbi.maven.plugins</groupId>
-						<artifactId>eclipse-jarsigner-plugin</artifactId>
-						<version>1.3.2</version>
-						<executions>
-							<execution>
-								<id>sign</id>
-								<goals>
-									<goal>sign</goal>
-								</goals>
-								<phase>prepare-package</phase>
-							</execution>
-						</executions>
-						<configuration>
-							<excludeInnerJars>true</excludeInnerJars>
-							<resigningStrategy>DO_NOT_RESIGN</resigningStrategy>
-							<archiveDirectory>${project.build.directory}/repository/plugins/</archiveDirectory>
-							<processMainArtifact>false</processMainArtifact>
-							<processAttachedArtifacts>false</processAttachedArtifacts>
-						</configuration>
-					</plugin>
-					<plugin>
-						<groupId>org.eclipse.tycho</groupId>
-						<artifactId>tycho-p2-repository-plugin</artifactId>
-						<version>${tycho-version}</version>
-						<executions>
-							<execution>
-								<id>update</id>
-								<goals>
-									<goal>fix-artifacts-metadata</goal>
-								</goals>
-								<phase>prepare-package</phase>
-							</execution>
-							<execution>
-								<id>verify</id>
-								<goals>
-									<goal>verify-repository</goal>
-								</goals>
-							</execution>
-						</executions>
-					</plugin>
-				</plugins>
-			</build>
-		</profile>
-	</profiles>
-</project>
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
deleted file mode 100644
index b1e778f..0000000
--- a/pom.xml
+++ /dev/null
@@ -1,361 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  Copyright (c) 2019 IBM Corporation and others.
-  All rights reserved. This program and the accompanying materials
-  are made available under the terms of the Eclipse Public License v1.0
-  which accompanies this distribution, and is available at
-  http://www.eclipse.org/legal/epl-v10.html
-
-  Contributors:
-  David Williams - initial implementation
--->
-<project
-  xmlns="http://maven.apache.org/POM/4.0.0"
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <groupId>org.eclipse.platform</groupId>
-  <artifactId>eclipse.platform.releng.buildtools</artifactId>
-  <version>1.0.101-SNAPSHOT</version>
-  <packaging>pom</packaging>
-  <prerequisites>
-    <maven>3.6.3</maven>
-  </prerequisites>
-
-  <properties>
-    <tycho.version>2.6.0</tycho.version>
-    <cbi-plugins.version>1.3.2</cbi-plugins.version>
-    <maven.build.timestamp.format>yyyyMMdd-HHmm</maven.build.timestamp.format>
-    <buildTimestamp>${maven.build.timestamp}</buildTimestamp>
-    <buildType>I</buildType>
-    <buildId>${buildType}${buildTimestamp}</buildId>
-
-    <maven.build.timestamp.format>yyyyMMdd-HHmm</maven.build.timestamp.format>
-    <buildTimestamp>${maven.build.timestamp}</buildTimestamp>
-    <buildType>I</buildType>
-    <buildId>${buildType}${buildTimestamp}</buildId>
-    <comparator.repo>https://download.eclipse.org/eclipse/updates/I-builds/</comparator.repo>
-    <egit-repo.url>http://download.eclipse.org/egit/updates</egit-repo.url>
-    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-    <cbi-jdt-repo.url>https://repo.eclipse.org/content/repositories/eclipse-staging/</cbi-jdt-repo.url>
-
-    <cbi-snapshots-repo.url>https://repo.eclipse.org/content/repositories/cbi-snapshots/</cbi-snapshots-repo.url>
-    <eclipse-repo.url>https://repo.eclipse.org/content/repositories/cbi/</eclipse-repo.url>
-
-    <!-- CBI provided common license feature. (bug 394793) -->
-    <license-repo.url>https://download.eclipse.org/cbi/updates/license/2.0.2.v20181016-2210/</license-repo.url>
-
-    <tycho.scmUrl>scm:git:git://git.eclipse.org/gitroot/platform/eclipse.platform.releng.buildtools</tycho.scmUrl>
-
-
-  </properties>
-  <modules>
-    <module>features</module>
-    <module>bundles</module>
-    <module>repository</module>
-  </modules>
-  <pluginRepositories>
-    <pluginRepository>
-      <id>cbi-jdt</id>
-      <url>${cbi-jdt-repo.url}</url>
-      <releases>
-        <enabled>true</enabled>
-      </releases>
-      <snapshots>
-        <enabled>true</enabled>
-      </snapshots>
-    </pluginRepository>
-    <pluginRepository>
-      <id>eclipse</id>
-      <url>${eclipse-repo.url}</url>
-      <releases>
-        <enabled>true</enabled>
-      </releases>
-      <snapshots>
-        <enabled>true</enabled>
-      </snapshots>
-    </pluginRepository>
-    <pluginRepository>
-      <id>cbi-snapshots</id>
-      <url>${cbi-snapshots-repo.url}</url>
-      <releases>
-        <enabled>false</enabled>
-      </releases>
-      <snapshots>
-        <enabled>true</enabled>
-      </snapshots>
-    </pluginRepository>
-  </pluginRepositories>
-  <repositories>
-    <repository>
-      <id>eclipse-platform-repository</id>
-      <layout>p2</layout>
-      <!-- Normally should be "latest milestone" for stability, once we have one for 4.9. -->
-      <url>https://download.eclipse.org/eclipse/updates/I-builds/</url>
-    </repository>
-    <repository>
-      <id>git-repository</id>
-      <url>https://download.eclipse.org/egit/updates/</url>
-      <layout>p2</layout>
-    </repository>
-    <repository>
-      <id>cbi-common-license</id>
-      <layout>p2</layout>
-      <url>${license-repo.url}</url>
-    </repository>
-  </repositories>
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-maven-plugin</artifactId>
-        <version>${tycho.version}</version>
-        <extensions>true</extensions>
-      </plugin>
-      <plugin>
-        <groupId>org.eclipse.tycho</groupId>
-        <artifactId>tycho-source-plugin</artifactId>
-        <configuration>
-          <archive>
-            <addMavenDescriptor>false</addMavenDescriptor>
-          </archive>
-        </configuration>
-        <executions>
-          <execution>
-            <id>plugin-source</id>
-            <goals>
-              <goal>plugin-source</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-    <pluginManagement>
-      <plugins>
-        <plugin>
-          <groupId>org.eclipse.tycho</groupId>
-          <artifactId>tycho-source-plugin</artifactId>
-          <version>${tycho.version}</version>
-          <configuration>
-            <distinctSourceRoots>true</distinctSourceRoots>
-            <strictSrcIncludes>false</strictSrcIncludes>
-            <archive>
-              <addMavenDescriptor>false</addMavenDescriptor>
-            </archive>
-          </configuration>
-        </plugin>
-        <plugin>
-          <groupId>org.eclipse.tycho</groupId>
-          <artifactId>tycho-p2-plugin</artifactId>
-          <version>${tycho.version}</version>
-          <configuration>
-            <baselineMode>warn</baselineMode>
-            <baselineReplace>all</baselineReplace>
-            <baselineRepositories>
-              <repository>
-                <url>${comparator.repo}</url>
-              </repository>
-            </baselineRepositories>
-          </configuration>
-        </plugin>
-        <plugin>
-          <groupId>org.eclipse.tycho</groupId>
-          <artifactId>tycho-compiler-plugin</artifactId>
-          <version>${tycho.version}</version>
-          <configuration>
-            <compilerArgs>
-              <args>-verbose</args>
-              <args>-inlineJSR</args>
-              <args>-enableJavadoc</args>
-              <args>-encoding</args>
-              <args>${project.build.sourceEncoding}</args>
-              <args>-proceedOnError</args>
-            </compilerArgs>
-            <!-- Use this form for Tycho 23 or greater -->
-            <log>xml</log>
-            <logDirectory>${project.build.directory}/compilelogs</logDirectory>
-            <showWarnings>true</showWarnings>
-            <excludeResources>
-              <exclude>**/package.html</exclude>
-            </excludeResources>
-          </configuration>
-        </plugin>
-        <plugin>
-          <groupId>org.eclipse.tycho.extras</groupId>
-          <artifactId>tycho-source-feature-plugin</artifactId>
-          <version>${tycho.version}</version>
-          <configuration>
-            <archive>
-              <addMavenDescriptor>false</addMavenDescriptor>
-            </archive>
-          </configuration>
-        </plugin>
-        <plugin>
-          <groupId>org.eclipse.tycho</groupId>
-          <artifactId>tycho-packaging-plugin</artifactId>
-          <version>${tycho.version}</version>
-          <dependencies>
-            <dependency>
-              <groupId>org.eclipse.tycho.extras</groupId>
-              <artifactId>tycho-buildtimestamp-jgit</artifactId>
-              <version>${tycho.version}</version>
-            </dependency>
-            <dependency>
-              <groupId>org.eclipse.tycho.extras</groupId>
-              <artifactId>tycho-sourceref-jgit</artifactId>
-              <version>${tycho.version}</version>
-            </dependency>
-          </dependencies>
-          <configuration>
-            <strictBinIncludes>false</strictBinIncludes>
-            <format>'v'yyyyMMdd-HHmm</format>
-            <timestampProvider>jgit</timestampProvider>
-            <jgit.ignore>
-              pom.xml
-            </jgit.ignore>
-            <sourceReferences>
-              <generate>true</generate>
-            </sourceReferences>
-            <archive>
-              <addMavenDescriptor>false</addMavenDescriptor>
-            </archive>
-          </configuration>
-        </plugin>
-      </plugins>
-    </pluginManagement>
-  </build>
-  <profiles>
-    <profile>
-      <id>eclipse-sign</id>
-      <build>
-        <plugins>
-          <plugin>
-            <groupId>org.eclipse.tycho</groupId>
-            <artifactId>target-platform-configuration</artifactId>
-            <version>${tycho.version}</version>
-            <configuration>
-              <includePackedArtifacts>false</includePackedArtifacts>
-            </configuration>
-          </plugin>
-          <plugin>
-            <groupId>org.eclipse.tycho.extras</groupId>
-            <artifactId>tycho-pack200a-plugin</artifactId>
-            <version>${tycho.version}</version>
-            <executions>
-              <execution>
-                <id>pack200-normalize</id>
-                <goals>
-                  <goal>normalize</goal>
-                </goals>
-                <phase>verify</phase>
-              </execution>
-            </executions>
-          </plugin>
-          <plugin>
-            <groupId>org.eclipse.cbi.maven.plugins</groupId>
-            <artifactId>eclipse-jarsigner-plugin</artifactId>
-            <version>${cbi-plugins.version}</version>
-            <executions>
-              <execution>
-                <id>sign</id>
-                <goals>
-                  <goal>sign</goal>
-                </goals>
-                <phase>verify</phase>
-              </execution>
-            </executions>
-          </plugin>
-          <plugin>
-            <groupId>org.eclipse.tycho.extras</groupId>
-            <artifactId>tycho-pack200b-plugin</artifactId>
-            <version>${tycho.version}</version>
-            <executions>
-              <execution>
-                <id>pack200-pack</id>
-                <goals>
-                  <goal>pack</goal>
-                </goals>
-                <phase>verify</phase>
-              </execution>
-            </executions>
-          </plugin>
-          <plugin>
-            <groupId>org.eclipse.tycho</groupId>
-            <artifactId>tycho-p2-plugin</artifactId>
-            <version>${tycho.version}</version>
-            <executions>
-              <execution>
-                <id>p2-metadata</id>
-                <goals>
-                  <goal>p2-metadata</goal>
-                </goals>
-                <phase>verify</phase>
-              </execution>
-            </executions>
-            <configuration>
-              <defaultP2Metadata>false</defaultP2Metadata>
-            </configuration>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-    <profile>
-      <id>eclipse-pack</id>
-      <build>
-        <plugins>
-          <plugin>
-            <groupId>org.eclipse.tycho</groupId>
-            <artifactId>target-platform-configuration</artifactId>
-            <version>${tycho.version}</version>
-            <configuration>
-              <includePackedArtifacts>true</includePackedArtifacts>
-            </configuration>
-          </plugin>
-          <plugin>
-            <groupId>org.eclipse.tycho.extras</groupId>
-            <artifactId>tycho-pack200a-plugin</artifactId>
-            <version>${tycho.version}</version>
-            <executions>
-              <execution>
-                <id>pack200-normalize</id>
-                <goals>
-                  <goal>normalize</goal>
-                </goals>
-              </execution>
-            </executions>
-          </plugin>
-          <plugin>
-            <groupId>org.eclipse.tycho.extras</groupId>
-            <artifactId>tycho-pack200b-plugin</artifactId>
-            <version>${tycho.version}</version>
-            <executions>
-              <execution>
-                <id>pack200-pack</id>
-                <goals>
-                  <goal>pack</goal>
-                </goals>
-              </execution>
-            </executions>
-          </plugin>
-          <plugin>
-            <groupId>org.eclipse.tycho</groupId>
-            <artifactId>tycho-p2-plugin</artifactId>
-            <version>${tycho.version}</version>
-            <executions>
-              <execution>
-                <id>p2-metadata</id>
-                <goals>
-                  <goal>p2-metadata</goal>
-                </goals>
-                <phase>package</phase>
-              </execution>
-            </executions>
-            <configuration>
-              <defaultP2Metadata>false</defaultP2Metadata>
-            </configuration>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-  </profiles>
-</project>
\ No newline at end of file
diff --git a/repository/.gitignore b/repository/.gitignore
deleted file mode 100644
index bb5e943..0000000
--- a/repository/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/bin
-/target
\ No newline at end of file
diff --git a/repository/category.xml b/repository/category.xml
deleted file mode 100644
index 6608984..0000000
--- a/repository/category.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site>
-   <feature url="features/org.eclipse.releng.build.tools.feature_1.0.101.qualifier.jar" id="org.eclipse.releng.build.tools.feature" version="1.0.101.qualifier">
-      <category name="org.eclipse.releng.build.repository"/>
-   </feature>
-   <feature url="features/org.eclipse.releng.build.tools.feature.source_1.0.101.qualifier.jar" id="org.eclipse.releng.build.tools.feature.source" version="1.0.101.qualifier">
-      <category name="org.eclipse.releng.build.repository"/>
-   </feature>
-   <feature url="features/org.eclipse.releng.tools_3.11.100.qualifier.jar" id="org.eclipse.releng.tools" version="3.11.100.qualifier">
-      <category name="org.eclipse.releng.build.repository"/>
-   </feature>
-   <category-def name="org.eclipse.releng.build.repository" label="Build Tools and Ant Tasks"/>
-</site>
diff --git a/repository/pom.xml b/repository/pom.xml
deleted file mode 100644
index 7572d1a..0000000
--- a/repository/pom.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright (c) 2013, 2016 IBM Corporation and others.
- All rights reserved. This program and the accompanying materials
- are made available under the terms of the Eclipse Public License v1.0
- which accompanies this distribution, and is available at
- http://www.eclipse.org/legal/epl-v10.html
-
- Contributors:
-     David Williams - initial implementation
-
--->
-<project
-    xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <artifactId>eclipse.platform.releng.buildtools</artifactId>
-        <groupId>org.eclipse.platform</groupId>
-        <version>1.0.101-SNAPSHOT</version>
-    </parent>
-    <groupId>eclipse.platform.repository</groupId>
-    <artifactId>repository</artifactId>
-    <packaging>eclipse-repository</packaging>
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.eclipse.tycho</groupId>
-                <artifactId>target-platform-configuration</artifactId>
-                <version>${tycho.version}</version>
-                <configuration>
-                    <includePackedArtifacts>true</includePackedArtifacts>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-</project>
\ No newline at end of file