This commit was manufactured by cvs2svn to create tag 'v201205042000'.
diff --git a/features/org.eclipse.jst.enterprise_ui.feature.patch/.cvsignore b/features/org.eclipse.jst.enterprise_ui.feature.patch/.cvsignore
deleted file mode 100644
index dda1b8f..0000000
--- a/features/org.eclipse.jst.enterprise_ui.feature.patch/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-build.xml
-org.eclipse.jst.enterprise_ui.feature.patch_*.jar
diff --git a/features/org.eclipse.jst.enterprise_ui.feature.patch/.project b/features/org.eclipse.jst.enterprise_ui.feature.patch/.project
deleted file mode 100644
index 02a716a..0000000
--- a/features/org.eclipse.jst.enterprise_ui.feature.patch/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jst.enterprise_ui.feature.patch R3_0_1_patches</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/features/org.eclipse.jst.enterprise_ui.feature.patch/build.properties b/features/org.eclipse.jst.enterprise_ui.feature.patch/build.properties
deleted file mode 100644
index cb50260..0000000
--- a/features/org.eclipse.jst.enterprise_ui.feature.patch/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-bin.includes = feature.xml,\
-               license.html,\
-               feature.properties,\
-               epl-v10.html,\
-               eclipse_update_120.jpg
diff --git a/features/org.eclipse.jst.enterprise_ui.feature.patch/buildnotes_org.eclipse.jst.enterprise_ui.feature.patch.html b/features/org.eclipse.jst.enterprise_ui.feature.patch/buildnotes_org.eclipse.jst.enterprise_ui.feature.patch.html
deleted file mode 100644
index 4239d79..0000000
--- a/features/org.eclipse.jst.enterprise_ui.feature.patch/buildnotes_org.eclipse.jst.enterprise_ui.feature.patch.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<meta name="Build" content="Build">
-<title>WTP 3.3.2 Patches</title>
-</head>
-
-<body>
-
-<h1>WTP 3.3.2 Patches</h1>
-
-<h2>org.eclipse.jst.enterprise_ui.feature</h2>
-
-<p>Bug <a href='https://bugs.eclipse.org/371155'>371155</a>. JAX-RS configuration UI should have the Update Deployment descriptor check box available</p>
-<p>Bug <a href='https://bugs.eclipse.org/371660'>371660</a>. Performance issue since dispose method is not being called</p>
-<p>Bug <a href='https://bugs.eclipse.org/376913'>376913</a>. Stability improvements to web services commands/operations - For 3.3.x</p>
-<p>Bug <a href='https://bugs.eclipse.org/377915'>377915</a>. [33x] The JAX-RS install operation config should be updated whenever there are provider set changes</p>
\ No newline at end of file
diff --git a/features/org.eclipse.jst.enterprise_ui.feature.patch/eclipse_update_120.jpg b/features/org.eclipse.jst.enterprise_ui.feature.patch/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708..0000000
--- a/features/org.eclipse.jst.enterprise_ui.feature.patch/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/features/org.eclipse.jst.enterprise_ui.feature.patch/epl-v10.html b/features/org.eclipse.jst.enterprise_ui.feature.patch/epl-v10.html
deleted file mode 100644
index fd39122..0000000
--- a/features/org.eclipse.jst.enterprise_ui.feature.patch/epl-v10.html
+++ /dev/null
@@ -1,261 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-<title>Eclipse Public License - Version 1.0</title>
-<style type="text/css">
-  body {
-    size: 8.5in 11.0in;
-    margin: 0.25in 0.5in 0.25in 0.5in;
-    tab-interval: 0.5in;
-    }
-  p {  	
-    margin-left: auto;
-    margin-top:  0.5em;
-    margin-bottom: 0.5em;
-    }
-  p.list {
-  	margin-left: 0.5in;
-    margin-top:  0.05em;
-    margin-bottom: 0.05em;
-    }
-  </style>
-
-</head>
-
-<body lang="EN-US">
-
-<h2>Eclipse Public License - v 1.0</h2>
-
-<p>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
-PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE, REPRODUCTION OR
-DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS
-AGREEMENT.</p>
-
-<p><b>1. DEFINITIONS</b></p>
-
-<p>&quot;Contribution&quot; means:</p>
-
-<p class="list">a) in the case of the initial Contributor, the initial
-code and documentation distributed under this Agreement, and</p>
-<p class="list">b) in the case of each subsequent Contributor:</p>
-<p class="list">i) changes to the Program, and</p>
-<p class="list">ii) additions to the Program;</p>
-<p class="list">where such changes and/or additions to the Program
-originate from and are distributed by that particular Contributor. A
-Contribution 'originates' from a Contributor if it was added to the
-Program by such Contributor itself or anyone acting on such
-Contributor's behalf. Contributions do not include additions to the
-Program which: (i) are separate modules of software distributed in
-conjunction with the Program under their own license agreement, and (ii)
-are not derivative works of the Program.</p>
-
-<p>&quot;Contributor&quot; means any person or entity that distributes
-the Program.</p>
-
-<p>&quot;Licensed Patents&quot; mean patent claims licensable by a
-Contributor which are necessarily infringed by the use or sale of its
-Contribution alone or when combined with the Program.</p>
-
-<p>&quot;Program&quot; means the Contributions distributed in accordance
-with this Agreement.</p>
-
-<p>&quot;Recipient&quot; means anyone who receives the Program under
-this Agreement, including all Contributors.</p>
-
-<p><b>2. GRANT OF RIGHTS</b></p>
-
-<p class="list">a) Subject to the terms of this Agreement, each
-Contributor hereby grants Recipient a non-exclusive, worldwide,
-royalty-free copyright license to reproduce, prepare derivative works
-of, publicly display, publicly perform, distribute and sublicense the
-Contribution of such Contributor, if any, and such derivative works, in
-source code and object code form.</p>
-
-<p class="list">b) Subject to the terms of this Agreement, each
-Contributor hereby grants Recipient a non-exclusive, worldwide,
-royalty-free patent license under Licensed Patents to make, use, sell,
-offer to sell, import and otherwise transfer the Contribution of such
-Contributor, if any, in source code and object code form. This patent
-license shall apply to the combination of the Contribution and the
-Program if, at the time the Contribution is added by the Contributor,
-such addition of the Contribution causes such combination to be covered
-by the Licensed Patents. The patent license shall not apply to any other
-combinations which include the Contribution. No hardware per se is
-licensed hereunder.</p>
-
-<p class="list">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.</p>
-
-<p class="list">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.</p>
-
-<p><b>3. REQUIREMENTS</b></p>
-
-<p>A Contributor may choose to distribute the Program in object code
-form under its own license agreement, provided that:</p>
-
-<p class="list">a) it complies with the terms and conditions of this
-Agreement; and</p>
-
-<p class="list">b) its license agreement:</p>
-
-<p class="list">i) effectively disclaims on behalf of all Contributors
-all warranties and conditions, express and implied, including warranties
-or conditions of title and non-infringement, and implied warranties or
-conditions of merchantability and fitness for a particular purpose;</p>
-
-<p class="list">ii) effectively excludes on behalf of all Contributors
-all liability for damages, including direct, indirect, special,
-incidental and consequential damages, such as lost profits;</p>
-
-<p class="list">iii) states that any provisions which differ from this
-Agreement are offered by that Contributor alone and not by any other
-party; and</p>
-
-<p class="list">iv) states that source code for the Program is available
-from such Contributor, and informs licensees how to obtain it in a
-reasonable manner on or through a medium customarily used for software
-exchange.</p>
-
-<p>When the Program is made available in source code form:</p>
-
-<p class="list">a) it must be made available under this Agreement; and</p>
-
-<p class="list">b) a copy of this Agreement must be included with each
-copy of the Program.</p>
-
-<p>Contributors may not remove or alter any copyright notices contained
-within the Program.</p>
-
-<p>Each Contributor must identify itself as the originator of its
-Contribution, if any, in a manner that reasonably allows subsequent
-Recipients to identify the originator of the Contribution.</p>
-
-<p><b>4. COMMERCIAL DISTRIBUTION</b></p>
-
-<p>Commercial distributors of software may accept certain
-responsibilities with respect to end users, business partners and the
-like. While this license is intended to facilitate the commercial use of
-the Program, the Contributor who includes the Program in a commercial
-product offering should do so in a manner which does not create
-potential liability for other Contributors. Therefore, if a Contributor
-includes the Program in a commercial product offering, such Contributor
-(&quot;Commercial Contributor&quot;) hereby agrees to defend and
-indemnify every other Contributor (&quot;Indemnified Contributor&quot;)
-against any losses, damages and costs (collectively &quot;Losses&quot;)
-arising from claims, lawsuits and other legal actions brought by a third
-party against the Indemnified Contributor to the extent caused by the
-acts or omissions of such Commercial Contributor in connection with its
-distribution of the Program in a commercial product offering. The
-obligations in this section do not apply to any claims or Losses
-relating to any actual or alleged intellectual property infringement. In
-order to qualify, an Indemnified Contributor must: a) promptly notify
-the Commercial Contributor in writing of such claim, and b) allow the
-Commercial Contributor to control, and cooperate with the Commercial
-Contributor in, the defense and any related settlement negotiations. The
-Indemnified Contributor may participate in any such claim at its own
-expense.</p>
-
-<p>For example, a Contributor might include the Program in a commercial
-product offering, Product X. That Contributor is then a Commercial
-Contributor. If that Commercial Contributor then makes performance
-claims, or offers warranties related to Product X, those performance
-claims and warranties are such Commercial Contributor's responsibility
-alone. Under this section, the Commercial Contributor would have to
-defend claims against the other Contributors related to those
-performance claims and warranties, and if a court requires any other
-Contributor to pay any damages as a result, the Commercial Contributor
-must pay those damages.</p>
-
-<p><b>5. NO WARRANTY</b></p>
-
-<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
-PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS
-OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION,
-ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
-OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
-responsible for determining the appropriateness of using and
-distributing the Program and assumes all risks associated with its
-exercise of rights under this Agreement , including but not limited to
-the risks and costs of program errors, compliance with applicable laws,
-damage to or loss of data, programs or equipment, and unavailability or
-interruption of operations.</p>
-
-<p><b>6. DISCLAIMER OF LIABILITY</b></p>
-
-<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT
-NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
-INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
-WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
-DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
-HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.</p>
-
-<p><b>7. GENERAL</b></p>
-
-<p>If any provision of this Agreement is invalid or unenforceable under
-applicable law, it shall not affect the validity or enforceability of
-the remainder of the terms of this Agreement, and without further action
-by the parties hereto, such provision shall be reformed to the minimum
-extent necessary to make such provision valid and enforceable.</p>
-
-<p>If Recipient institutes patent litigation against any entity
-(including a cross-claim or counterclaim in a lawsuit) alleging that the
-Program itself (excluding combinations of the Program with other
-software or hardware) infringes such Recipient's patent(s), then such
-Recipient's rights granted under Section 2(b) shall terminate as of the
-date such litigation is filed.</p>
-
-<p>All Recipient's rights under this Agreement shall terminate if it
-fails to comply with any of the material terms or conditions of this
-Agreement and does not cure such failure in a reasonable period of time
-after becoming aware of such noncompliance. If all Recipient's rights
-under this Agreement terminate, Recipient agrees to cease use and
-distribution of the Program as soon as reasonably practicable. However,
-Recipient's obligations under this Agreement and any licenses granted by
-Recipient relating to the Program shall continue and survive.</p>
-
-<p>Everyone is permitted to copy and distribute copies of this
-Agreement, but in order to avoid inconsistency the Agreement is
-copyrighted and may only be modified in the following manner. The
-Agreement Steward reserves the right to publish new versions (including
-revisions) of this Agreement from time to time. No one other than the
-Agreement Steward has the right to modify this Agreement. 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.</p>
-
-<p>This Agreement is governed by the laws of the State of New York and
-the intellectual property laws of the United States of America. No party
-to this Agreement will bring a legal action under this Agreement more
-than one year after the cause of action arose. Each party waives its
-rights to a jury trial in any resulting litigation.</p>
-
-</body>
-
-</html>
diff --git a/features/org.eclipse.jst.enterprise_ui.feature.patch/feature.properties b/features/org.eclipse.jst.enterprise_ui.feature.patch/feature.properties
deleted file mode 100644
index 044ac4a..0000000
--- a/features/org.eclipse.jst.enterprise_ui.feature.patch/feature.properties
+++ /dev/null
@@ -1,178 +0,0 @@
-###############################################################################
-# Copyright (c) 2008 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
-###############################################################################
-# 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=WTP Patches for org.eclipse.jst.enterprise_ui.feature
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse Web Tools Platform
-
-# "updateSiteName" property - label for the update site
-updateSiteName=The Eclipse Web Tools Platform (WTP) Project update site
-
-# "description" property - description of the feature
-description=\n\
-\n\
-The fixes are described in the following bugzilla entries:\n\
-\n\
-Bug https://bugs.eclipse.org/371155 JAX-RS configuration UI should have the Update Deployment descriptor check box available\n\
-Bug https://bugs.eclipse.org/371660 Performance issue since dispose method is not being called\n\
-Bug https://bugs.eclipse.org/376913 Stability improvements to web services commands/operations - For 3.3.x\n\
-Bug https://bugs.eclipse.org/377915 [33x] The JAX-RS install operation config should be updated whenever there are provider set changes\n\
-\n\
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2010 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
-################ end of copyright property ####################################
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-Eclipse Foundation Software User Agreement\n\
-February 1, 2011\n\
-\n\
-Usage Of Content\n\
-\n\
-THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW.  BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW.  IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by the\n\
-Eclipse Foundation is provided to you under the terms and conditions of\n\
-the Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is\n\
-provided with this Content and is also available at http://www.eclipse.org/legal/epl-v10.html.\n\
-For purposes of the EPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse Foundation source code\n\
-repository ("Repository") in software modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-       - Content may be structured and packaged into modules to facilitate delivering,\n\
-         extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"),\n\
-         plug-in fragments ("Fragments"), and features ("Features").\n\
-       - Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java(TM) ARchive)\n\
-         in a directory named "plugins".\n\
-       - A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.\n\
-         Each Feature may be packaged as a sub-directory in a directory named "features".\n\
-         Within a Feature, files named "feature.xml" may contain a list of the names and version\n\
-         numbers of the Plug-ins and/or Fragments associated with that Feature.\n\
-       - Features may also include other Features ("Included Features"). Within a Feature, files\n\
-         named "feature.xml" may contain a list of the names and version numbers of Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-       - The top-level (root) directory\n\
-       - Plug-in and Fragment directories\n\
-       - Inside Plug-ins and Fragments packaged as JARs\n\
-       - Sub-directories of the directory named "src" of certain Plug-ins\n\
-       - Feature directories\n\
-\n\
-Note: if a Feature made available by the Eclipse Foundation is installed using the\n\
-Provisioning Technology (as defined below), you must agree to a license ("Feature \n\
-Update License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties" found within a Feature.\n\
-Such Abouts, Feature Licenses, and Feature Update Licenses contain the\n\
-terms and conditions (or references to such terms and conditions) that\n\
-govern your use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-       - Eclipse Distribution License Version 1.0 (available at http://www.eclipse.org/licenses/edl-v1.0.html)\n\
-       - Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)\n\
-       - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-       - Apache Software License 2.0 (available at http://www.apache.org/licenses/LICENSE-2.0)\n\
-       - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-       - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License\n\
-is provided, please contact the Eclipse Foundation to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-\n\Use of Provisioning Technology\n\
-\n\
-The Eclipse Foundation makes available provisioning software, examples of which include,\n\
-but are not limited to, p2 and the Eclipse Update Manager ("Provisioning Technology") for\n\
-the purpose of allowing users to install software, documentation, information and/or\n\
-other materials (collectively "Installable Software"). This capability is provided with\n\
-the intent of allowing such users to install, extend and update Eclipse-based products.\n\
-Information about packaging Installable Software is available at\n\
-http://eclipse.org/equinox/p2/repository_packaging.html ("Specification").\n\
-\n\
-You may use Provisioning Technology to allow other parties to install Installable Software.\n\
-You shall be responsible for enabling the applicable license agreements relating to the\n\
-Installable Software to be presented to, and accepted by, the users of the Provisioning Technology\n\
-in accordance with the Specification. By using Provisioning Technology in such a manner and\n\
-making it available in accordance with the Specification, you further acknowledge your\n\
-agreement to, and the acquisition of all necessary rights to permit the following:\n\
-\n\
-       1. A series of actions may occur ("Provisioning Process") in which a user may execute\n\
-          the Provisioning Technology on a machine ("Target Machine") with the intent of installing,\n\
-          extending or updating the functionality of an Eclipse-based product.\n\
-       2. During the Provisioning Process, the Provisioning Technology may cause third party\n\
-          Installable Software or a portion thereof to be accessed and copied to the Target Machine.\n\
-       3. Pursuant to the Specification, you will provide to the user the terms and conditions that\n\
-          govern the use of the Installable Software ("Installable Software Agreement") and such\n\
-          Installable Software Agreement shall be accessed from the Target Machine in accordance\n\
-          with the Specification. Such Installable Software Agreement must inform the user of the\n\
-          terms and conditions that govern the Installable Software and must solicit acceptance by\n\
-          the end user in the manner prescribed in such Installable Software Agreement. Upon such\n\
-          indication of agreement by the user, the provisioning Technology will complete installation\n\
-          of the Installable Software.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use, and\n\
-re-export of encryption software, to see if this is permitted.\n\
-\n\
-Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.\n
-########### end of license property ##########################################
diff --git a/features/org.eclipse.jst.enterprise_ui.feature.patch/feature.xml b/features/org.eclipse.jst.enterprise_ui.feature.patch/feature.xml
deleted file mode 100644
index b6ff7bf..0000000
--- a/features/org.eclipse.jst.enterprise_ui.feature.patch/feature.xml
+++ /dev/null
@@ -1,66 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="org.eclipse.jst.enterprise_ui.feature.patch"
-      label="%featureName"
-      version="3.3.2.qualifier"
-      provider-name="%providerName">
-
-   <description>
-      %description
-   </description>
-
-   <copyright>
-      %copyright
-   </copyright>
-
-   <license url="%licenseURL">
-      %license
-   </license>
-
-   <requires>
-      <import feature="org.eclipse.jst.enterprise_ui.feature" version="3.3.2.v201111030500-7b7II1YFSK2WIuPRDEnExPV-RvTn" patch="true"/>
-   </requires>
-
-   <plugin
-         id="org.eclipse.jst.ws.axis.creation.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jst.ws.axis.consumption.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jst.ws.consumption.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jst.ws.consumption"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jst.ws.jaxrs.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jst.ws.jaxrs.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-</feature>
diff --git a/features/org.eclipse.jst.enterprise_ui.feature.patch/license.html b/features/org.eclipse.jst.enterprise_ui.feature.patch/license.html
deleted file mode 100644
index f19c483..0000000
--- a/features/org.eclipse.jst.enterprise_ui.feature.patch/license.html
+++ /dev/null
@@ -1,108 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1" ?>
-<!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>Eclipse Foundation Software User Agreement</title>
-</head>
-
-<body lang="EN-US">
-<h2>Eclipse Foundation Software User Agreement</h2>
-<p>February 1, 2011</p>
-
-<h3>Usage Of Content</h3>
-
-<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
-   (COLLECTIVELY &quot;CONTENT&quot;).  USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
-   CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW.  BY USING THE CONTENT, YOU AGREE THAT YOUR USE
-   OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
-   NOTICES INDICATED OR REFERENCED BELOW.  IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
-   CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
-
-<h3>Applicable Licenses</h3>
-
-<p>Unless otherwise indicated, all Content made available by the Eclipse Foundation 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 provided with this Content and is also 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>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse Foundation source code
-   repository (&quot;Repository&quot;) in software modules (&quot;Modules&quot;) and made available as downloadable archives (&quot;Downloads&quot;).</p>
-
-<ul>
-       <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content.  Typical modules may include plug-ins (&quot;Plug-ins&quot;), plug-in fragments (&quot;Fragments&quot;), and features (&quot;Features&quot;).</li>
-       <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&trade; ARchive) in a directory named &quot;plugins&quot;.</li>
-       <li>A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.  Each Feature may be packaged as a sub-directory in a directory named &quot;features&quot;.  Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of the Plug-ins
-      and/or Fragments associated with that Feature.</li>
-       <li>Features may also include other Features (&quot;Included Features&quot;). Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of Included Features.</li>
-</ul>
-
-<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named &quot;about.html&quot; (&quot;Abouts&quot;). The terms and conditions governing Features and
-Included Features should be contained in files named &quot;license.html&quot; (&quot;Feature Licenses&quot;).  Abouts and Feature Licenses may be located in any directory of a Download or Module
-including, but not limited to the following locations:</p>
-
-<ul>
-       <li>The top-level (root) directory</li>
-       <li>Plug-in and Fragment directories</li>
-       <li>Inside Plug-ins and Fragments packaged as JARs</li>
-       <li>Sub-directories of the directory named &quot;src&quot; of certain Plug-ins</li>
-       <li>Feature directories</li>
-</ul>
-
-<p>Note: if a Feature made available by the Eclipse Foundation is installed using the Provisioning Technology (as defined below), you must agree to a license (&quot;Feature Update License&quot;) during the
-installation process.  If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or
-inform you where you can locate them.  Feature Update Licenses may be found in the &quot;license&quot; property of files named &quot;feature.properties&quot; found within a Feature.
-Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in
-that directory.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
-       <li>Eclipse Distribution License Version 1.0 (available at <a href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>)</li>
-       <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
-       <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-       <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
-       <li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-       <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT.  If no About, Feature License, or Feature Update License is provided, please
-contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.</p>
-
-
-<h3>Use of Provisioning Technology</h3>
-
-<p>The Eclipse Foundation makes available provisioning software, examples of which include, but are not limited to, p2 and the Eclipse
-   Update Manager (&quot;Provisioning Technology&quot;) for the purpose of allowing users to install software, documentation, information and/or
-   other materials (collectively &quot;Installable Software&quot;). This capability is provided with the intent of allowing such users to
-   install, extend and update Eclipse-based products. Information about packaging Installable Software is available at <a
-       href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
-   (&quot;Specification&quot;).</p>
-
-<p>You may use Provisioning Technology to allow other parties to install Installable Software. You shall be responsible for enabling the
-   applicable license agreements relating to the Installable Software to be presented to, and accepted by, the users of the Provisioning Technology
-   in accordance with the Specification. By using Provisioning Technology in such a manner and making it available in accordance with the
-   Specification, you further acknowledge your agreement to, and the acquisition of all necessary rights to permit the following:</p>
-
-<ol>
-       <li>A series of actions may occur (&quot;Provisioning Process&quot;) in which a user may execute the Provisioning Technology
-       on a machine (&quot;Target Machine&quot;) with the intent of installing, extending or updating the functionality of an Eclipse-based
-       product.</li>
-       <li>During the Provisioning Process, the Provisioning Technology may cause third party Installable Software or a portion thereof to be
-       accessed and copied to the Target Machine.</li>
-       <li>Pursuant to the Specification, you will provide to the user the terms and conditions that govern the use of the Installable
-       Software (&quot;Installable Software Agreement&quot;) and such Installable Software Agreement shall be accessed from the Target
-       Machine in accordance with the Specification. Such Installable Software Agreement must inform the user of the terms and conditions that govern
-       the Installable Software and must solicit acceptance by the end user in the manner prescribed in such Installable Software Agreement. Upon such
-       indication of agreement by the user, the provisioning Technology will complete installation of the Installable Software.</li>
-</ol>
-
-<h3>Cryptography</h3>
-
-<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to
-   another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import,
-   possession, or use, and re-export of encryption software, to see if this is permitted.</p>
-
-<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p>
-</body>
-</html>
diff --git a/features/org.eclipse.jst.web_core.feature.patch/.cvsignore b/features/org.eclipse.jst.web_core.feature.patch/.cvsignore
deleted file mode 100644
index b1d6d30..0000000
--- a/features/org.eclipse.jst.web_core.feature.patch/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-build.xml
-feature.temp.folder
diff --git a/features/org.eclipse.jst.web_core.feature.patch/.project b/features/org.eclipse.jst.web_core.feature.patch/.project
deleted file mode 100644
index bb92db6..0000000
--- a/features/org.eclipse.jst.web_core.feature.patch/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jst.web_core.feature.patch</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.FeatureBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.FeatureNature</nature>
-	</natures>
-</projectDescription>
diff --git a/features/org.eclipse.jst.web_core.feature.patch/build.properties b/features/org.eclipse.jst.web_core.feature.patch/build.properties
deleted file mode 100644
index cb50260..0000000
--- a/features/org.eclipse.jst.web_core.feature.patch/build.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-bin.includes = feature.xml,\
-               license.html,\
-               feature.properties,\
-               epl-v10.html,\
-               eclipse_update_120.jpg
diff --git a/features/org.eclipse.jst.web_core.feature.patch/buildnotes_org.eclipse.jst.web_core.feature.patch.html b/features/org.eclipse.jst.web_core.feature.patch/buildnotes_org.eclipse.jst.web_core.feature.patch.html
deleted file mode 100644
index fd260b4..0000000
--- a/features/org.eclipse.jst.web_core.feature.patch/buildnotes_org.eclipse.jst.web_core.feature.patch.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<meta name="Build" content="Build">
-<title>Web Tools Platform Patch Build Notes</title>
-</head>
-
-<body>
-
-<h1>WTP 3.3.2 Patches</h1>
-
-<h2>org.eclipse.jst.web_core.feature</h2>
-
-<p>Bug <a href='https://bugs.eclipse.org/373136'>373136</a>. Always separate the Java Output Folder from the Java Source Folder</p>
-<p>Bug <a href='https://bugs.eclipse.org/373210'>373210</a>. J2EEFlexProjDeployable.isSingleRootStructure() always returns false for an EAR</p>
-<p>Bug <a href='https://bugs.eclipse.org/373402'>373402</a>. NPE in ClasspathDependencyUtil when classpath container returns null for entries</p>
-<p>Bug <a href='https://bugs.eclipse.org/376504'>376504</a>. Incorrect error message on RAR/App Client Jar Import Wizard</p>
-<p>Bug <a href='https://bugs.eclipse.org/378507'>378507</a>. NPE when exporting an EAR if one of the modules is out of synch</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/features/org.eclipse.jst.web_core.feature.patch/eclipse_update_120.jpg b/features/org.eclipse.jst.web_core.feature.patch/eclipse_update_120.jpg
deleted file mode 100644
index bfdf708..0000000
--- a/features/org.eclipse.jst.web_core.feature.patch/eclipse_update_120.jpg
+++ /dev/null
Binary files differ
diff --git a/features/org.eclipse.jst.web_core.feature.patch/epl-v10.html b/features/org.eclipse.jst.web_core.feature.patch/epl-v10.html
deleted file mode 100644
index fd39122..0000000
--- a/features/org.eclipse.jst.web_core.feature.patch/epl-v10.html
+++ /dev/null
@@ -1,261 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
-<title>Eclipse Public License - Version 1.0</title>
-<style type="text/css">
-  body {
-    size: 8.5in 11.0in;
-    margin: 0.25in 0.5in 0.25in 0.5in;
-    tab-interval: 0.5in;
-    }
-  p {  	
-    margin-left: auto;
-    margin-top:  0.5em;
-    margin-bottom: 0.5em;
-    }
-  p.list {
-  	margin-left: 0.5in;
-    margin-top:  0.05em;
-    margin-bottom: 0.05em;
-    }
-  </style>
-
-</head>
-
-<body lang="EN-US">
-
-<h2>Eclipse Public License - v 1.0</h2>
-
-<p>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
-PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE, REPRODUCTION OR
-DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS
-AGREEMENT.</p>
-
-<p><b>1. DEFINITIONS</b></p>
-
-<p>&quot;Contribution&quot; means:</p>
-
-<p class="list">a) in the case of the initial Contributor, the initial
-code and documentation distributed under this Agreement, and</p>
-<p class="list">b) in the case of each subsequent Contributor:</p>
-<p class="list">i) changes to the Program, and</p>
-<p class="list">ii) additions to the Program;</p>
-<p class="list">where such changes and/or additions to the Program
-originate from and are distributed by that particular Contributor. A
-Contribution 'originates' from a Contributor if it was added to the
-Program by such Contributor itself or anyone acting on such
-Contributor's behalf. Contributions do not include additions to the
-Program which: (i) are separate modules of software distributed in
-conjunction with the Program under their own license agreement, and (ii)
-are not derivative works of the Program.</p>
-
-<p>&quot;Contributor&quot; means any person or entity that distributes
-the Program.</p>
-
-<p>&quot;Licensed Patents&quot; mean patent claims licensable by a
-Contributor which are necessarily infringed by the use or sale of its
-Contribution alone or when combined with the Program.</p>
-
-<p>&quot;Program&quot; means the Contributions distributed in accordance
-with this Agreement.</p>
-
-<p>&quot;Recipient&quot; means anyone who receives the Program under
-this Agreement, including all Contributors.</p>
-
-<p><b>2. GRANT OF RIGHTS</b></p>
-
-<p class="list">a) Subject to the terms of this Agreement, each
-Contributor hereby grants Recipient a non-exclusive, worldwide,
-royalty-free copyright license to reproduce, prepare derivative works
-of, publicly display, publicly perform, distribute and sublicense the
-Contribution of such Contributor, if any, and such derivative works, in
-source code and object code form.</p>
-
-<p class="list">b) Subject to the terms of this Agreement, each
-Contributor hereby grants Recipient a non-exclusive, worldwide,
-royalty-free patent license under Licensed Patents to make, use, sell,
-offer to sell, import and otherwise transfer the Contribution of such
-Contributor, if any, in source code and object code form. This patent
-license shall apply to the combination of the Contribution and the
-Program if, at the time the Contribution is added by the Contributor,
-such addition of the Contribution causes such combination to be covered
-by the Licensed Patents. The patent license shall not apply to any other
-combinations which include the Contribution. No hardware per se is
-licensed hereunder.</p>
-
-<p class="list">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.</p>
-
-<p class="list">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.</p>
-
-<p><b>3. REQUIREMENTS</b></p>
-
-<p>A Contributor may choose to distribute the Program in object code
-form under its own license agreement, provided that:</p>
-
-<p class="list">a) it complies with the terms and conditions of this
-Agreement; and</p>
-
-<p class="list">b) its license agreement:</p>
-
-<p class="list">i) effectively disclaims on behalf of all Contributors
-all warranties and conditions, express and implied, including warranties
-or conditions of title and non-infringement, and implied warranties or
-conditions of merchantability and fitness for a particular purpose;</p>
-
-<p class="list">ii) effectively excludes on behalf of all Contributors
-all liability for damages, including direct, indirect, special,
-incidental and consequential damages, such as lost profits;</p>
-
-<p class="list">iii) states that any provisions which differ from this
-Agreement are offered by that Contributor alone and not by any other
-party; and</p>
-
-<p class="list">iv) states that source code for the Program is available
-from such Contributor, and informs licensees how to obtain it in a
-reasonable manner on or through a medium customarily used for software
-exchange.</p>
-
-<p>When the Program is made available in source code form:</p>
-
-<p class="list">a) it must be made available under this Agreement; and</p>
-
-<p class="list">b) a copy of this Agreement must be included with each
-copy of the Program.</p>
-
-<p>Contributors may not remove or alter any copyright notices contained
-within the Program.</p>
-
-<p>Each Contributor must identify itself as the originator of its
-Contribution, if any, in a manner that reasonably allows subsequent
-Recipients to identify the originator of the Contribution.</p>
-
-<p><b>4. COMMERCIAL DISTRIBUTION</b></p>
-
-<p>Commercial distributors of software may accept certain
-responsibilities with respect to end users, business partners and the
-like. While this license is intended to facilitate the commercial use of
-the Program, the Contributor who includes the Program in a commercial
-product offering should do so in a manner which does not create
-potential liability for other Contributors. Therefore, if a Contributor
-includes the Program in a commercial product offering, such Contributor
-(&quot;Commercial Contributor&quot;) hereby agrees to defend and
-indemnify every other Contributor (&quot;Indemnified Contributor&quot;)
-against any losses, damages and costs (collectively &quot;Losses&quot;)
-arising from claims, lawsuits and other legal actions brought by a third
-party against the Indemnified Contributor to the extent caused by the
-acts or omissions of such Commercial Contributor in connection with its
-distribution of the Program in a commercial product offering. The
-obligations in this section do not apply to any claims or Losses
-relating to any actual or alleged intellectual property infringement. In
-order to qualify, an Indemnified Contributor must: a) promptly notify
-the Commercial Contributor in writing of such claim, and b) allow the
-Commercial Contributor to control, and cooperate with the Commercial
-Contributor in, the defense and any related settlement negotiations. The
-Indemnified Contributor may participate in any such claim at its own
-expense.</p>
-
-<p>For example, a Contributor might include the Program in a commercial
-product offering, Product X. That Contributor is then a Commercial
-Contributor. If that Commercial Contributor then makes performance
-claims, or offers warranties related to Product X, those performance
-claims and warranties are such Commercial Contributor's responsibility
-alone. Under this section, the Commercial Contributor would have to
-defend claims against the other Contributors related to those
-performance claims and warranties, and if a court requires any other
-Contributor to pay any damages as a result, the Commercial Contributor
-must pay those damages.</p>
-
-<p><b>5. NO WARRANTY</b></p>
-
-<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
-PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS
-OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION,
-ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
-OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
-responsible for determining the appropriateness of using and
-distributing the Program and assumes all risks associated with its
-exercise of rights under this Agreement , including but not limited to
-the risks and costs of program errors, compliance with applicable laws,
-damage to or loss of data, programs or equipment, and unavailability or
-interruption of operations.</p>
-
-<p><b>6. DISCLAIMER OF LIABILITY</b></p>
-
-<p>EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT
-NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
-INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
-WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
-DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
-HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.</p>
-
-<p><b>7. GENERAL</b></p>
-
-<p>If any provision of this Agreement is invalid or unenforceable under
-applicable law, it shall not affect the validity or enforceability of
-the remainder of the terms of this Agreement, and without further action
-by the parties hereto, such provision shall be reformed to the minimum
-extent necessary to make such provision valid and enforceable.</p>
-
-<p>If Recipient institutes patent litigation against any entity
-(including a cross-claim or counterclaim in a lawsuit) alleging that the
-Program itself (excluding combinations of the Program with other
-software or hardware) infringes such Recipient's patent(s), then such
-Recipient's rights granted under Section 2(b) shall terminate as of the
-date such litigation is filed.</p>
-
-<p>All Recipient's rights under this Agreement shall terminate if it
-fails to comply with any of the material terms or conditions of this
-Agreement and does not cure such failure in a reasonable period of time
-after becoming aware of such noncompliance. If all Recipient's rights
-under this Agreement terminate, Recipient agrees to cease use and
-distribution of the Program as soon as reasonably practicable. However,
-Recipient's obligations under this Agreement and any licenses granted by
-Recipient relating to the Program shall continue and survive.</p>
-
-<p>Everyone is permitted to copy and distribute copies of this
-Agreement, but in order to avoid inconsistency the Agreement is
-copyrighted and may only be modified in the following manner. The
-Agreement Steward reserves the right to publish new versions (including
-revisions) of this Agreement from time to time. No one other than the
-Agreement Steward has the right to modify this Agreement. 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.</p>
-
-<p>This Agreement is governed by the laws of the State of New York and
-the intellectual property laws of the United States of America. No party
-to this Agreement will bring a legal action under this Agreement more
-than one year after the cause of action arose. Each party waives its
-rights to a jury trial in any resulting litigation.</p>
-
-</body>
-
-</html>
diff --git a/features/org.eclipse.jst.web_core.feature.patch/feature.properties b/features/org.eclipse.jst.web_core.feature.patch/feature.properties
deleted file mode 100644
index 62e331b..0000000
--- a/features/org.eclipse.jst.web_core.feature.patch/feature.properties
+++ /dev/null
@@ -1,178 +0,0 @@
-###############################################################################
-# Copyright (c) 2008 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
-###############################################################################
-# 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=WTP Patches for org.eclipse.jst.web_core.feature
-
-# "providerName" property - name of the company that provides the feature
-providerName=Eclipse Web Tools Platform
-
-# "updateSiteName" property - label for the update site
-updateSiteName=The Eclipse Web Tools Platform (WTP) Project update site
-
-# "description" property - description of the feature
-description=\
-The bugs and fixes are described in the following bugzilla entries:\n\
-\n\
-Bug https://bugs.eclipse.org/373136 Always separate the Java Output Folder from the Java Source Folder\n\
-Bug https://bugs.eclipse.org/373210 J2EEFlexProjDeployable.isSingleRootStructure() always returns false for an EAR\n\
-Bug https://bugs.eclipse.org/373402 NPE in ClasspathDependencyUtil when classpath container returns null for entries\n\
-Bug https://bugs.eclipse.org/376504 Incorrect error message on RAR/App Client Jar Import Wizard\n\
-Bug https://bugs.eclipse.org/378507 NPE when exporting an EAR if one of the modules is out of synch\n\
-\n\
-# "copyright" property - text of the "Feature Update Copyright"
-copyright=\
-Copyright (c) 2010 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
-################ end of copyright property ####################################
-
-# "licenseURL" property - URL of the "Feature License"
-# do not translate value - just change to point to a locale-specific HTML page
-licenseURL=license.html
-
-# "license" property - text of the "Feature Update License"
-# should be plain text version of license agreement pointed to be "licenseURL"
-license=\
-Eclipse Foundation Software User Agreement\n\
-February 1, 2011\n\
-\n\
-Usage Of Content\n\
-\n\
-THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
-OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
-USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
-AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
-NOTICES INDICATED OR REFERENCED BELOW.  BY USING THE CONTENT, YOU\n\
-AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
-AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
-OR NOTICES INDICATED OR REFERENCED BELOW.  IF YOU DO NOT AGREE TO THE\n\
-TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
-OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
-BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
-\n\
-Applicable Licenses\n\
-\n\
-Unless otherwise indicated, all Content made available by the\n\
-Eclipse Foundation is provided to you under the terms and conditions of\n\
-the Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is\n\
-provided with this Content and is also available at http://www.eclipse.org/legal/epl-v10.html.\n\
-For purposes of the EPL, "Program" will mean the Content.\n\
-\n\
-Content includes, but is not limited to, source code, object code,\n\
-documentation and other files maintained in the Eclipse Foundation source code\n\
-repository ("Repository") in software modules ("Modules") and made available\n\
-as downloadable archives ("Downloads").\n\
-\n\
-       - Content may be structured and packaged into modules to facilitate delivering,\n\
-         extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"),\n\
-         plug-in fragments ("Fragments"), and features ("Features").\n\
-       - Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java(TM) ARchive)\n\
-         in a directory named "plugins".\n\
-       - A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.\n\
-         Each Feature may be packaged as a sub-directory in a directory named "features".\n\
-         Within a Feature, files named "feature.xml" may contain a list of the names and version\n\
-         numbers of the Plug-ins and/or Fragments associated with that Feature.\n\
-       - Features may also include other Features ("Included Features"). Within a Feature, files\n\
-         named "feature.xml" may contain a list of the names and version numbers of Included Features.\n\
-\n\
-The terms and conditions governing Plug-ins and Fragments should be\n\
-contained in files named "about.html" ("Abouts"). The terms and\n\
-conditions governing Features and Included Features should be contained\n\
-in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
-Licenses may be located in any directory of a Download or Module\n\
-including, but not limited to the following locations:\n\
-\n\
-       - The top-level (root) directory\n\
-       - Plug-in and Fragment directories\n\
-       - Inside Plug-ins and Fragments packaged as JARs\n\
-       - Sub-directories of the directory named "src" of certain Plug-ins\n\
-       - Feature directories\n\
-\n\
-Note: if a Feature made available by the Eclipse Foundation is installed using the\n\
-Provisioning Technology (as defined below), you must agree to a license ("Feature \n\
-Update License") during the installation process. If the Feature contains\n\
-Included Features, the Feature Update License should either provide you\n\
-with the terms and conditions governing the Included Features or inform\n\
-you where you can locate them. Feature Update Licenses may be found in\n\
-the "license" property of files named "feature.properties" found within a Feature.\n\
-Such Abouts, Feature Licenses, and Feature Update Licenses contain the\n\
-terms and conditions (or references to such terms and conditions) that\n\
-govern your use of the associated Content in that directory.\n\
-\n\
-THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER\n\
-TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
-SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
-\n\
-       - Eclipse Distribution License Version 1.0 (available at http://www.eclipse.org/licenses/edl-v1.0.html)\n\
-       - Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)\n\
-       - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
-       - Apache Software License 2.0 (available at http://www.apache.org/licenses/LICENSE-2.0)\n\
-       - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
-       - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
-\n\
-IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
-TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License\n\
-is provided, please contact the Eclipse Foundation to determine what terms and conditions\n\
-govern that particular Content.\n\
-\n\
-\n\Use of Provisioning Technology\n\
-\n\
-The Eclipse Foundation makes available provisioning software, examples of which include,\n\
-but are not limited to, p2 and the Eclipse Update Manager ("Provisioning Technology") for\n\
-the purpose of allowing users to install software, documentation, information and/or\n\
-other materials (collectively "Installable Software"). This capability is provided with\n\
-the intent of allowing such users to install, extend and update Eclipse-based products.\n\
-Information about packaging Installable Software is available at\n\
-http://eclipse.org/equinox/p2/repository_packaging.html ("Specification").\n\
-\n\
-You may use Provisioning Technology to allow other parties to install Installable Software.\n\
-You shall be responsible for enabling the applicable license agreements relating to the\n\
-Installable Software to be presented to, and accepted by, the users of the Provisioning Technology\n\
-in accordance with the Specification. By using Provisioning Technology in such a manner and\n\
-making it available in accordance with the Specification, you further acknowledge your\n\
-agreement to, and the acquisition of all necessary rights to permit the following:\n\
-\n\
-       1. A series of actions may occur ("Provisioning Process") in which a user may execute\n\
-          the Provisioning Technology on a machine ("Target Machine") with the intent of installing,\n\
-          extending or updating the functionality of an Eclipse-based product.\n\
-       2. During the Provisioning Process, the Provisioning Technology may cause third party\n\
-          Installable Software or a portion thereof to be accessed and copied to the Target Machine.\n\
-       3. Pursuant to the Specification, you will provide to the user the terms and conditions that\n\
-          govern the use of the Installable Software ("Installable Software Agreement") and such\n\
-          Installable Software Agreement shall be accessed from the Target Machine in accordance\n\
-          with the Specification. Such Installable Software Agreement must inform the user of the\n\
-          terms and conditions that govern the Installable Software and must solicit acceptance by\n\
-          the end user in the manner prescribed in such Installable Software Agreement. Upon such\n\
-          indication of agreement by the user, the provisioning Technology will complete installation\n\
-          of the Installable Software.\n\
-\n\
-Cryptography\n\
-\n\
-Content may contain encryption software. The country in which you are\n\
-currently may have restrictions on the import, possession, and use,\n\
-and/or re-export to another country, of encryption software. BEFORE\n\
-using any encryption software, please check the country's laws,\n\
-regulations and policies concerning the import, possession, or use, and\n\
-re-export of encryption software, to see if this is permitted.\n\
-\n\
-Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.\n
-########### end of license property ##########################################
diff --git a/features/org.eclipse.jst.web_core.feature.patch/feature.xml b/features/org.eclipse.jst.web_core.feature.patch/feature.xml
deleted file mode 100644
index 9a8ecea..0000000
--- a/features/org.eclipse.jst.web_core.feature.patch/feature.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="org.eclipse.jst.web_core.feature.patch"
-      label="%featureName"
-      version="3.3.2.qualifier"
-      provider-name="%providerName">
-
-   <description>
-      %description
-   </description>
-
-   <copyright>
-      %copyright
-   </copyright>
-
-   <license url="%licenseURL">
-      %license
-   </license>
-
-   <requires>
-      <import feature="org.eclipse.jst.web_core.feature" version="3.3.2.v201112072049-7Q7DGLAFE9LeAHGQwz0Yz0Nmuitz01z01sRxi387" patch="true"/>
-   </requires>
-
-   <plugin
-         id="org.eclipse.jst.common.frameworks"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jst.j2ee"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-</feature>
diff --git a/features/org.eclipse.jst.web_core.feature.patch/license.html b/features/org.eclipse.jst.web_core.feature.patch/license.html
deleted file mode 100644
index f19c483..0000000
--- a/features/org.eclipse.jst.web_core.feature.patch/license.html
+++ /dev/null
@@ -1,108 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1" ?>
-<!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>Eclipse Foundation Software User Agreement</title>
-</head>
-
-<body lang="EN-US">
-<h2>Eclipse Foundation Software User Agreement</h2>
-<p>February 1, 2011</p>
-
-<h3>Usage Of Content</h3>
-
-<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
-   (COLLECTIVELY &quot;CONTENT&quot;).  USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
-   CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW.  BY USING THE CONTENT, YOU AGREE THAT YOUR USE
-   OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
-   NOTICES INDICATED OR REFERENCED BELOW.  IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
-   CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
-
-<h3>Applicable Licenses</h3>
-
-<p>Unless otherwise indicated, all Content made available by the Eclipse Foundation 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 provided with this Content and is also 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>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse Foundation source code
-   repository (&quot;Repository&quot;) in software modules (&quot;Modules&quot;) and made available as downloadable archives (&quot;Downloads&quot;).</p>
-
-<ul>
-       <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content.  Typical modules may include plug-ins (&quot;Plug-ins&quot;), plug-in fragments (&quot;Fragments&quot;), and features (&quot;Features&quot;).</li>
-       <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&trade; ARchive) in a directory named &quot;plugins&quot;.</li>
-       <li>A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.  Each Feature may be packaged as a sub-directory in a directory named &quot;features&quot;.  Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of the Plug-ins
-      and/or Fragments associated with that Feature.</li>
-       <li>Features may also include other Features (&quot;Included Features&quot;). Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of Included Features.</li>
-</ul>
-
-<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named &quot;about.html&quot; (&quot;Abouts&quot;). The terms and conditions governing Features and
-Included Features should be contained in files named &quot;license.html&quot; (&quot;Feature Licenses&quot;).  Abouts and Feature Licenses may be located in any directory of a Download or Module
-including, but not limited to the following locations:</p>
-
-<ul>
-       <li>The top-level (root) directory</li>
-       <li>Plug-in and Fragment directories</li>
-       <li>Inside Plug-ins and Fragments packaged as JARs</li>
-       <li>Sub-directories of the directory named &quot;src&quot; of certain Plug-ins</li>
-       <li>Feature directories</li>
-</ul>
-
-<p>Note: if a Feature made available by the Eclipse Foundation is installed using the Provisioning Technology (as defined below), you must agree to a license (&quot;Feature Update License&quot;) during the
-installation process.  If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or
-inform you where you can locate them.  Feature Update Licenses may be found in the &quot;license&quot; property of files named &quot;feature.properties&quot; found within a Feature.
-Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in
-that directory.</p>
-
-<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
-OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
-
-<ul>
-       <li>Eclipse Distribution License Version 1.0 (available at <a href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>)</li>
-       <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
-       <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
-       <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
-       <li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
-       <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
-</ul>
-
-<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT.  If no About, Feature License, or Feature Update License is provided, please
-contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.</p>
-
-
-<h3>Use of Provisioning Technology</h3>
-
-<p>The Eclipse Foundation makes available provisioning software, examples of which include, but are not limited to, p2 and the Eclipse
-   Update Manager (&quot;Provisioning Technology&quot;) for the purpose of allowing users to install software, documentation, information and/or
-   other materials (collectively &quot;Installable Software&quot;). This capability is provided with the intent of allowing such users to
-   install, extend and update Eclipse-based products. Information about packaging Installable Software is available at <a
-       href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
-   (&quot;Specification&quot;).</p>
-
-<p>You may use Provisioning Technology to allow other parties to install Installable Software. You shall be responsible for enabling the
-   applicable license agreements relating to the Installable Software to be presented to, and accepted by, the users of the Provisioning Technology
-   in accordance with the Specification. By using Provisioning Technology in such a manner and making it available in accordance with the
-   Specification, you further acknowledge your agreement to, and the acquisition of all necessary rights to permit the following:</p>
-
-<ol>
-       <li>A series of actions may occur (&quot;Provisioning Process&quot;) in which a user may execute the Provisioning Technology
-       on a machine (&quot;Target Machine&quot;) with the intent of installing, extending or updating the functionality of an Eclipse-based
-       product.</li>
-       <li>During the Provisioning Process, the Provisioning Technology may cause third party Installable Software or a portion thereof to be
-       accessed and copied to the Target Machine.</li>
-       <li>Pursuant to the Specification, you will provide to the user the terms and conditions that govern the use of the Installable
-       Software (&quot;Installable Software Agreement&quot;) and such Installable Software Agreement shall be accessed from the Target
-       Machine in accordance with the Specification. Such Installable Software Agreement must inform the user of the terms and conditions that govern
-       the Installable Software and must solicit acceptance by the end user in the manner prescribed in such Installable Software Agreement. Upon such
-       indication of agreement by the user, the provisioning Technology will complete installation of the Installable Software.</li>
-</ol>
-
-<h3>Cryptography</h3>
-
-<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to
-   another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import,
-   possession, or use, and re-export of encryption software, to see if this is permitted.</p>
-
-<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p>
-</body>
-</html>
diff --git a/plugins/org.eclipse.jst.common.frameworks/.classpath b/plugins/org.eclipse.jst.common.frameworks/.classpath
deleted file mode 100644
index 146c1a8..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/.classpath
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins">
-		<accessrules>
-			<accessrule kind="accessible" pattern="org/eclipse/wst/common/**"/>
-			<accessrule kind="accessible" pattern="org/eclipse/wst/validation/**"/>
-		</accessrules>
-	</classpathentry>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.jst.common.frameworks/.cvsignore b/plugins/org.eclipse.jst.common.frameworks/.cvsignore
deleted file mode 100644
index 2bd29c0..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/.cvsignore
+++ /dev/null
@@ -1,7 +0,0 @@
-bin
-temp.folder
-build.xml
-jdt_integration.jar
-@dot
-src.zip
-javaCompiler...args
diff --git a/plugins/org.eclipse.jst.common.frameworks/.project b/plugins/org.eclipse.jst.common.frameworks/.project
deleted file mode 100644
index 22c0bcb..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jst.common.frameworks</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.jst.common.frameworks/.settings/org.eclipse.jdt.core.prefs b/plugins/org.eclipse.jst.common.frameworks/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 037a4e5..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,95 +0,0 @@
-#Mon Jun 08 15:35:45 EDT 2009
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=error
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=error
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=error
-org.eclipse.jdt.core.compiler.problem.unusedLocal=error
-org.eclipse.jdt.core.compiler.problem.emptyStatement=error
-org.eclipse.jdt.core.compiler.problem.unusedLabel=error
-org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.incompatibleJDKLevel=ignore
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=error
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.builder.cleanOutputFolder=clean
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=error
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=enabled
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=error
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=enabled
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=error
-org.eclipse.jdt.core.compiler.problem.unusedImport=error
-org.eclipse.jdt.core.builder.recreateModifiedClassFileInOutputFolder=ignore
-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch
-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=error
-org.eclipse.jdt.core.builder.invalidClasspath=abort
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=error
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=error
-org.eclipse.jdt.core.codeComplete.argumentSuffixes=
-org.eclipse.jdt.core.codeComplete.argumentPrefixes=
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=error
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=error
-org.eclipse.jdt.core.compiler.problem.nullReference=error
-org.eclipse.jdt.core.compiler.source=1.5
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.builder.duplicateResourceTask=warning
-org.eclipse.jdt.core.compiler.problem.fieldHiding=error
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=error
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=error
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=error
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=error
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=error
-eclipse.preferences.version=1
-org.eclipse.jdt.core.incompleteClasspath=error
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
-org.eclipse.jdt.core.compiler.problem.deadCode=error
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=enabled
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=enabled
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=error
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeUncheckedExceptions=disabled
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
-org.eclipse.jdt.core.codeComplete.fieldPrefixes=
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=error
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=warning
-org.eclipse.jdt.core.circularClasspath=error
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=error
-org.eclipse.jdt.core.codeComplete.fieldSuffixes=
-org.eclipse.jdt.core.codeComplete.localSuffixes=
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=error
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=error
-org.eclipse.jdt.core.codeComplete.localPrefixes=
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=error
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.compliance=1.5
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.codeComplete.staticFieldPrefixes=
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
-instance/org.eclipse.core.net/org.eclipse.core.net.hasMigrated=true
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
diff --git a/plugins/org.eclipse.jst.common.frameworks/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.common.frameworks/META-INF/MANIFEST.MF
deleted file mode 100644
index 088ad9a..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,34 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.jst.common.frameworks; singleton:=true
-Bundle-Version: 1.1.502.qualifier
-Bundle-Vendor: %pluginVendor
-Bundle-Localization: plugin
-Export-Package: 
- org.eclipse.jst.common.frameworks,
- org.eclipse.jst.common.internal.modulecore;x-internal:=true,
- org.eclipse.jst.common.internal.modulecore.util;x-internal:=true,
- org.eclipse.jst.common.jdt.internal.classpath;x-internal:=true,
- org.eclipse.jst.common.jdt.internal.integration;x-internal:=true,
- org.eclipse.jst.common.jdt.internal.javalite,
- org.eclipse.jst.common.project.facet
-Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.jdt.core;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.jdt.launching;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.emf.ecore;bundle-version="[2.2.0,3.0.0)",
- org.eclipse.emf.ecore.xmi;bundle-version="[2.2.0,3.0.0)",
- org.eclipse.wst.common.frameworks;bundle-version="[1.2.0,2.0.0)",
- org.eclipse.wst.common.modulecore;bundle-version="[1.2.0,2.0.0)",
- org.eclipse.jem.util;bundle-version="[2.0.0,3.0.0)",
- org.eclipse.core.resources;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.wst.common.emf;bundle-version="[1.2.0,2.0.0)",
- org.eclipse.core.commands;bundle-version="[3.2.0,4.0.0)",
- org.eclipse.wst.common.emfworkbench.integration;bundle-version="[1.2.0,2.0.0)",
- org.eclipse.wst.validation;bundle-version="[1.2.0,2.0.0)",
- org.eclipse.wst.common.project.facet.core;bundle-version="[1.3.0,2.0.0)",
- org.eclipse.jst.common.project.facet.core;bundle-version="[1.3.0,2.0.0)",
- com.ibm.icu;bundle-version="3.8.1"
-Bundle-Activator: org.eclipse.jst.common.frameworks.CommonFrameworksPlugin
-Eclipse-LazyStart: true
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/plugins/org.eclipse.jst.common.frameworks/about.html b/plugins/org.eclipse.jst.common.frameworks/about.html
deleted file mode 100644
index 2199df3..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/about.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<HTML>
-
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-
-<BODY lang="EN-US">
-
-<H3>About This Content</H3>
-
-<P>June, 2008</P>
-
-<H3>License</H3>
-
-<P>The Eclipse Foundation makes available all content in this plug-in 
-("Content"). Unless otherwise indicated below, the Content is provided to you 
-under the terms and conditions of the Eclipse Public License Version 1.0 
-("EPL"). A copy of the EPL is available at
-<A href="http://www.eclipse.org/org/documents/epl-v10.php">http://www.eclipse.org/org/documents/epl-v10.php</A>. 
-For purposes of the EPL, "Program" will mean the Content.</P>
-
-<P>If you did not receive this Content directly from the Eclipse Foundation, the 
-Content is being redistributed by another party ("Redistributor") and different 
-terms and conditions may apply to your use of any object code in the Content. 
-Check the RedistributorÂ’s license that was provided with the Content. If no such 
-license exists, contact the Redistributor. Unless otherwise indicated below, the 
-terms and conditions of the EPL still apply to any source code in the Content 
-and such source code may be obtained at
-<A href="http://www.eclipse.org/">http://www.eclipse.org/</A>.</P>
-
-</BODY>
-</HTML>
diff --git a/plugins/org.eclipse.jst.common.frameworks/build.properties b/plugins/org.eclipse.jst.common.frameworks/build.properties
deleted file mode 100644
index 90edf39..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/build.properties
+++ /dev/null
@@ -1,18 +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
-###############################################################################
-source.. = src/
-output.. = bin/
-bin.includes = plugin.xml,\
-               .,\
-               META-INF/,\
-               about.html,\
-               plugin.properties
-src.includes = component.xml
diff --git a/plugins/org.eclipse.jst.common.frameworks/component.xml b/plugins/org.eclipse.jst.common.frameworks/component.xml
deleted file mode 100644
index 56c979d..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/component.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<component xmlns="http://eclipse.org/wtp/releng/tools/component-model"
-	name="org.eclipse.jst.common.frameworks">
-	<component-depends unrestricted="true"></component-depends>
-	<plugin id="org.eclipse.jst.common.frameworks" fragment="false" />
-	<plugin id="org.eclipse.jst.common.annotations.controller"
-		fragment="false" />
-	<plugin id="org.eclipse.jst.common.annotations.core"
-		fragment="false" />
-	<plugin id="org.eclipse.jst.common.annotations.ui" fragment="false" />
-</component>
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.common.frameworks/plugin.properties b/plugins/org.eclipse.jst.common.frameworks/plugin.properties
deleted file mode 100644
index b9b475d..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/plugin.properties
+++ /dev/null
@@ -1,12 +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
-###############################################################################
-pluginName=Integration Plug-in
-pluginVendor=Eclipse Web Tools Platform
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.common.frameworks/plugin.xml b/plugins/org.eclipse.jst.common.frameworks/plugin.xml
deleted file mode 100644
index ce08db6..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/plugin.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-   <extension-point id="JavaComponentDiscerner" name="JavaComponentDiscerner" schema="schema/JavaComponentDiscerner.exsd"/>
-
-     <extension
-         id="context.Sensitive.Class.workingCopyManager"
-         name="Working Copy Manager - Headless Context Class"
-         point="org.eclipse.jem.util.uiContextSensitiveClass">
-      <uiContextSensitiveClass
-            key="workingCopyManager"
-            context="Headless"
-            className="org.eclipse.jst.common.jdt.internal.integration.WTPWorkingCopyManager">
-      </uiContextSensitiveClass>
-   </extension>
-   
-   <extension
-        id="javaProjectValidationHandler"
-        name="javaProjectValidationHandler"
-        point="org.eclipse.wst.validation.validationSelectionHandler">
-      <validationSelectionHandler
-        id="javaProjectValidationHandler"
-        handlerClass="org.eclipse.jst.common.jdt.internal.integration.JavaProjectValidationHandler"
-        selectionType="org.eclipse.jdt.core.IJavaProject"/>
-   </extension>
-   <extension
-         point="org.eclipse.wst.common.emfworkbench.integration.editModel">
-      <editModel
-            editModelID="jst.utility"
-            factoryClass="org.eclipse.jst.common.jdt.internal.integration.JavaArtifactEditModelFactory">
-      </editModel>
-   </extension>
-   
-  <extension point="org.eclipse.core.runtime.adapters">
-    <factory 
-      class="org.eclipse.jst.common.project.facet.internal.JavaFacetInstallConfigToDataModelAdapter" 
-      adaptableType="org.eclipse.jst.common.project.facet.core.JavaFacetInstallConfig">
-      <adapter type="org.eclipse.wst.common.frameworks.datamodel.IDataModel"/>
-    </factory>
-  </extension>
-
-  <extension point="org.eclipse.core.runtime.adapters">
-    <factory 
-      class="org.eclipse.jst.common.project.facet.internal.DataModelToJavaFacetInstallConfigAdapter" 
-      adaptableType="org.eclipse.wst.common.frameworks.datamodel.IDataModel">
-      <adapter type="org.eclipse.jst.common.project.facet.core.JavaFacetInstallConfig"/>
-    </factory>
-  </extension>
-  <extension
-        point="org.eclipse.wst.common.modulecore.referenceResolver">
-     <resolver
-           class="org.eclipse.jst.common.internal.modulecore.ClasspathContainerReferenceResolver"
-           id="org.eclipse.jst.common.frameworks.classpathContainerResolver">
-     </resolver>
-  </extension>
-</plugin>
diff --git a/plugins/org.eclipse.jst.common.frameworks/schema/JavaComponentDiscerner.exsd b/plugins/org.eclipse.jst.common.frameworks/schema/JavaComponentDiscerner.exsd
deleted file mode 100644
index 519860f..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/schema/JavaComponentDiscerner.exsd
+++ /dev/null
@@ -1,102 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.jst.common.frameworks" xmlns="http://www.w3.org/2001/XMLSchema">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.jst.common.frameworks" id="JavaComponentDiscerner" name="JavaComponentDiscerner"/>
-      </appInfo>
-      <documentation>
-         [Enter description of this extension point.]
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <annotation>
-         <appInfo>
-            <meta.element internal="true" />
-         </appInfo>
-      </annotation>
-      <complexType>
-         <sequence minOccurs="1" maxOccurs="unbounded">
-            <element ref="discerner"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="discerner">
-      <complexType>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="java" basedOn=":org.eclipse.jst.common.internal.modulecore.util.PossibleManifestEntryUtil$ManifestEntryDiscerner"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         [Enter the first release in which this extension point appears.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         [Enter extension point usage example here.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiinfo"/>
-      </appInfo>
-      <documentation>
-         [Enter API information here.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         [Enter information about supplied implementation of this extension point.]
-      </documentation>
-   </annotation>
-
-
-</schema>
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/frameworks/CommonFrameworksPlugin.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/frameworks/CommonFrameworksPlugin.java
deleted file mode 100644
index d2890b1..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/frameworks/CommonFrameworksPlugin.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    Konstantin Komissarchik - initial API and implementation
- ******************************************************************************/
-
-package org.eclipse.jst.common.frameworks;
-
-import org.eclipse.core.runtime.ILog;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.wst.common.frameworks.internal.WTPPlugin;
-import org.eclipse.core.runtime.Platform;
-import java.lang.Throwable;
-import org.eclipse.core.runtime.CoreException;
-
-public final class CommonFrameworksPlugin 
-
-    extends WTPPlugin
-
-{
-    public static final String PLUGIN_ID = "org.eclipse.jst.common.frameworks"; //$NON-NLS-1$
-    public static final String DEFAULT_SOURCE_FOLDER = "defaultSource"; //$NON-NLS-1$
-    public static final String OUTPUT_FOLDER = "outputFolder"; //$NON-NLS-1$
-   
-    private static CommonFrameworksPlugin inst;
-
-    /**
-     * Get the plugin singleton.
-     */
-    
-    public static CommonFrameworksPlugin getDefault() 
-    {
-        return inst;
-    }
-    
-    public CommonFrameworksPlugin() {
-    	super();
-		if (inst == null)
-			inst = this;
-	}
-    @Override
-	public String getPluginID() 
-    {
-        return PLUGIN_ID;
-    }
-    
-    public static void log( final Exception e )
-    {
-        final ILog log = CommonFrameworksPlugin.getDefault().getLog();
-        final String msg = "Encountered an unexpected exception."; //$NON-NLS-1$
-        
-        log.log( new Status( IStatus.ERROR, PLUGIN_ID, IStatus.OK, msg, e ) );
-    }
-
-	public static IStatus createStatus(int severity, String message, Throwable exception) {
-		return new Status(severity, PLUGIN_ID, message, exception);
-	}
-
-	public static IStatus createStatus(int severity, String message) {
-		return createStatus(severity, message, null);
-	}
-
-	public static void logError(Throwable exception) {
-		Platform.getLog(Platform.getBundle(PLUGIN_ID)).log( createStatus(IStatus.ERROR, exception.getMessage(), exception));
-	}
-
-	public static void logError(CoreException exception) {
-		Platform.getLog(Platform.getBundle(PLUGIN_ID)).log( exception.getStatus() );
-	}
-    
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/AddClasspathFoldersParticipant.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/AddClasspathFoldersParticipant.java
deleted file mode 100644
index 6322313..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/AddClasspathFoldersParticipant.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Red Hat 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:
- *     Red Hat - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.common.internal.modulecore;
-
-import java.util.List;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.wst.common.componentcore.internal.flat.AbstractFlattenParticipant;
-import org.eclipse.wst.common.componentcore.internal.flat.IFlatResource;
-import org.eclipse.wst.common.componentcore.internal.flat.VirtualComponentFlattenUtility;
-import org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.FlatComponentTaskModel;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-
-/**
- * Add classpath folder references. This is necessary because 
- * these classpath folder references are not exactly stored as 
- * IVirtualReference objects persisted in the component.xml, but rather 
- * pulled in from another model. 
- * 
- * @author rob.stryker@jboss.com
- *
- */
-public class AddClasspathFoldersParticipant extends AbstractFlattenParticipant {
-	private List<IFlatResource> list;
-	
-	@Override
-	public boolean shouldIgnoreReference(IVirtualComponent rootComponent,
-			IVirtualReference referenced, FlatComponentTaskModel dataModel) {
-		if( (rootComponent instanceof IClasspathDependencyProvider) && 
-			(referenced.getReferencedComponent() instanceof IClasspathDependencyComponent) &&
-			((IClasspathDependencyComponent)referenced.getReferencedComponent()).isClassFolder())
-			return true;
-		return false;
-	}
-
-	
-	@Override
-	public void finalize(IVirtualComponent component,
-			FlatComponentTaskModel dataModel, List<IFlatResource> resources) {
-		this.list = resources;
-		if( !(component instanceof IClasspathDependencyProvider ))
-			return;
-		// Add all Java output folders that have publish/export attributes
-		try {
-			addClassFolderDependencies((IClasspathDependencyProvider)component);
-		} catch( CoreException ce ) {
-			// Ignore
-		}
-	}
-
-	private void addClassFolderDependencies(final IClasspathDependencyProvider component) throws CoreException {
-		if (!component.isBinary()) {
-			final IVirtualReference[] cpRefs = component.getJavaClasspathReferences();
-			for (int i = 0; i < cpRefs.length; i++) {
-				final IVirtualReference cpRef = cpRefs[i];
-				final IPath runtimePath = cpRef.getRuntimePath();
-				final IVirtualComponent comp = cpRef.getReferencedComponent();
-				if (comp instanceof IClasspathDependencyComponent) {
-					final IClasspathDependencyComponent cpComp = (IClasspathDependencyComponent) comp;
-					if (cpComp.isClassFolder() && cpComp.getClassFolder() != null) {
-						IPath targetPath = null;
-						targetPath = runtimePath.makeRelative();
-						final IContainer container = cpComp.getClassFolder();
-						new VirtualComponentFlattenUtility(list, null).addContainer(container, targetPath);
-					}
-				}
-			}
-		}
-	}
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/AddClasspathLibReferencesParticipant.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/AddClasspathLibReferencesParticipant.java
deleted file mode 100644
index a91077f..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/AddClasspathLibReferencesParticipant.java
+++ /dev/null
@@ -1,216 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Red Hat 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:
- *     Red Hat - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.common.internal.modulecore;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.wst.common.componentcore.internal.flat.AbstractFlattenParticipant;
-import org.eclipse.wst.common.componentcore.internal.flat.IFlatResource;
-import org.eclipse.wst.common.componentcore.internal.flat.VirtualComponentFlattenUtility;
-import org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.FlatComponentTaskModel;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-
-/**
- * Copy the classpath LIB references from a child with 
- * a ../ runtime path into a receiving parent.
- * 
- * @author rob
- *
- */
-public class AddClasspathLibReferencesParticipant extends AbstractFlattenParticipant {
-	private List<IFlatResource> list;
-	
-
-	@Override
-	public boolean shouldIgnoreReference(IVirtualComponent rootComponent,
-			IVirtualReference referenced, FlatComponentTaskModel dataModel) {
-		if (referenced.getRuntimePath().toString().startsWith(IClasspathDependencyReceiver.RUNTIME_MAPPING_INTO_CONTAINER))
-			return true;
-		return false;
-	}
-
-	
-	@Override
-	public void finalize(IVirtualComponent component,
-			FlatComponentTaskModel dataModel, List<IFlatResource> resources) {
-		this.list = resources;
-		if( !(component instanceof IClasspathDependencyReceiver ))
-			return;
-		if( ((IClasspathDependencyReceiver)component).canReceiveClasspathDependencies())
-			addReferencedComponentClasspathDependencies((IClasspathDependencyReceiver)component);
-	}
-
-	private void addReferencedComponentClasspathDependencies(final IClasspathDependencyReceiver component) {
-		final IVirtualReference[] refs = component.getReferences();
-		for (int i = 0; i < refs.length; i++) {
-			final IVirtualReference reference = refs[i];
-			final IPath runtimePath = reference.getRuntimePath();
-			final IVirtualComponent referencedComponent = reference.getReferencedComponent();
-
-			// if the reference cannot export dependencies, skip
-			if( !(referencedComponent instanceof IClasspathDependencyProvider) )
-				continue;
-			
-			if (!referencedComponent.isBinary() && referencedComponent instanceof IClasspathDependencyProvider) {
-				final IVirtualReference[] cpRefs = ((IClasspathDependencyProvider) referencedComponent).getJavaClasspathReferences();
-				for (int j = 0; j < cpRefs.length; j++) {
-					final IVirtualReference cpRef = cpRefs[j];
-					IPath cpRefRuntimePath = cpRef.getRuntimePath();
-
-					if (cpRef.getReferencedComponent() instanceof IClasspathDependencyComponent) {
-						// want to avoid adding dups
-						IClasspathDependencyComponent cpComp = (IClasspathDependencyComponent) cpRef.getReferencedComponent();
-						// don't want to process class folder refs here
-						if (cpComp.isClassFolder())
-							continue;
-
-						//if path isn't ../, it shouldn't be added here [bug 247090]
-						if (!cpRefRuntimePath.toString().startsWith(IClasspathDependencyReceiver.RUNTIME_MAPPING_INTO_CONTAINER))
-							continue;
-						
-						// TODO: verify this cpRefRuntimePath is acceptable?
-						//if( !runtimePath.equals(component.getClasspathFolderPath(cpComp))) continue;
-						
-						cpRefRuntimePath = runtimePath.append(cpRefRuntimePath.removeFirstSegments(1));
-						new VirtualComponentFlattenUtility(list, null).addFile(cpComp, cpRefRuntimePath, cpComp);
-					}
-				}
-			}
-		}
-	}
-	
-	
-	private List<IVirtualReference> getReferencedProjectComponentClasspathDependencies(final IClasspathDependencyReceiver component, FlatComponentTaskModel dataModel) {
-		final IVirtualReference[] refs = component.getReferences();
-		List<IVirtualReference> validReferences = new ArrayList<IVirtualReference>();
-		
-		for (int i = 0; i < refs.length; i++) {
-			final IVirtualReference reference = refs[i];
-			final IVirtualComponent referencedComponent = reference.getReferencedComponent();
-
-			// if the reference cannot export dependencies, skip
-			if( !(referencedComponent instanceof IClasspathDependencyProvider) )
-				continue;
-			
-			if (!referencedComponent.isBinary() && referencedComponent instanceof IClasspathDependencyProvider) {
-				final IVirtualReference[] cpRefs = ((IClasspathDependencyProvider) referencedComponent).getJavaClasspathReferences();
-				for (int j = 0; j < cpRefs.length; j++) {
-					final IVirtualReference cpRef = cpRefs[j];
-					IPath cpRefRuntimePath = cpRef.getRuntimePath();
-
-					// TODO: Create a new interface like IClasspathDependencyComponent but for project references
-					if (!(cpRef.getReferencedComponent() instanceof IClasspathDependencyComponent)) {
-
-						//if path isn't ../, it shouldn't be added here [bug 247090]
-						if (!cpRefRuntimePath.toString().startsWith(IClasspathDependencyReceiver.RUNTIME_MAPPING_INTO_CONTAINER))
-							continue;
-											
-						validReferences.add(new ClasspathLibVirtualReference(cpRef));
-						
-					}
-				}
-			}
-		}
-		return validReferences;
-		
-	}
-	
-	@Override
-	public List<IVirtualReference> getChildModules(IVirtualComponent component, FlatComponentTaskModel dataModel){
-		List<IVirtualReference> result = null;
-		if( !(component instanceof IClasspathDependencyReceiver ))
-			return null;		
-		// Gather project classpath dependencies from child references
-		if( ((IClasspathDependencyReceiver)component).canReceiveClasspathDependencies())
-			result = getReferencedProjectComponentClasspathDependencies((IClasspathDependencyReceiver)component, dataModel);
-		return result;
-	}
-	
-	
-	// Inner class used as a wrapper for VirtualReferences, delegating most of the methods to the wrapped object, except
-	// the getRuntimePath() method. This is needed so a reference to a virtual component can be added correctly to the receiving parent  
-	private static class ClasspathLibVirtualReference implements IVirtualReference{
-		private IVirtualReference ref;
-		ClasspathLibVirtualReference(IVirtualReference ref){
-			this.ref = ref;
-		}
-	
-		public void create(int updateFlags, IProgressMonitor aMonitor) {
-			ref.create(updateFlags, aMonitor);			
-		}
-
-		public boolean exists() {
-			return ref.exists();
-		}
-
-		public String getArchiveName() {
-			return ref.getArchiveName();
-		}
-
-		public int getDependencyType() {
-			return ref.getDependencyType();
-		}
-
-		public IVirtualComponent getEnclosingComponent() {
-			return ref.getEnclosingComponent();
-		}
-
-		public IVirtualComponent getReferencedComponent() {
-			return ref.getReferencedComponent();
-		}
-
-		public IPath getRuntimePath() {
-			// remove the ../ portion of the path
-			return ref.getRuntimePath().removeFirstSegments(1);
-		}
-
-		public boolean isDerived() {
-			return ref.isDerived();
-		}
-
-		public void setArchiveName(String archiveName) {
-			ref.setArchiveName(archiveName);
-			
-		}
-
-		public void setDependencyType(int aDependencyType) {
-			ref.setDependencyType(aDependencyType);
-			
-		}
-
-		public void setReferencedComponent(
-				IVirtualComponent referencedComponent, EObject dependentObject) {
-			ref.setReferencedComponent(referencedComponent, dependentObject);
-			
-		}
-
-		public void setRuntimePath(IPath aRuntimePath) {
-			ref.setRuntimePath(aRuntimePath);
-		}
-	}
-	
-//	private boolean canExportClasspathComponentDependencies(IVirtualComponent component) {
-//		final IProject project = component.getProject();
-//		// check for valid project type
-//		if (JavaEEProjectUtilities.isEJBProject(project) 
-//				|| JavaEEProjectUtilities.isDynamicWebProject(project)
-//				|| JavaEEProjectUtilities.isJCAProject(project)
-//    			|| JavaEEProjectUtilities.isUtilityProject(project)) {
-//			return true;
-//		}
-//		return false;
-//	}
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/AddClasspathLibRefsProviderParticipant.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/AddClasspathLibRefsProviderParticipant.java
deleted file mode 100644
index 867946f..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/AddClasspathLibRefsProviderParticipant.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.common.internal.modulecore;
-
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.wst.common.componentcore.internal.flat.AbstractFlattenParticipant;
-import org.eclipse.wst.common.componentcore.internal.flat.IFlatResource;
-import org.eclipse.wst.common.componentcore.internal.flat.VirtualComponentFlattenUtility;
-import org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.FlatComponentTaskModel;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-
-/**
- * Collect the classpath LIB references from a dependency provider
- * and add to the members list.
- * 
- */
-public class AddClasspathLibRefsProviderParticipant extends AbstractFlattenParticipant {
-	private List<IFlatResource> list;
-	
-	
-	@Override
-	public void finalize(IVirtualComponent component,
-			FlatComponentTaskModel dataModel, List<IFlatResource> resources) {
-		this.list = resources;
-		
-		if (!(component instanceof IClasspathDependencyProvider))
-			return;
-		
-		addReferencedComponentClasspathDependencies((IClasspathDependencyProvider)component);
-	}
-
-	private void addReferencedComponentClasspathDependencies(final IClasspathDependencyProvider component) {
-		final IVirtualReference[] cpRefs = component.getJavaClasspathReferences();
-		for (int j = 0; j < cpRefs.length; j++) {
-			final IVirtualReference cpRef = cpRefs[j];
-			IPath cpRefRuntimePath = cpRef.getRuntimePath();
-
-			if (cpRef.getReferencedComponent() instanceof IClasspathDependencyComponent) {
-				// want to avoid adding dups
-				IClasspathDependencyComponent cpComp = (IClasspathDependencyComponent) cpRef.getReferencedComponent();
-				// don't want to process class folder refs here
-				if (cpComp.isClassFolder())
-					continue;
-
-				if (cpRefRuntimePath.toString().startsWith(IClasspathDependencyReceiver.RUNTIME_MAPPING_INTO_CONTAINER))
-					continue;
-
-				new VirtualComponentFlattenUtility(list, null).addFile(cpComp, cpRefRuntimePath, cpComp);
-			}
-		}
-	}
-	
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/AddMappedOutputFoldersParticipant.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/AddMappedOutputFoldersParticipant.java
deleted file mode 100644
index bb614ad..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/AddMappedOutputFoldersParticipant.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Red Hat 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:
- *     Red Hat - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.common.internal.modulecore;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.internal.core.JavaProject;
-import org.eclipse.jst.common.jdt.internal.javalite.IJavaProjectLite;
-import org.eclipse.jst.common.jdt.internal.javalite.JavaCoreLite;
-import org.eclipse.jst.common.jdt.internal.javalite.JavaLiteUtilities;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-import org.eclipse.wst.common.componentcore.internal.flat.AbstractFlattenParticipant;
-import org.eclipse.wst.common.componentcore.internal.flat.FilterResourceParticipant;
-import org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.FlatComponentTaskModel;
-import org.eclipse.wst.common.componentcore.internal.flat.IFlatFile;
-import org.eclipse.wst.common.componentcore.internal.flat.IFlatResource;
-import org.eclipse.wst.common.componentcore.internal.flat.IFlattenParticipant;
-import org.eclipse.wst.common.componentcore.internal.flat.VirtualComponentFlattenUtility;
-import org.eclipse.wst.common.componentcore.internal.flat.VirtualComponentFlattenUtility.ShouldIncludeUtilityCallback;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-
-public class AddMappedOutputFoldersParticipant extends AbstractFlattenParticipant implements ShouldIncludeUtilityCallback {
-	private List<IFlatResource> list;
-	private String[] filteredSuffixes = new String[]{}; 
-	
-	public AddMappedOutputFoldersParticipant() {
-		// intentionally blank
-	}
-
-	public AddMappedOutputFoldersParticipant(String[] filtered) {
-		this.filteredSuffixes = filtered;
-	}
-	
-	public boolean shouldAddComponentFile(IVirtualComponent component, IFlatFile file) {
-		IFlattenParticipant[] delegates = getDelegateParticipants();
-		for( int i = 0; i < delegates.length; i++ ) {
-			if(!delegates[i].shouldAddExportableFile(null, component, null, file))
-				return false;
-		}
-		return true;
-	}
-	
-	public IFlattenParticipant[] getDelegateParticipants() {
-		return new IFlattenParticipant[] {
-				FilterResourceParticipant.createSuffixFilterParticipant(filteredSuffixes)
-		};
-	}
-
-	@Override
-	public void finalize(IVirtualComponent component,
-			FlatComponentTaskModel dataModel, List<IFlatResource> resources) {
-		this.list = resources;
-		list.getClass();
-		if( !isApprovedComponent(component))
-			return;
-
-		HashMap<IContainer, IPath> mapped = getMappedJavaOutputContainers(component.getProject());
-		Iterator<IContainer> i = mapped.keySet().iterator();
-		while(i.hasNext()) {
-			IContainer next = i.next();
-			try {
-				new VirtualComponentFlattenUtility(list, this).addContainer(next, mapped.get(next));
-			} catch( CoreException ce) {}
-		}
-	}
-	
-	protected boolean isApprovedComponent(IVirtualComponent vc) {
-		// TODO
-		return true;
-	}
-
-	public final static HashMap<IContainer, IPath> getMappedJavaOutputContainers(IProject project) {
-		ComponentResourceProxy[] proxies = findAllMappingProxies(project);
-		IJavaProjectLite javaProjectLite = JavaCoreLite.create(project);
-
-		HashMap<IContainer, IPath> map = new HashMap<IContainer, IPath>();
-		IFile classpathFile = project.getFile(JavaProject.CLASSPATH_FILENAME);
-		if( javaProjectLite.exists() && classpathFile.exists()) {
-			IClasspathEntry[] entries = javaProjectLite.readRawClasspath();
-			for (IClasspathEntry entry : entries) {
-				if (entry.getEntryKind() == IClasspathEntry.CPE_SOURCE) {
-					IPath cpePath = entry.getPath();
-					for( int i = 0; i < proxies.length; i++ ) {
-						if( cpePath.equals(new Path(project.getName()).append(proxies[i].source).makeAbsolute())) {
-							IContainer outputContainer = JavaLiteUtilities.getJavaOutputContainer(javaProjectLite, entry);
-							if (!map.containsKey(outputContainer)) {
-								map.put(outputContainer, proxies[i].runtimePath);
-							}
-						}
-						// TODO 
-					}
-				}
-			}
-		}
-		return map;
-	}
-
-	/* 
-	 * This code below is also duplicated in common.ui in the generic page
-	 * to handle module assembly 
-	 */
-	
-	public static ComponentResourceProxy[] findAllMappingProxies(IProject project) {
-		ComponentResource[] allMappings = findAllMappings(project);
-		ComponentResourceProxy[] proxies = new ComponentResourceProxy[allMappings.length];
-		for( int i = 0; i < allMappings.length; i++ ) {
-			proxies[i] = new ComponentResourceProxy(
-					allMappings[i].getSourcePath(), 
-					allMappings[i].getRuntimePath());
-		}
-		return proxies;
-	}
-	
-	protected static ComponentResource[] findAllMappings(IProject project) {
-		StructureEdit structureEdit = null;
-		try {
-			structureEdit = StructureEdit.getStructureEditForRead(project);
-			WorkbenchComponent component = structureEdit.getComponent();
-			Object[] arr = component.getResources().toArray();
-			ComponentResource[] result = new ComponentResource[arr.length];
-			for( int i = 0; i < arr.length; i++ )
-				result[i] = (ComponentResource)arr[i];
-			return result;
-		} catch(Exception e) {
-		} finally {
-			if( structureEdit != null )
-				structureEdit.dispose();
-		}
-		return new ComponentResource[]{};
-	}
-	
-	public static class ComponentResourceProxy {
-		public IPath source, runtimePath;
-		public ComponentResourceProxy(IPath source, IPath runtimePath) {
-			this.source = source;
-			this.runtimePath = runtimePath;
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/ClasspathContainerReferenceResolver.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/ClasspathContainerReferenceResolver.java
deleted file mode 100644
index c942e13..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/ClasspathContainerReferenceResolver.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Red Hat 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:
- *     Red Hat - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.common.internal.modulecore;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.wst.common.componentcore.internal.ComponentcorePackage;
-import org.eclipse.wst.common.componentcore.internal.DependencyType;
-import org.eclipse.wst.common.componentcore.internal.ReferencedComponent;
-import org.eclipse.wst.common.componentcore.internal.impl.PlatformURLModuleConnection;
-import org.eclipse.wst.common.componentcore.internal.resources.VirtualReference;
-import org.eclipse.wst.common.componentcore.resolvers.IReferenceResolver;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-
-public class ClasspathContainerReferenceResolver implements IReferenceResolver {
-	public static final String PROTOCOL = PlatformURLModuleConnection.MODULE_PROTOCOL
-		+IPath.SEPARATOR + ClasspathContainerVirtualComponent.CLASSPATH_CON + IPath.SEPARATOR;
-	public boolean canResolve(IVirtualComponent context,
-			ReferencedComponent referencedComponent) {
-		URI uri = referencedComponent.getHandle();
-		if( uri.segmentCount() > 2 && uri.segment(0).equals(ClasspathContainerVirtualComponent.CLASSPATH)
-				&& uri.segment(1).equals(ClasspathContainerVirtualComponent.CON))
-			return true;
-		return false;
-	}
-
-	public IVirtualReference resolve(IVirtualComponent context,
-			ReferencedComponent referencedComponent) {
-		URI uri = referencedComponent.getHandle();
-		if( uri.segmentCount() > 2 && uri.segment(0).equals(ClasspathContainerVirtualComponent.CLASSPATH)
-				&& uri.segment(1).equals(ClasspathContainerVirtualComponent.CON)) {
-			String path = uri.toString().substring(PROTOCOL.length());
-            IVirtualReference ref = new VirtualReference(context, 
-            		new ClasspathContainerVirtualComponent(context.getProject(), context, path));
-            ref.setArchiveName(referencedComponent.getArchiveName());
-            ref.setRuntimePath(referencedComponent.getRuntimePath());
-            ref.setDependencyType(referencedComponent.getDependencyType().getValue());
-            return ref;
-		}
-		return null;
-	}
-
-	public boolean canResolve(IVirtualReference reference) {
-		if( reference.getReferencedComponent() instanceof ClasspathContainerVirtualComponent )
-			return true;
-		return false;
-	}
-
-	public ReferencedComponent resolve(IVirtualReference reference) {
-		ClasspathContainerVirtualComponent vc = (ClasspathContainerVirtualComponent)reference.getReferencedComponent();
-        ReferencedComponent rc = ComponentcorePackage.eINSTANCE.getComponentcoreFactory().createReferencedComponent();
-        rc.setArchiveName(reference.getArchiveName());
-        rc.setRuntimePath(reference.getRuntimePath());
-        rc.setHandle(URI.createURI(PROTOCOL + vc.getClasspathContainerPath()));
-        rc.setDependencyType(DependencyType.CONSUMES_LITERAL);
-        return rc;
-	}
-
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/ClasspathContainerVirtualComponent.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/ClasspathContainerVirtualComponent.java
deleted file mode 100644
index 93b5ca5..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/ClasspathContainerVirtualComponent.java
+++ /dev/null
@@ -1,172 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Red Hat 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:
- *     Red Hat - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.common.internal.modulecore;
-
-import java.io.File;
-import java.util.ArrayList;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.IClasspathContainer;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.wst.common.componentcore.internal.resources.AbstractResourceListVirtualComponent;
-import org.eclipse.wst.common.componentcore.internal.resources.VirtualFile;
-import org.eclipse.wst.common.componentcore.internal.resources.VirtualFolder;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFile;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
-import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
-
-public class ClasspathContainerVirtualComponent extends
-		AbstractResourceListVirtualComponent {
-	public static final String CLASSPATH = "classpath"; //$NON-NLS-1$
-	public static final String CON = "con"; //$NON-NLS-1$
-	public static final String CLASSPATH_CON = CLASSPATH + Path.SEPARATOR + CON;
-	private String containerPath;
-	private IClasspathEntry[] containerEntries;
-	private IClasspathContainer container;
-	private boolean initialized = false;
-	private Object initLock = new Object();
-	public ClasspathContainerVirtualComponent(IProject p,
-			IVirtualComponent referencingComponent, String containerPath) {
-		super(p, referencingComponent);
-		this.containerPath = containerPath;
-	}
-	
-	private void init() {
-		synchronized (initLock) {
-			if (initialized) {
-				return;
-			}
-		}
-		try {
-			IClasspathContainer localContainer = JavaCore.getClasspathContainer(new Path(containerPath), JavaCore.create(project));
-			IClasspathEntry[] localcontainerEntries = null;
-			if (localContainer != null) {
-				localcontainerEntries = localContainer.getClasspathEntries();
-			} else {
-				localcontainerEntries = new IClasspathEntry[] {};
-			}
-			synchronized (initLock) {
-				if(initialized){
-					return;
-				}
-				container = localContainer;
-				containerEntries = localcontainerEntries;
-			}
-		} catch (JavaModelException jme) {
-			// eat it
-		} finally {
-			synchronized (initLock) {
-				initialized = true;
-			}
-		}
-	}
-	
-	@Override
-	public boolean equals(Object o) {
-		if(this == o){
-			return true;
-		}
-		
-		if(!super.equals(o)){
-			return false;
-		}
-		ClasspathContainerVirtualComponent other = (ClasspathContainerVirtualComponent) o;
-		return containerPath == null ? other.containerPath == null : containerPath.equals(other.containerPath);
-	}
-	
-	@Override
-	public int hashCode() {
-		return super.hashCode() + (containerPath == null ? 0 : containerPath.hashCode());
-	}
-
-	public String getContainerPath() {
-		return containerPath;
-	}
-	
-	@Override
-	public String getId() {
-		return CLASSPATH_CON + Path.SEPARATOR + containerPath;
-	}
-
-	@Override
-	protected String getFirstIdSegment() {
-		// Do not call
-		return null;
-	}
-	
-	public IClasspathContainer getClasspathContainer(){
-		init();
-		return container;
-	}
-	
-	private IClasspathEntry[] getEntries() {
-		init();
-		return containerEntries;
-	}
-	
-	public String getClasspathContainerPath() {
-		return containerPath;
-	}
-
-	@Override
-	public IVirtualFolder getRootFolder() {
-		IVirtualFolder folder = new VirtualFolder(project, new Path("/")) { //$NON-NLS-1$
-			@Override
-			public IVirtualResource[] members(int memberFlags) throws CoreException {
-				IClasspathEntry[] entries = getEntries();
-				ArrayList<IVirtualFile> jars = new ArrayList<IVirtualFile>();
-				for(IClasspathEntry entry: entries) {
-					if( entry.getEntryKind() == IClasspathEntry.CPE_LIBRARY) {
-						File f = entry.getPath().toFile();
-						jars.add(new AbsoluteVirtualFile(getProject(), new Path("/"), f)); //$NON-NLS-1$
-					}
-				}
-				return jars.toArray(new IVirtualFile[jars.size()]);
-			}
-		};
-		return folder;
-	}
-	
-	protected class AbsoluteVirtualFile extends VirtualFile {
-		private File file;
-		public AbsoluteVirtualFile(IProject aComponentProject,
-				IPath aRuntimePath, File absoluteFile) {
-			super(aComponentProject, aRuntimePath, null);
-			this.file = absoluteFile;
-		}
-		@Override
-		public Object getAdapter(Class adapter) { 
-			if( File.class.equals(adapter))
-				return file;
-			return null;
-		}
-	}
-	
-	@Override
-	protected IContainer[] getUnderlyingContainers() {
-		// do not implement, overriding key method members(int)
-		return new IContainer[]{};
-	}
-
-	@Override
-	protected IResource[] getLooseResources() {
-		// do not implement, overriding key method members(int)
-		return new IResource[]{};
-	}
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/IClasspathDependencyComponent.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/IClasspathDependencyComponent.java
deleted file mode 100644
index f4b044e..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/IClasspathDependencyComponent.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Red Hat 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:
- *     Red Hat - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.common.internal.modulecore;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-
-public interface IClasspathDependencyComponent extends IVirtualComponent {
-	public boolean isClassFolder();
-	public IContainer getClassFolder();
-	public IVirtualReference[] getReferences();
-	public String[] getManifestClasspath();
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/IClasspathDependencyProvider.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/IClasspathDependencyProvider.java
deleted file mode 100644
index 37fcd44..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/IClasspathDependencyProvider.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Red Hat 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:
- *     Red Hat - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.common.internal.modulecore;
-
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-
-/**
- * This class is meant to mark a virtual component as
- * a type of virtual component which can provide 
- * classpath dependencies to be included in a parent component 
- * 
- * @author rob.stryker@redhat.com
- *
- */
-public interface IClasspathDependencyProvider extends IVirtualComponent {
-	/**
-	 * Return a list of references which should be exported into a 
-	 * parent module's appropriate folder for classpath entities. 
-	 * 
-	 * @return
-	 */
-	public IVirtualReference[] getJavaClasspathReferences();
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/IClasspathDependencyReceiver.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/IClasspathDependencyReceiver.java
deleted file mode 100644
index eb26725..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/IClasspathDependencyReceiver.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Red Hat 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:
- *     Red Hat - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.common.internal.modulecore;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-
-/**
- * This class is meant to mark a virtual component as
- * a type of virtual component which can receive and handle 
- * classpath dependencies from child references 
- * 
- * @author rob.stryker@redhat.com
- *
- */
-public interface IClasspathDependencyReceiver extends IVirtualComponent {
-	/**
-	 * Runtime path used to indicate that the resolved contributions from a classpath entry should be
-	 * mapped into the exported/deployed structure of the parent module at the same location that the target module
-	 * is mapped.
-	 */
-	public static final String RUNTIME_MAPPING_INTO_CONTAINER = "../"; //$NON-NLS-1$
-	
-	/**
-	 * IPath value of RUNTIME_MAPPING_INTO_CONTAINER.
-	 */
-	public static final IPath RUNTIME_MAPPING_INTO_CONTAINER_PATH = new Path(RUNTIME_MAPPING_INTO_CONTAINER);
-
-	
-	/**
-	 * Returns whether this virtual component can accept
-	 * classpath references from children. 
-	 * 
-	 * @return
-	 */
-	public boolean canReceiveClasspathDependencies();
-	
-	/**
-	 * Return the preferred folder to place child classpath
-	 * dependencies, or null if they can go wherever the reference directs
-	 * 
-	 * @return
-	 */
-	public IPath getClasspathFolderPath(IClasspathDependencyComponent component);
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/ISingleRootStatus.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/ISingleRootStatus.java
deleted file mode 100644
index aeb87a4..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/ISingleRootStatus.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.common.internal.modulecore;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-
-public interface ISingleRootStatus extends IStatus {
-	
-	// Information [0-32] 
-	public static final int SINGLE_ROOT_CONTAINER_FOUND = 1;
-	public static final int SINGLE_ROOT_FORCED = 2;
-	//DO NOT ADD ANY OTHER CONSTANTS TO THE INFORMATION SECTION
-	
-	// Warnings [33-127]
-	public static final int SOURCE_PATH_NOT_FOUND = 33;
-	
-	// Errors [128-512]
-	public static final int NO_COMPONENT_FOUND = 129;
-	public static final int EXPLICITLY_DISABLED = 130;
-	public static final int CONSUMABLE_REFERENCES_FOUND = 131;
-	public static final int LINKED_RESOURCES_FOUND = 132;
-	public static final int NO_RESOURCE_MAPS_FOUND = 133;
-	public static final int JAVA_OUTPUT_NOT_A_CONTENT_ROOT = 134;
-	public static final int JAVA_OUTPUT_GREATER_THAN_1 = 135;
-	public static final int RUNTIME_PATH_NOT_ROOT = 136;
-	public static final int SOURCE_NOT_JAVA_CONTAINER = 137;
-	public static final int BINARY_COMPONENT_FOUND = 138;
-
-	// callback-contributed errors: 512 and up
-	
-	/**
-	 * Returns the path with which the status is associated.
-	 *
-	 * @return the path with which the status is associated.
-	 */
-	public IPath getPath();
-	
-	/** 
-	 * Will return the IContainer that is used as the "single-root".
-	 * If a "single-root" structure is not found this method will return null. 
-	 * 
-	 * @return the "single-root" container
-	 */ 
-	public IContainer getSingleRoot();
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/IgnoreJavaInSourceFolderParticipant.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/IgnoreJavaInSourceFolderParticipant.java
deleted file mode 100644
index bb8ee41..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/IgnoreJavaInSourceFolderParticipant.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Red Hat 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:
- *     Red Hat - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.common.internal.modulecore;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jst.common.jdt.internal.javalite.IJavaProjectLite;
-import org.eclipse.jst.common.jdt.internal.javalite.JavaCoreLite;
-import org.eclipse.jst.common.jdt.internal.javalite.JavaLiteUtilities;
-import org.eclipse.wst.common.componentcore.internal.flat.AbstractFlattenParticipant;
-import org.eclipse.wst.common.componentcore.internal.flat.IFlatFile;
-import org.eclipse.wst.common.componentcore.internal.flat.IFlatResource;
-import org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.FlatComponentTaskModel;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-
-public class IgnoreJavaInSourceFolderParticipant extends AbstractFlattenParticipant {
-	IJavaProjectLite liteProj = null;
-	List<IPath> containers = new ArrayList<IPath>();
-	
-	@Override
-	public void initialize(IVirtualComponent component,
-			FlatComponentTaskModel dataModel, List<IFlatResource> resources) {
-		if( hasJava(component) ) {
-			liteProj = JavaCoreLite.create(component.getProject());
-			if( liteProj != null && JavaLiteUtilities.getJavaOutputContainers(liteProj).size() > 0) {
-				List<IContainer> temp = JavaLiteUtilities.getJavaSourceContainers(liteProj);
-				Iterator<IContainer> i = temp.iterator();
-				while(i.hasNext()) {
-					containers.add(i.next().getFullPath());
-				}
-			}
-		}
-	}
-
-	@Override
-	public boolean shouldAddExportableFile(IVirtualComponent rootComponent,
-			IVirtualComponent currentComponent,
-			FlatComponentTaskModel dataModel, IFlatFile file) {
-		if( rootComponent == currentComponent ) {
-			if( hasJava(rootComponent) ) {
-				/* 
-				 * Only ignore when given an ear, war, etc, and not 
-				 * one of it's consumed children, which may be a fileset, 
-				 * or some other unknown type of contributor
-				 */
-				IFile t = (IFile)file.getAdapter(IFile.class);
-				if( t != null ) {
-					Iterator<IPath> i = containers.iterator();
-					while(i.hasNext()) {
-						if( i.next().isPrefixOf(t.getFullPath()) && t.getName().endsWith(".java")) { //$NON-NLS-1$
-							return false;
-						}
-					}
-				}
-			}
-		}
-		return true;
-	}
-	
-	protected boolean hasJava(IVirtualComponent component) {
-		try {
-			return component.getProject().isNatureEnabled("org.eclipse.jdt.core.javanature"); //$NON-NLS-1$			
-		} catch( CoreException ce) {
-			// ignore
-		}
-		return false;
-	}
-
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/ReplaceManifestExportParticipant.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/ReplaceManifestExportParticipant.java
deleted file mode 100644
index 257f197..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/ReplaceManifestExportParticipant.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Red Hat 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:
- *     Red Hat - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.common.internal.modulecore;
-
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jst.common.frameworks.CommonFrameworksPlugin;
-import org.eclipse.jst.common.internal.modulecore.util.ManifestUtilities;
-import org.eclipse.wst.common.componentcore.internal.flat.AbstractFlattenParticipant;
-import org.eclipse.wst.common.componentcore.internal.flat.FlatFile;
-import org.eclipse.wst.common.componentcore.internal.flat.IFlatFolder;
-import org.eclipse.wst.common.componentcore.internal.flat.IFlatResource;
-import org.eclipse.wst.common.componentcore.internal.flat.VirtualComponentFlattenUtility;
-import org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.FlatComponentTaskModel;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-
-/**
- * This class is solely responsible for replacing manifest.mf files
- * which require updating before being exported
- * 
- * @author rob
- *
- */
-public class ReplaceManifestExportParticipant extends AbstractFlattenParticipant {
-	//protected static final IPath MANIFEST_PATH = new Path(J2EEConstants.MANIFEST_URI);
-	private IPath manifestPath;
-	
-	public ReplaceManifestExportParticipant(IPath manifestPath) {
-		this.manifestPath = manifestPath;
-	}
-	
-	@Override
-	public void finalize(IVirtualComponent component,
-			FlatComponentTaskModel dataModel, List<IFlatResource> resources) {
-		forceUpdate(component, dataModel, resources);
-	}
-	
-	public void forceUpdate(IVirtualComponent component,
-			FlatComponentTaskModel dataModel, List<IFlatResource> resources) {
-		List<String> javaClasspathURIs = getClasspathURIs(component);
-		if( !javaClasspathURIs.isEmpty()) {
-			// find the old manifest
-			IFlatFolder parent = (IFlatFolder)VirtualComponentFlattenUtility.getExistingModuleResource(resources, manifestPath.removeLastSegments(1));
-			if( parent != null ) {
-				IFlatResource[] children = parent.members();
-				IFile original = null;
-				int originalIndex = 0;
-				for( int i = 0; i < children.length; i++) {
-					if( children[i].getName().equals(manifestPath.lastSegment())) {
-						original = (IFile)children[i].getAdapter(IFile.class);
-						originalIndex = i;
-						File newManifest = getNewManifest(component.getProject(), original, javaClasspathURIs);
-						FlatFile newManifestExportable = new FlatFile(newManifest, newManifest.getName(), manifestPath.removeLastSegments(1));
-						children[originalIndex] = newManifestExportable;
-						parent.setMembers(children);
-						return;
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * Return whichever File is the new one, even if it's the same as the old one
-	 * @return
-	 */
-	public File getNewManifest(IProject project, IFile originalManifest, List<String> javaClasspathURIs) {
-		final IPath workingLocation = project.getWorkingLocation(CommonFrameworksPlugin.PLUGIN_ID);
-		// create path to temp MANIFEST.MF 
-		final IPath tempManifestPath = workingLocation.append(manifestPath);
-		final File tempFile = tempManifestPath.toFile();
-		if (!tempFile.exists()) {
-			// create parent dirs for temp MANIFEST.MF
-			final File parent = tempFile.getParentFile();
-			if (!parent.exists()) {
-				if (!parent.mkdirs()) {
-					return originalManifest != null ? originalManifest.getLocation().toFile() : null;
-				}
-			}
-		}
-		try {	
-			ManifestUtilities.updateManifestClasspath(originalManifest, javaClasspathURIs, tempFile);
-		} catch (FileNotFoundException e) {
-		} catch (IOException e) {
-		}
-		return tempFile.exists() ? tempFile :  
-			originalManifest != null ? originalManifest.getLocation().toFile() : null;
-	}
-	
-	public static List<String> getClasspathURIs(IVirtualComponent component) {
-		ArrayList<String> uris = new ArrayList<String>();
-		uris = new ArrayList<String>();
-		if (component instanceof IClasspathDependencyProvider) {
-			final IClasspathDependencyProvider j2eeComp = (IClasspathDependencyProvider) component;
-			final IVirtualReference[] refs = j2eeComp.getJavaClasspathReferences();
-			if (refs != null) {
-				for (int i = 0; i < refs.length; i++) {
-					if (refs[i].getRuntimePath().toString().startsWith(IClasspathDependencyReceiver.RUNTIME_MAPPING_INTO_CONTAINER)) {
-						uris.add(refs[i].getRuntimePath().removeFirstSegments(1).append(refs[i].getArchiveName()).toString());
-					}
-				}
-			}
-		}
-		return uris;
-	}
-	
-	
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/SingleRootExportParticipant.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/SingleRootExportParticipant.java
deleted file mode 100644
index 8f11995..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/SingleRootExportParticipant.java
+++ /dev/null
@@ -1,243 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009, 2012 Red Hat 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:
- *     Red Hat - Initial API and implementation
- *     Roberto Sanchez Herrera - [371907] Do not add duplicate resources
- *******************************************************************************/
-package org.eclipse.jst.common.internal.modulecore;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jst.common.internal.modulecore.SingleRootUtil.SingleRootCallback;
-import org.eclipse.wst.common.componentcore.internal.DependencyType;
-import org.eclipse.wst.common.componentcore.internal.flat.AbstractFlattenParticipant;
-import org.eclipse.wst.common.componentcore.internal.flat.ChildModuleReference;
-import org.eclipse.wst.common.componentcore.internal.flat.FlatFile;
-import org.eclipse.wst.common.componentcore.internal.flat.FlatFolder;
-import org.eclipse.wst.common.componentcore.internal.flat.FlatResource;
-import org.eclipse.wst.common.componentcore.internal.flat.FlatVirtualComponent.FlatComponentTaskModel;
-import org.eclipse.wst.common.componentcore.internal.flat.IChildModuleReference;
-import org.eclipse.wst.common.componentcore.internal.flat.IFlatFile;
-import org.eclipse.wst.common.componentcore.internal.flat.IFlatFolder;
-import org.eclipse.wst.common.componentcore.internal.flat.IFlatResource;
-import org.eclipse.wst.common.componentcore.internal.flat.IFlattenParticipant;
-import org.eclipse.wst.common.componentcore.internal.flat.VirtualComponentFlattenUtility;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-
-/**
- * Single root optimization. 
- * @author rob
- */
-public class SingleRootExportParticipant extends AbstractFlattenParticipant {
-	private SingleRootParticipantCallback callbackHandler;
-	private IVirtualComponent rootComponent;
-	private FlatComponentTaskModel dataModel;
-	private IFlattenParticipant[] delegates;
-	private List<IChildModuleReference> children;
-	private	IVirtualReference[] referencesToAddAsResources = null;
-	
-	public interface SingleRootParticipantCallback extends SingleRootCallback {
-		public IFlattenParticipant[] getDelegateParticipants();
-	}
-	
-	public SingleRootExportParticipant() {
-		super();
-		callbackHandler = null;
-	}
-	public SingleRootExportParticipant(SingleRootParticipantCallback handler) {
-		this();
-		callbackHandler = handler;
-	}
-	
-	@Override
-	public void initialize(IVirtualComponent component,
-			FlatComponentTaskModel dataModel, List<IFlatResource> resources) {
-		this.rootComponent = component;
-		this.dataModel = dataModel;
-	}
-
-
-	private void initializeDelegates() {
-		if (callbackHandler != null) {
-			delegates = callbackHandler.getDelegateParticipants();
-		}
-		else {
-			delegates = new IFlattenParticipant[] {};
-		}
-	}
-	
-	@Override
-	public boolean canOptimize(IVirtualComponent component,
-			FlatComponentTaskModel dataModel) {
-		return new SingleRootUtil(component, callbackHandler).isSingleRoot();
-	}
-
-	@Override
-	public void optimize(IVirtualComponent component, FlatComponentTaskModel dataModel, 
-			List<IFlatResource> resources, List<IChildModuleReference> childModules) {
-		try {
-			resources.clear(); // We want complete control
-			childModules.clear();
-			children = childModules;
-			initializeDelegates();
-			
-			IContainer container = new SingleRootUtil(component, callbackHandler).getSingleRoot();
-			IFlatResource[] mr = getMembers(resources, container, new Path("")); //$NON-NLS-1$
-			int size = mr.length;
-			for (int j = 0; j < size; j++) {
-				resources.add(mr[j]);
-			}
-			addChildModules(component);
-			// addChildModules might have added elements to referencesToAddAsResources while looking for 
-			// child modules. Let's add these references
-			addReferencesAsResources(resources, referencesToAddAsResources);
-						
-			// run finalizers
-			for (int i = 0; i < delegates.length; i++) {
-				delegates[i].finalize(component, dataModel, resources);
-			}
-		} catch( CoreException ce ) {
-			// TODO 
-		}
-	}
-
-	/*
-	 * This function adds resources based on the list of references. 
-	 */
-	private void addReferencesAsResources(List<IFlatResource> resources,
-			IVirtualReference[] references) {
-		
-		for (IVirtualReference reference:references){
-			File f = (File)reference.getReferencedComponent().getAdapter(File.class);
-			FlatFile file = new FlatFile(f, reference.getArchiveName(), reference.getRuntimePath());
-			FlatResource existingRes = VirtualComponentFlattenUtility.getExistingModuleResource(resources, file.getModuleRelativePath().append(file.getName()));
-			// If the resource already exist in the list of resources, do not add it
-			if ( existingRes == null){
-				// The resource is not in the list if resources, so add it.
-				IPath path = reference.getRuntimePath(); // Folder to add the ref in
-				IFlatFolder folder = (IFlatFolder) VirtualComponentFlattenUtility
-						.getExistingModuleResource(resources, path.makeRelative());
-				if( folder == null ) {
-					folder = VirtualComponentFlattenUtility.ensureParentExists(resources, path, null);
-				}
-				if( folder == null )
-					resources.add(file);
-				else
-					VirtualComponentFlattenUtility.addMembersToModuleFolder(folder, new IFlatFile[]{file});	
-			}
-		}
-	}
-	
-	protected IFlatResource[] getMembers(List<IFlatResource> members, 
-			IContainer cont, IPath path) throws CoreException {
-		IResource[] res = cont.members();
-		int size2 = res.length;
-		List list = new ArrayList(size2);
-		for (int j = 0; j < size2; j++) {
-			if (res[j] instanceof IContainer) {
-				IContainer cc = (IContainer) res[j];
-				// Retrieve already existing module folder if applicable
-				IFlatFolder mf = (FlatFolder) VirtualComponentFlattenUtility.getExistingModuleResource(members,path.append(new Path(cc.getName()).makeRelative()));
-				if (mf == null) {
-					mf = new FlatFolder(cc, cc.getName(), path);
-					IFlatFolder parent = (FlatFolder) VirtualComponentFlattenUtility.getExistingModuleResource(members, path);
-					if (path.isEmpty() || path.equals(new Path("/"))) //$NON-NLS-1$
-						members.add(mf);
-					else {
-						if (parent == null)
-							parent = VirtualComponentFlattenUtility.ensureParentExists(members, path, cc);
-						VirtualComponentFlattenUtility.addMembersToModuleFolder(parent, new IFlatResource[] {mf});
-					}
-				}
-				IFlatResource[] mr = getMembers(members, cc, path.append(cc.getName()));
-				VirtualComponentFlattenUtility.addMembersToModuleFolder(mf, mr);
-			} else {
-				IFile f = (IFile) res[j];
-				IFlatFile mf = VirtualComponentFlattenUtility.createModuleFile(f, path);
-				if (shouldAddComponentFile(rootComponent, mf))
-					list.add(mf);
-			}
-		}
-		FlatResource[] mr = new FlatResource[list.size()];
-		list.toArray(mr);
-		return mr;
-	}
-	
-	protected void addChildModules(IVirtualComponent vc) throws CoreException {
-		ArrayList<IVirtualReference> refAsResource = new ArrayList<IVirtualReference>();
-
-
-		Map<String, Object> options = new HashMap<String, Object>();
-		options.put(IVirtualComponent.REQUESTED_REFERENCE_TYPE, IVirtualComponent.FLATTENABLE_REFERENCES);
-		IVirtualReference[] allReferences = vc.getReferences(options);
-    	for (int i = 0; i < allReferences.length; i++) {
-    		IVirtualReference reference = allReferences[i];
-			if (reference.getDependencyType() == DependencyType.USES ) {
-				if (shouldIgnoreReference(vc, reference))
-					continue;
-				
-				if (isChildModule(vc, reference)) {
-					ChildModuleReference cm = new ChildModuleReference(reference, new Path("")); //$NON-NLS-1$
-					List<IChildModuleReference> duplicates = new ArrayList();
-					for (IChildModuleReference tmp : children) {
-						if (tmp.getRelativeURI().equals(cm.getRelativeURI()))
-							duplicates.add(tmp);
-					}
-					children.removeAll(duplicates);
-					children.add(cm);
-				} else {
-					// It's not a child module, but it is a reference that needs to be added in anyway
-					refAsResource.add(reference);
-				}
-			}
-    	}
-    	referencesToAddAsResources = refAsResource.toArray(new IVirtualReference[refAsResource.size()]);
-	}
-	
-	protected boolean isChildModule(IVirtualComponent component, IVirtualReference referencedComponent) {
-		for (int i = 0; i < delegates.length; i++) {
-			if (delegates[i].isChildModule(component, referencedComponent, dataModel))
-				return true;
-		}
-		return false;
-	}
-
-	protected boolean shouldIgnoreReference(IVirtualComponent component, IVirtualReference referencedComponent) {
-		for (int i = 0; i < delegates.length; i++ ) {
-			if (delegates[i].shouldIgnoreReference(component, referencedComponent, dataModel))
-				return true;
-		}
-		return false;
-	}
-	
-
-	public boolean shouldAddComponentFile(IVirtualComponent component, IFlatFile file) {
-		for (int i = 0; i < delegates.length; i++) {
-			if (delegates[i].isChildModule(component, dataModel, file)) {
-				ChildModuleReference child = new ChildModuleReference(component.getProject(), file);
-				children.add(child); 
-				return false;
-			} else if (!delegates[i].shouldAddExportableFile(component, component, dataModel, file))
-				return false;
-		}
-		return true;
-	}
-	
-
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/SingleRootStatus.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/SingleRootStatus.java
deleted file mode 100644
index b78535f..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/SingleRootStatus.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.common.internal.modulecore;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jst.common.frameworks.CommonFrameworksPlugin;
-
-public class SingleRootStatus extends Status implements ISingleRootStatus {
-
-	IPath path;
-	IContainer container;
-
-	public SingleRootStatus(int type, int code, IPath resourcePath, IContainer containerPath, String message, Throwable exception) {
-		super(type, CommonFrameworksPlugin.PLUGIN_ID, code, message, exception);
-		path = resourcePath;
-		container = containerPath;
-	}
-	
-	public SingleRootStatus(int code, IPath resourcePath, IContainer containerPath) {
-		this(getSeverity(code), code, resourcePath, containerPath, null, null);
-	}
-	
-	public IPath getPath() {
-		return path;
-	}
-
-	public IContainer getSingleRoot() {
-		return container;
-	}
-	
-	protected static int getSeverity(int code) {
-		if( code < 33 ) return IStatus.INFO;
-		if( code < 128 ) return IStatus.WARNING;
-		return IStatus.ERROR;
-	}
-
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/SingleRootUtil.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/SingleRootUtil.java
deleted file mode 100644
index 0a5f438..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/SingleRootUtil.java
+++ /dev/null
@@ -1,445 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.common.internal.modulecore;
-
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jst.common.frameworks.CommonFrameworksPlugin;
-import org.eclipse.jst.common.jdt.internal.javalite.JavaLiteUtilities;
-import org.eclipse.wst.common.componentcore.internal.ComponentResource;
-import org.eclipse.wst.common.componentcore.internal.Property;
-import org.eclipse.wst.common.componentcore.internal.StructureEdit;
-import org.eclipse.wst.common.componentcore.internal.WorkbenchComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-
-public class SingleRootUtil {
-	public interface SingleRootCallback {
-		public boolean canValidate(IVirtualComponent vc);
-		public void validate(SingleRootUtil util, IVirtualComponent vc, IProject project, List resourceMaps);
-	}
-	
-	/** 
-	 * Used to return immediately after the first error code is found.
-	 */
-	public static final int INCLUDE_FIRST_ERROR = 0x08;
-	/** 
-	 * Used to capture all status codes (error, warning, info)
-	 */
-	public static final int INCLUDE_ALL = 0x07;
-	/** 
-	 * Used to capture all error and warning status codes only.
-	 */
-	public static final int INCLUDE_ERRORS_AND_WARNINGS = 0x06;
-	/** 
-	 * Used to capture all error status codes only.
-	 */
-	public static final int INCLUDE_ERRORS = 0x04;
-	
-	private static final int WARNINGS = 0x02;
-	private static final int INFO = 0x01;
-	private static final int CANCEL = 0x0;
-	private static final int GET_SINGLE_ROOT_CONTAINER = 0x09;
-	private static String USE_SINGLE_ROOT_PROPERTY = "useSingleRoot"; //$NON-NLS-1$
-	private IVirtualComponent aComponent;
-	private SingleRootCallback callback;
-	private List<IContainer> cachedSourceContainers;
-	private IContainer[] cachedOutputContainers;
-	private MultiStatus wrapperStatus;
-	private int VALIDATE_FLAG;
-	
-	public SingleRootUtil(IVirtualComponent component) {
-		this(component, null);
-	}
-
-	public SingleRootUtil(IVirtualComponent component, SingleRootCallback callback) {
-		this.aComponent = component;
-		this.callback = callback;
-	}
-	
-
-	/**
-	 * Returns true if this module has a simple structure based on a
-	 * single-root folder, and false otherwise.
-     *
-	 * In a single-root structure, all files that are contained within the root folder
-	 * are part of the module, and are already in the correct module structure. No
-	 * module resources exist outside of this single folder.
-	 * 
-	 * @return true if this module has a single-root structure, and
-	 *         false otherwise
-	 */
-	public boolean isSingleRoot() {
-		return validateSingleRoot(INCLUDE_FIRST_ERROR).getSeverity() != IStatus.ERROR;
-	}
-	
-	/**
-	 * Will attempt to return the IContainer that counts as the "single-root".
-	 * If this module does not qualify as a "single-root" module, this
-	 * method will return null. Otherwise it will return an IContainer
-	 * that may be used as the single-root container. 
-	 * 
-	 * @return IContainer representing single-root container
-	 */
-	public IContainer getSingleRoot() {
-		IStatus status = validateSingleRoot(GET_SINGLE_ROOT_CONTAINER);
-		if (status.getSeverity() == IStatus.INFO) {
-			IStatus[] children = ((MultiStatus) status).getChildren();
-			ISingleRootStatus rootStatus = (ISingleRootStatus) children[0];
-			return rootStatus.getSingleRoot();
-		}
-		return null;	
-	}
-
-	/**
-	 *  Validates whether the component module has a single-root structure.
-	 *  An IStatus with a severity of OK is returned for a valid single-root 
-	 *  structure.  A MultiStatus containing children of type ISingleRootStatus
-	 *  is returned if any status codes were captured during the validation.
-	 *  A MultiStatus with a severity of INFO or WARNING is returned for a valid 
-	 *  single-root structure containing status codes with no severities of ERROR.
-	 *  A MultiStatus with a severity of ERROR means the component does not have a
-	 *  valid single-root structure.
-	 *  
-	 * @param flag - indicates the status codes (by severity) to capture during
-	 *               the validation.  The INLCUDE_ALL flag will also capture the 
-	 *               single-root container if a single-root structure was found.
-	 *               Valid flags are: 
-	 *               				  INCLUDE_ALL
-	 *                                INCLUDE_ERRORS_AND_WARNINGS
-	 *                                INCLUDE_ERRORS
-	 *                                INCLUDE_FIRST_ERROR
-	 *               
-	 * @return IStatus
-	 */
-	public IStatus validateSingleRoot(int flag) {
-		VALIDATE_FLAG = flag;
-		wrapperStatus = null;
-		StructureEdit edit = null;
-		try {
-			edit = StructureEdit.getStructureEditForRead(getProject());
-			if (edit == null || edit.getComponent() == null) {
-				reportStatus(ISingleRootStatus.NO_COMPONENT_FOUND);
-				return getStatus();
-			}	
-			
-			if (aComponent.isBinary()) {
-				reportStatus(ISingleRootStatus.BINARY_COMPONENT_FOUND);
-				return getStatus();
-			}
-			
-			// 229650 - check to see if the property 'useSingleRoot' is defined. 
-			Boolean useSingleRoot = getUseSingleRootProperty(edit);
-			if (useSingleRoot != null) {
-				//check if it was set to false
-				if (!useSingleRoot.booleanValue()) {
-					reportStatus(ISingleRootStatus.EXPLICITLY_DISABLED);
-				}
-				else {
-					reportStatus(ISingleRootStatus.SINGLE_ROOT_FORCED, aComponent.getRootFolder().getUnderlyingFolder());
-				}
-				return getStatus();
-			}
-			
-			// if there are any consumed references, this is not single-root
-			if (hasConsumableReferences(aComponent)) {
-				reportStatus(ISingleRootStatus.CONSUMABLE_REFERENCES_FOUND);
-				if (VALIDATE_FLAG == CANCEL)
-					return getStatus();
-			}
-			
-			// if there are any linked resources then this is not a single-root module
-			if (rootFoldersHaveLinkedContent()) {
-				reportStatus(ISingleRootStatus.LINKED_RESOURCES_FOUND);
-				if (VALIDATE_FLAG == CANCEL) 
-					return getStatus();
-			}
-			
-			List resourceMaps = edit.getComponent().getResources();
-			
-			// If the list is empty, return false
-			if (resourceMaps.size() < 1) {
-				reportStatus(ISingleRootStatus.NO_RESOURCE_MAPS_FOUND);
-				return getStatus();
-			}
-			
-			if (callback != null && callback.canValidate(aComponent)) { 
-				callback.validate(this, aComponent, getProject(), resourceMaps);
-			} 
-			if (VALIDATE_FLAG != CANCEL) {
-				validateProject(resourceMaps);
-			}
-			return getStatus();
-		} finally {
-			cachedOutputContainers = null;
-			cachedSourceContainers = null;
-			if (edit != null)
-				edit.dispose();
-		}
-	}
-	
-	protected Boolean getUseSingleRootProperty(StructureEdit edit) {
-		WorkbenchComponent wbComp = edit.getComponent();
-		final List componentProperties = wbComp.getProperties();
-		if (componentProperties != null) {
-			final Iterator componentPropertiesIterator = componentProperties.iterator();
-			while (componentPropertiesIterator.hasNext()) {
-				Property wbProperty = (Property) componentPropertiesIterator.next();
-				if (USE_SINGLE_ROOT_PROPERTY.equals(wbProperty.getName())) {
-					return Boolean.valueOf(wbProperty.getValue());
-				}
-			}
-		}
-		return null;
-	}
-	
-	protected boolean hasConsumableReferences(IVirtualComponent vc) {
-		IVirtualReference[] refComponents = vc.getReferences();
-    	for (int i = 0; i < refComponents.length; i++) {
-    		IVirtualReference reference = refComponents[i];
-    		if (reference != null && reference.getDependencyType()==IVirtualReference.DEPENDENCY_TYPE_CONSUMES) {
-    			return true;
-    		}
-    	}
-    	return false;
-    }
-
-	private void validateProject(List resourceMaps) {
-		// Ensure there are only source folder component resource mappings to the root content folder
-		if (isRootResourceMapping(resourceMaps)) {
-			IContainer[] javaOutputFolders = getJavaOutputFolders();
-			// Verify only one java outputfolder
-			if (javaOutputFolders.length == 1) {
-				// By the time we get here we know: for any folders defined as source in the 
-				// .component file that they are also java source folders.
-				if (!isSourceContainer(javaOutputFolders[0])) {
-					// The single output folder is NOT a source folder so this is single-rooted. Since the
-					// output folder (something like classes or bin) is not a source folder, JDT copies all files
-					// (including non Java files) to this folder, so every resource needed at runtime is located 
-					// in a single directory.
-					reportStatus(ISingleRootStatus.SINGLE_ROOT_CONTAINER_FOUND, javaOutputFolders[0]);
-					return;
-				} 
-				// Verify the java output folder is the same as one of the content roots
-				IPath javaOutputPath = getJavaOutputFolders()[0].getProjectRelativePath();
-				IContainer[] rootFolders = aComponent.getRootFolder().getUnderlyingFolders();
-				for (int i=0; i < rootFolders.length; i++) {
-					IPath compRootPath = rootFolders[i].getProjectRelativePath();
-					if (javaOutputPath.equals(compRootPath)) {
-						reportStatus(ISingleRootStatus.SINGLE_ROOT_CONTAINER_FOUND, aComponent.getRootFolder().getUnderlyingFolder());
-						return;
-					}
-				}
-				reportStatus(ISingleRootStatus.JAVA_OUTPUT_NOT_A_CONTENT_ROOT);
-			}
-			else {
-				reportStatus(ISingleRootStatus.JAVA_OUTPUT_GREATER_THAN_1);
-			}
-		}
-	}
-
-	public IContainer[] getJavaOutputFolders() {
-		if (cachedOutputContainers == null)
-			cachedOutputContainers = getJavaOutputFolders(aComponent);
-		return cachedOutputContainers;
-	}
-	
-	public static IContainer[] getJavaOutputFolders(IVirtualComponent component) {
-		if (component == null)
-			return new IContainer[0];
-		
-		List<IContainer> l = JavaLiteUtilities.getJavaOutputContainers(component);
-		return l.toArray(new IContainer[l.size()]);
-	}	
-	
-	/**
-	 * Checks if the path argument is to a source container for the project.
-	 * 
-	 * @param a workspace relative full path
-	 * @return is path a source container?
-	 */
-	public boolean isSourceContainer(IContainer sourceContainer) {
-		if (cachedSourceContainers == null) {
-			cachedSourceContainers = getSourceContainers(aComponent);
-		}
-		return cachedSourceContainers.contains(sourceContainer);
-	}
-	
-	public static List<IContainer> getSourceContainers(IVirtualComponent component) {
-		if (component == null)
-			Collections.emptyList();
-		return JavaLiteUtilities.getJavaSourceContainers(component);
-	}	
-	
-	/*
-     * This method returns true if the root folders of this component have any linked resources (folder or file);
-     * Otherwise false is returned.
-     */
-    private boolean rootFoldersHaveLinkedContent() {
-    	if (this.aComponent != null) {
-    		final IContainer[] rootFolders = this.aComponent.getRootFolder().getUnderlyingFolders();
-    		for (int i = 0; i < rootFolders.length; i++) {
-    			try {
-    				boolean hasLinkedContent = this.hasLinkedContent(rootFolders[i]);
-    				if (hasLinkedContent) {
-    					return true;
-    				}
-    			}
-    			catch (CoreException coreEx) {
-    				CommonFrameworksPlugin.logError(coreEx);
-    			}
-    		}
-    	}
-    	return false;
-    }
-    
-    /*
-     * If the resource to check is a file then this method will return true if the file is linked. If the resource to
-     * check is a folder then this method will return true if it, any of its sub directories, or any file contained
-     * with-in this directory of any of it's sub directories are linked. Otherwise false is returned.
-     */
-    private boolean hasLinkedContent(final IResource resourceToCheck) throws CoreException {
-    	if ((resourceToCheck != null) && resourceToCheck.isAccessible()) {
-    		// skip non-accessible files
-    		if (resourceToCheck.isLinked()) {
-    			return true;
-    		}
-    		switch (resourceToCheck.getType()) {
-    			case IResource.FOLDER:
-    				// recursively check sub directory contents
-    				final IResource[] subDirContents = ((IFolder) resourceToCheck).members();
-    				for (int i = 0; i < subDirContents.length; i++) {
-    					if (hasLinkedContent(subDirContents[i])) {
-    						return true;
-    					}
-    				}
-    				break;
-    			case IResource.FILE:
-    				return resourceToCheck.isLinked();
-    			default:
-    				// skip as we only care about files and folders
-    				break;
-    		}
-    	}
-    	return false;
-    }
-    
-    /**
-	 * Ensure that any component resource mappings are for source folders and 
-	 * that they map to the root content folder
-	 * 
-	 * @param resourceMaps
-	 * @return boolean
-	 */
-	private boolean isRootResourceMapping(List resourceMaps) {
-		for (int i=0; i < resourceMaps.size(); i++) {
-			ComponentResource resourceMap = (ComponentResource) resourceMaps.get(i);
-			// Verify it maps to "/" for the content root
-			if (!isRootMapping(resourceMap)) {
-				reportStatus(ISingleRootStatus.RUNTIME_PATH_NOT_ROOT, resourceMap.getRuntimePath());
-				if (VALIDATE_FLAG == CANCEL) return false;
-			}
-			
-			// verify it is also a src container
-			IPath sourcePath = resourceMap.getSourcePath();
-			IResource sourceResource = getProject().findMember(sourcePath);
-			if (sourceResource != null && sourceResource.exists()) {
-				if (sourceResource instanceof IContainer && !isSourceContainer((IContainer) sourceResource)) {
-					reportStatus(ISingleRootStatus.SOURCE_NOT_JAVA_CONTAINER, sourcePath);
-				}
-			}
-			else {
-				reportStatus(ISingleRootStatus.SOURCE_PATH_NOT_FOUND, sourcePath);
-			}
-			if (VALIDATE_FLAG == CANCEL) return false;
-		}
-		return true;
-	}
-	
-	public boolean isRootMapping(ComponentResource map) {
-		// Verify it maps to "/" for the content root
-		if (map.getRuntimePath().equals(Path.ROOT))
-			return true;
-		return false;
-	}
-		
-	public IProject getProject() {
-		return aComponent.getProject();
-	}
-
-	public void reportStatus(int code) {
-		reportStatus(code, null, null);
-	}
-	
-	public void reportStatus(int code, IContainer container) {
-		reportStatus(code, null, container);
-	}
-	
-	public void reportStatus(int code, IPath path) {
-		reportStatus(code, path, null);
-	}
-	
-	public void reportStatus(int code, IPath path, IContainer container) {
-		ISingleRootStatus status = new SingleRootStatus(code, path, container);
-		if (status.getSeverity() == IStatus.ERROR) {
-			if ((VALIDATE_FLAG & INCLUDE_FIRST_ERROR) != 0) {
-				VALIDATE_FLAG = CANCEL;
-				addStatus(status);
-			}
-			else if ((VALIDATE_FLAG & INCLUDE_ERRORS) != 0) {
-				addStatus(status);
-			}
-		}
-		else if (status.getSeverity() == IStatus.WARNING && (VALIDATE_FLAG & WARNINGS) != 0) {
-			addStatus(status);
-		}
-		else if (status.getSeverity() == IStatus.INFO && (VALIDATE_FLAG & INFO) != 0) { 
-			VALIDATE_FLAG = CANCEL;
-			addStatus(status);
-		}
-	}
-
-	public int getValidateFlag() {
-		return VALIDATE_FLAG;
-	}
-
-	public void setValidateFlag(int validateFlag) {
-		VALIDATE_FLAG = validateFlag;
-	}
-
-	public IStatus getStatus() {
-		if (wrapperStatus != null) {
-			return wrapperStatus;
-		}
-		return Status.OK_STATUS;
-	}
-
-	private void addStatus(ISingleRootStatus status) {
-		if (wrapperStatus == null) {
-			wrapperStatus = new MultiStatus(CommonFrameworksPlugin.PLUGIN_ID, 0, new IStatus[] { status }, null, null);
-		} else {
-			wrapperStatus.add(status);
-		}
-	}
-	
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/AbstractJavaComponentDiscerner.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/AbstractJavaComponentDiscerner.java
deleted file mode 100644
index 2a93e0f..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/AbstractJavaComponentDiscerner.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Red Hat 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:
- *     Red Hat - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.common.internal.modulecore.util;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-
-public class AbstractJavaComponentDiscerner implements IJavaComponentDiscerner {
-
-	public IProject[] findParentProjects(IProject child) {
-		return new IProject[]{};
-	}
-
-	public IVirtualReference[] findPossibleManifestEntries(
-			IProject parentProject, IProject childProject) {
-		return new IVirtualReference[]{};
-	}
-
-	public IVirtualReference[] findPossibleManifestEntries(
-			IProject parentProject, IProject childProject,
-			IVirtualReference[] currentEntries) {
-		return new IVirtualReference[]{};
-	}
-
-	public IVirtualReference[] findCurrentManifestEntries(
-			IProject parentProject, IProject childProject) {
-		return new IVirtualReference[]{};
-	}
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/ArchiveManifest.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/ArchiveManifest.java
deleted file mode 100644
index db2dd0e..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/ArchiveManifest.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2005 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.jst.common.internal.modulecore.util;
-
-
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.util.Map;
-import java.util.jar.Attributes;
-
-/**
- * Contains the API of
- * 
- * @link java.util.jar.Manifest, along with added helpers
- */
-public interface ArchiveManifest {
-	/**
-	 * Creates a new manifest entry (attributes) for the given name
-	 */
-	public void addEntry(String entryName);
-
-	public void addEntry(String entryName, Attributes attr);
-
-	/**
-	 * Adds the key/value pair to the attributes for the given entry name; if the entry does not
-	 * exist, creates a new attributes
-	 */
-	public void addEntryAttribute(String entryName, String key, String value);
-
-	/**
-	 * Defaults the version to "1.0" if not already set
-	 */
-	public void addVersionIfNecessary();
-
-	public void appendClassPath(String extension);
-
-	/**
-	 * @see java.util.jar.Manifest#clear
-	 */
-	public void clear();
-
-	/**
-	 * @see java.util.jar.Manifest#getAttributes
-	 */
-	public Attributes getAttributes(String name);
-
-	public String getClassPath();
-
-	public String[] getClassPathTokenized();
-
-	/**
-	 * @see java.util.jar.Manifest#getEntries
-	 */
-	public Map getEntries();
-
-	public String getEntryAttribute(String entryName, String key);
-
-	/**
-	 * @see java.util.jar.Manifest#getAttributes
-	 */
-	public Attributes getMainAttributes();
-
-	public String getMainClass();
-
-	/**
-	 * Return the value iff the entry exists in a case-sensitive manner; manifest version is
-	 * required for the manifest to save correctly
-	 */
-	public String getManifestVersion();
-	
-	/**
-	 * Return the value iff the entry exists in a case-sensitive manner; implementation version is
-	 * optional in  the manifest
-	 * */
-	public String getImplementationVersion();
-
-	/**
-	 * Add all the entries not already contained in the class path of this manifest
-	 */
-	public void mergeClassPath(String[] classPathEntries);
-
-	/**
-	 * @see java.util.jar.Manifest#read
-	 */
-	public void read(InputStream is) throws IOException;
-
-	public void removeEntry(String entryName);
-
-	public void removeEntryAttribute(String entryName, Object key);
-
-	public void setClassPath(String aSpaceDelimitedPath);
-
-	public void setMainClass(String className);
-
-	public void setManifestVersion(java.lang.String version);
-	
-	public void setImplemenationVersion(java.lang.String version);
-
-	/**
-	 * @see java.util.jar.Manifest#write
-	 */
-	public void write(OutputStream out) throws IOException;
-
-	/**
-	 * Writes the Manifest to the specified OutputStream, splitting each classpath entry on a line
-	 * by itself.
-	 * 
-	 * @param out
-	 *            the output stream
-	 * @exception IOException
-	 *                if an I/O error has occurred
-	 */
-	public void writeSplittingClasspath(OutputStream out) throws IOException;
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/ArchiveManifestImpl.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/ArchiveManifestImpl.java
deleted file mode 100644
index 166b6de..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/ArchiveManifestImpl.java
+++ /dev/null
@@ -1,357 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 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.jst.common.internal.modulecore.util;
-
-
-
-import java.io.DataOutputStream;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.jar.Attributes;
-
-import com.ibm.icu.util.StringTokenizer;
-
-
-/**
- * Helper class for manifest files
- */
-public class ArchiveManifestImpl extends java.util.jar.Manifest implements ArchiveManifest {
-	/**
-	 * ArchiveManifest constructor comment.
-	 */
-	public ArchiveManifestImpl() {
-		super();
-	}
-
-	/**
-	 * ArchiveManifest constructor comment.
-	 * 
-	 * @param is
-	 *            java.io.InputStream
-	 * @throws java.io.IOException
-	 *             The exception description.
-	 */
-	public ArchiveManifestImpl(java.io.InputStream is) throws java.io.IOException {
-		try {
-			read(is);
-		} catch(Exception e){
-			IOException ioe = new IOException(e.toString());
-			ioe.initCause(e);
-			throw ioe;
-		}
-	}
-
-	/**
-	 * ArchiveManifest constructor comment.
-	 * 
-	 * @param man
-	 *            java.util.jar.Manifest
-	 */
-	public ArchiveManifestImpl(java.util.jar.Manifest man) {
-		super(man);
-	}
-
-	/**
-	 * Creates a new manifest entry (attributes) for the given name
-	 */
-	public void addEntry(String entryName) {
-		Attributes attr = new Attributes();
-		addEntry(entryName, attr);
-	}
-
-	public void addEntry(String entryName, Attributes attr) {
-		getEntries().put(entryName, attr);
-	}
-
-	/**
-	 * Adds the key/value pair to the attributes for the given entry name; if the entry does not
-	 * exist, creates a new attributes
-	 */
-	public void addEntryAttribute(String entryName, String key, String value) {
-		Attributes attr = getAttributes(entryName);
-		if (attr == null)
-			addEntry(entryName);
-		attr = getAttributes(entryName);
-		attr.putValue(key, value);
-	}
-
-	public void addVersionIfNecessary() {
-		//This is a hack because of the fact that the manifest does not serialize correctly if
-		//The version is not set. In addition to saves, the serialization is used for copy
-		if (getManifestVersion() == null || getManifestVersion().equals(""))//$NON-NLS-1$
-			setManifestVersion("1.0");//$NON-NLS-1$
-	}
-
-	/**
-	 * @see org.eclipse.jst.j2ee.commonarchivecore.internal.helpers.ArchiveManifest
-	 */
-	public void appendClassPath(java.lang.String extension) {
-		String classPath = getClassPath();
-		if (classPath != null)
-			setClassPath(classPath + " " + extension);//$NON-NLS-1$
-		else
-			setClassPath(extension);
-	}
-
-	/**
-	 * @see org.eclipse.jst.j2ee.commonarchivecore.internal.helpers.ArchiveManifest
-	 */
-	public java.lang.String getClassPath() {
-		return ManifestUtilities.getValueIgnoreKeyCase(Attributes.Name.CLASS_PATH.toString(), getMainAttributes());
-	}
-
-	/**
-	 * @see org.eclipse.jst.j2ee.commonarchivecore.internal.helpers.ArchiveManifest
-	 */
-	public java.lang.String[] getClassPathTokenized() {
-		String classPath = getClassPath();
-		if (classPath == null)
-			return new String[0];
-		return ManifestUtilities.getTokens(classPath);
-	}
-
-	public String getEntryAttribute(String entryName, String key) {
-		Attributes attr = getAttributes(entryName);
-		if (attr == null)
-			return null;
-		return attr.getValue(key);
-	}
-
-	public String getMainClass() {
-		return ManifestUtilities.getValueIgnoreKeyCase(Attributes.Name.MAIN_CLASS.toString(), getMainAttributes());
-	}
-
-	public String getManifestVersion() {
-		return getMainAttributes().getValue(Attributes.Name.MANIFEST_VERSION);
-	}
-
-	/**
-	 * @see org.eclipse.jst.j2ee.commonarchivecore.internal.helpers.ArchiveManifest
-	 */
-	public void mergeClassPath(java.lang.String[] classPathEntries) {
-		StringBuffer sb = new StringBuffer();
-		java.util.List existing = java.util.Arrays.asList(getClassPathTokenized());
-		String cp = getClassPath();
-		if (cp != null)
-			sb.append(cp);
-		boolean empty = cp == null || "".equals(cp); //$NON-NLS-1$
-		for (int i = 0; i < classPathEntries.length; i++) {
-			if (!existing.contains(classPathEntries[i])) {
-				if (!empty)
-					sb.append(" "); //$NON-NLS-1$
-				else
-					empty = false;
-				sb.append(classPathEntries[i]);
-			}
-		}
-		setClassPath(sb.toString());
-	}
-
-	public void removeEntry(String entryName) {
-		getEntries().remove(entryName);
-	}
-
-	public void removeEntryAttribute(String entryName, Object key) {
-		Attributes attr = getAttributes(entryName);
-		if (attr != null)
-			attr.remove(key);
-	}
-
-	/**
-	 * @see org.eclipse.jst.j2ee.commonarchivecore.internal.helpers.ArchiveManifest
-	 */
-	public void setClassPath(java.lang.String aSpaceDelimitedPath) {
-		Attributes attributes = getMainAttributes();
-		if (aSpaceDelimitedPath == null)
-			attributes.remove(Attributes.Name.CLASS_PATH);
-		else
-			attributes.putValue(Attributes.Name.CLASS_PATH.toString(), aSpaceDelimitedPath);
-	}
-
-	/**
-	 * @see org.eclipse.jst.j2ee.commonarchivecore.internal.helpers.ArchiveManifest
-	 */
-	public void setMainClass(java.lang.String className) {
-		Attributes attributes = getMainAttributes();
-		if (className == null)
-			attributes.remove(Attributes.Name.MAIN_CLASS);
-		else
-			attributes.putValue(Attributes.Name.MAIN_CLASS.toString(), className);
-	}
-
-	/**
-	 * @see org.eclipse.jst.j2ee.commonarchivecore.internal.helpers.ArchiveManifest
-	 */
-	public void setManifestVersion(java.lang.String version) {
-		Attributes attributes = getMainAttributes();
-		attributes.putValue(Attributes.Name.MANIFEST_VERSION.toString(), version);
-	}
-
-	/**
-	 * Writes the Manifest to the specified OutputStream, splitting each classpath entry on a line
-	 * by itself.
-	 * 
-	 * @param out
-	 *            the output stream
-	 * @exception IOException
-	 *                if an I/O error has occurred
-	 */
-	public void writeSplittingClasspath(OutputStream out) throws IOException {
-		DataOutputStream dos = new DataOutputStream(out);
-		// Write out the main attributes for the manifest
-		writeMainSplittingClasspath(getMainAttributes(), dos);
-		// Now write out the pre-entry attributes
-		Iterator it = getEntries().entrySet().iterator();
-		while (it.hasNext()) {
-			Map.Entry e = (Map.Entry) it.next();
-			StringBuffer buffer = new StringBuffer("Name: "); //$NON-NLS-1$
-			buffer.append((String) e.getKey());
-			buffer.append("\r\n"); //$NON-NLS-1$
-			localMake72Safe(buffer);
-			dos.writeBytes(buffer.toString());
-			write((Attributes) e.getValue(), dos);
-		}
-		dos.flush();
-	}
-
-	/*
-	 * Writes the current attributes to the specified data output stream. XXX Need to handle UTF8
-	 * values and break up lines longer than 72 bytes
-	 * 
-	 * @see Attributes#write
-	 */
-	protected void write(Attributes attributes, DataOutputStream os) throws IOException {
-		Iterator it = attributes.entrySet().iterator();
-		while (it.hasNext()) {
-			Map.Entry e = (Map.Entry) it.next();
-			StringBuffer buffer = new StringBuffer(((Attributes.Name) e.getKey()).toString());
-			buffer.append(": "); //$NON-NLS-1$
-			buffer.append(toUtf8((String) e.getValue()));
-			buffer.append("\r\n"); //$NON-NLS-1$
-			localMake72Safe(buffer);
-			os.writeBytes(buffer.toString());
-		}
-		os.writeBytes("\r\n"); //$NON-NLS-1$
-	}
-
-	/*
-	 * Writes the current attributes to the specified data output stream, make sure to write out the
-	 * MANIFEST_VERSION or SIGNATURE_VERSION attributes first.
-	 * 
-	 * @see Attributes#writeMain
-	 */
-	protected void writeMainSplittingClasspath(Attributes attributes, DataOutputStream out) throws IOException {
-		// write out the *-Version header first, if it exists
-		String vername = Attributes.Name.MANIFEST_VERSION.toString();
-		String version = toUtf8(attributes.getValue(vername));
-		if (version == null) {
-			vername = Attributes.Name.SIGNATURE_VERSION.toString();
-			version = toUtf8(attributes.getValue(vername));
-		}
-
-		if (version != null) {
-			out.writeBytes(vername + ": " + version + "\r\n"); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-
-		// write out all attributes except for the version
-		// we wrote out earlier
-		Iterator it = attributes.entrySet().iterator();
-		while (it.hasNext()) {
-			Map.Entry e = (Map.Entry) it.next();
-			String name = ((Attributes.Name) e.getKey()).toString();
-			if ((version != null) && !(name.equalsIgnoreCase(vername))) {
-				if (name.equalsIgnoreCase(Attributes.Name.CLASS_PATH.toString())) {
-					writeSplit(out, name, toUtf8((String) e.getValue()));
-					continue;
-				}
-				StringBuffer buffer = new StringBuffer(name);
-				buffer.append(": "); //$NON-NLS-1$
-				buffer.append(toUtf8((String) e.getValue()));
-				buffer.append("\r\n"); //$NON-NLS-1$
-				localMake72Safe(buffer);
-				out.writeBytes(buffer.toString());
-			}
-		}
-		out.writeBytes("\r\n"); //$NON-NLS-1$
-	}
-
-	protected void writeSplit(DataOutputStream out, String name, String value) throws IOException {
-		StringTokenizer tok = new StringTokenizer(value);
-		int inc = 0;
-		while (tok.hasMoreTokens()) {
-			StringBuffer buffer = null;
-			if (inc == 0) {
-				buffer = new StringBuffer(name);
-				buffer.append(": "); //$NON-NLS-1$
-			} else {
-				buffer = new StringBuffer();
-				buffer.append(' ');
-			}
-			buffer.append(tok.nextToken());
-			if (tok.countTokens() > 0)
-				buffer.append(" \r\n"); //$NON-NLS-1$
-			else
-				buffer.append("\r\n"); //$NON-NLS-1$
-			localMake72Safe(buffer);
-			out.writeBytes(buffer.toString());
-			inc++;
-		}
-	}
-
-	/**
-	 * Adds line breaks to enforce a maximum 72 bytes per line.
-	 */
-	protected static void localMake72Safe(StringBuffer line) {
-		int length = line.length();
-		if (length > 72) {
-			int index = 70;
-			// bug 233801 - we are splitting every 72 bytes, but adding two bytes to the end of, 
-			// and one space at the beginning of every line after the first
-			while (index - 1 < length) {
-				if (line.charAt(index) == ' ')
-				{
-					index--;
-				}
-				line.insert(index, "\r\n "); //$NON-NLS-1$
-				index += 72;
-				length += 3;
-			}
-		}
-		return;
-	}
-
-	public String getImplementationVersion() {
-		return getMainAttributes().getValue(Attributes.Name.IMPLEMENTATION_VERSION);
-	}
-
-	public void setImplemenationVersion(String version) {
-		Attributes attributes = getMainAttributes();
-		attributes.putValue(Attributes.Name.IMPLEMENTATION_VERSION.toString(), version);
-	}
-    
-    /**
-     * Encodes a double-byte string into UTF8 form. Every character in the
-     * returned string represents one byte of the UTF8 encoding. 
-     */
-    
-    private String toUtf8( final String str ) throws IOException
-    {
-        if( str == null )
-        {
-            return null;
-        }
-        final byte[] utf8 = str.getBytes( "UTF-8" ); //$NON-NLS-1$
-        return new String( utf8, 0, 0, utf8.length );
-    }
-
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/IJavaComponentDiscerner.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/IJavaComponentDiscerner.java
deleted file mode 100644
index 55f6c02..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/IJavaComponentDiscerner.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Red Hat 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:
- *     Red Hat - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.common.internal.modulecore.util;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-
-/**
- * This is internal. Please don't use it unless you're prepared 
- * for it to change drastically at any random time. 
- * 
- * This interface represents a utility to help discover the heirarchy 
- * of java-related components, and assist in manifest management.
- */
-public interface IJavaComponentDiscerner {
-	/**
-	 * Return a list of parent projects, projects which already *do* have  
-	 * a project reference to this child project
-	 * @param child
-	 * @return
-	 */
-	public IProject[] findParentProjects(IProject child);
-	
-	/**
-	 * All returned manifest entries should have a runtime path and archiveName 
-	 * which, when combined, will be suitable for export to a child's 
-	 * manifest file. If a reference is in a folder that does not
-	 * require it to be present in the manifest.mf classpath, it 
-	 * should *NOT* be returned here. 
-	 * 
-	 * All references should have a getRuntimePath() + getArchiveName() that
-	 * resolves to the value that should be in the manifest.mf classpath section. 
-	 * 
-	 * Any reference *already* in the manifest should *not* be returned here
-	 * 
-	 * @param parentProject
-	 * @param childProject
-	 * @return
-	 */
-	public IVirtualReference[] findPossibleManifestEntries(IProject parentProject, IProject childProject);
-	
-	/**
-	 * All returned manifest entries should have a runtime path and archiveName 
-	 * which, when combined, will be suitable for export to a child's 
-	 * manifest file. If a reference is in a folder that does not
-	 * require it to be present in the manifest.mf classpath, it 
-	 * should *NOT* be returned here. 
-	 * 
-	 * All references should have a getRuntimePath() + getArchiveName() that
-	 * resolves to the value that should be in the manifest.mf classpath section. 
-	 * 
-	 * Any reference equivilant to the ones in currentEntries should not be returned
-	 * 
-	 * @param parentProject
-	 * @param childProject
-	 * @return
-	 */
-	public IVirtualReference[] findPossibleManifestEntries(IProject parentProject, IProject childProject, IVirtualReference[] currentEntries);
-	
-	
-	/**
-	 * All returned manifest entries should have a runtime path and archiveName 
-	 * which, when combined, will be suitable for export to a child's 
-	 * manifest file. If a reference is in a folder that does not
-	 * require it to be present in the manifest.mf classpath, it 
-	 * should *NOT* be returned here. 
-	 * 
-	 * All references should have a getRuntimePath() + getArchiveName() that
-	 * resolves to the value that should be in the manifest.mf classpath section. 
-	 * 
-	 * Any reference *not* in the manifest should *not* be returned here
-	 * 
-	 * @param parentProject
-	 * @param childProject
-	 * @return
-	 */
-	public IVirtualReference[] findCurrentManifestEntries(IProject parentProject, IProject childProject);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/JavaModuleComponentUtility.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/JavaModuleComponentUtility.java
deleted file mode 100644
index 48d9567..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/JavaModuleComponentUtility.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2009 Red Hat 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:
- *     Red Hat - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.common.internal.modulecore.util;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionRegistry;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jst.common.frameworks.CommonFrameworksPlugin;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-
-/**
- * A Utility class to help find current and possible manifest entries
- */
-public class JavaModuleComponentUtility {
-
-	private static IJavaComponentDiscerner[] discerners;
-	protected static IJavaComponentDiscerner[] getDiscerners() {
-		if( discerners == null ) {
-			discerners = loadDiscerners();
-		}
-		return discerners == null ? new IJavaComponentDiscerner[]{} : discerners;
-	}
-	
-	private static IJavaComponentDiscerner[] loadDiscerners() {
-		ArrayList<IJavaComponentDiscerner> list = new ArrayList<IJavaComponentDiscerner>();
-        IExtensionRegistry registry = Platform.getExtensionRegistry();
-        IConfigurationElement[] cf = registry.getConfigurationElementsFor(
-        		CommonFrameworksPlugin.PLUGIN_ID, "JavaComponentDiscerner"); //$NON-NLS-1$
-        for( int i = 0; i < cf.length; i++ ) {
-        	try {
-                list.add((IJavaComponentDiscerner)cf[i].createExecutableExtension("class")); //$NON-NLS-1$
-        	} catch( CoreException ce ) {
-        		// TODO log
-        	}
-        }
-        return list.toArray(new IJavaComponentDiscerner[list.size()]);
-	}
-	
-	public static IProject[] findParentProjects(IProject child) {
-		IJavaComponentDiscerner[] extensions = getDiscerners();
-		ArrayList<IProject> list = new ArrayList<IProject>();
-		for( int i = 0; i < extensions.length; i++ ) {
-			list.addAll(Arrays.asList(extensions[i].findParentProjects(child)));
-		}
-		return list.toArray(new IProject[list.size()]);
-	}
-	
-	public static IVirtualReference[] findPossibleManifestEntries(IProject parentProject, IProject childProject) {
-		IJavaComponentDiscerner[] extensions = getDiscerners();
-		ArrayList<IVirtualReference> list = new ArrayList<IVirtualReference>();
-		for( int i = 0; i < extensions.length; i++ ) {
-			list.addAll(Arrays.asList(extensions[i].findPossibleManifestEntries(parentProject, childProject)));
-		}
-		return list.toArray(new IVirtualReference[list.size()]);
-	}
-
-	public static IVirtualReference[] findPossibleManifestEntries(IProject parentProject, IProject childProject, IVirtualReference[] current) {
-		IJavaComponentDiscerner[] extensions = getDiscerners();
-		ArrayList<IVirtualReference> list = new ArrayList<IVirtualReference>();
-		for( int i = 0; i < extensions.length; i++ ) {
-			list.addAll(Arrays.asList(extensions[i].findPossibleManifestEntries(parentProject, childProject, current)));
-		}
-		return list.toArray(new IVirtualReference[list.size()]);
-	}
-
-	public static IVirtualReference[] findCurrentManifestEntries(IProject parentProject, IProject childProject) {
-		IJavaComponentDiscerner[] extensions = getDiscerners();
-		ArrayList<IVirtualReference> list = new ArrayList<IVirtualReference>();
-		for( int i = 0; i < extensions.length; i++ ) {
-			list.addAll(Arrays.asList(extensions[i].findCurrentManifestEntries(parentProject, childProject)));
-		}
-		return list.toArray(new IVirtualReference[list.size()]);
-	}
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/ManifestUtilities.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/ManifestUtilities.java
deleted file mode 100644
index 6c98551..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/ManifestUtilities.java
+++ /dev/null
@@ -1,437 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2010 IBM Corporation, Red Hat, 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.jst.common.internal.modulecore.util;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipException;
-import java.util.zip.ZipFile;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jem.util.emf.workbench.WorkbenchByteArrayOutputStream;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFile;
-
-import com.ibm.icu.util.StringTokenizer;
-
-public class ManifestUtilities {
-	public static final String MANIFEST_HEADER = "Manifest-Version: 1.0\r\nClass-Path: \r\n\r\n"; //$NON-NLS-1$
-	public static void createManifestFile(IFile file) throws CoreException, IOException {
-		try {
-			WorkbenchByteArrayOutputStream out = new WorkbenchByteArrayOutputStream(file);
-			out.write(MANIFEST_HEADER.getBytes());
-			out.close();
-		} catch (IOException ioe) {
-			throw ioe;
-		}
-	}
-	
-	public static String[] getTokens(String aString) {
-		return getTokens(aString, null);
-	}
-
-	public static String[] getTokens(String aString, String delimiter) {
-		StringTokenizer tok = (delimiter == null) ? new StringTokenizer(aString) : new StringTokenizer(aString, delimiter);
-		int size = tok.countTokens();
-		String[] tokens = new String[size];
-		for (int i = 0; i < size && tok.hasMoreTokens(); i++) {
-			tokens[i] = tok.nextToken();
-		}
-		return tokens;
-	}
-
-	/**
-	 * getValueIgnoreKeyCase method comment.
-	 */
-	public static java.lang.String getValueIgnoreKeyCase(java.lang.String key, java.util.jar.Attributes attr) {
-		Iterator keysAndValues = attr.entrySet().iterator();
-		while (keysAndValues.hasNext()) {
-			Map.Entry entry = (Map.Entry) keysAndValues.next();
-			String entryKey = entry.getKey().toString();
-			if (entryKey.equalsIgnoreCase(key))
-				return entry.getValue() == null ? null : entry.getValue().toString();
-		}
-		return null;
-	}
-
-	public static ArchiveManifest getManifest(IVirtualComponent component, IPath manifestPath) {
-		if( !component.isBinary() )
-			return getNonBinaryComponentManifest(component, manifestPath);
-		return getBinaryComponentManifest(component, manifestPath);
-	}
-	
-	public static ArchiveManifest getBinaryComponentManifest(IVirtualComponent component, IPath manifestPath) {
-		java.io.File file = (File)component.getAdapter(File.class);
-		if( file != null && file.exists()) {
-			ArchiveManifest manifest = readBinaryManifest(file, manifestPath);
-			return manifest;
-		}
-		return null;
-	}
-
-	public static ArchiveManifest getManifest(IFile f) {
-		File f2 = f.getLocation().toFile();
-		return getManifest(f2);
-	}
-	
-	public static ArchiveManifest getManifest(File f) {
-		if( f != null && f.exists()) {
-				InputStream in;
-				try {
-					in = new FileInputStream(f);
-					ArchiveManifest manifest = new ArchiveManifestImpl(in);
-					return manifest;
-				} catch (FileNotFoundException e) {
-				} catch (IOException e) {
-				}
-		}
-		return null;
-	}
-	
-	public static void writeManifest(IFile aFile, ArchiveManifest manifest) throws java.io.IOException {
-		OutputStream out = new WorkbenchByteArrayOutputStream(aFile);
-		manifest.writeSplittingClasspath(out);
-		out.close();
-	}
-
-	
-	public static ArchiveManifest getNonBinaryComponentManifest(IVirtualComponent component, IPath manifestPath) {
-		try {
-			if(!component.isBinary()){
-				IVirtualFile vManifest = component.getRootFolder().getFile(manifestPath);
-				if (vManifest.exists()) {
-					IFile manifestFile = vManifest.getUnderlyingFile();
-					InputStream in = null;
-					try {
-						in = manifestFile.getContents();
-						ArchiveManifest manifest = new ArchiveManifestImpl(in);
-						return manifest;
-					} finally {
-						if (in != null) {
-							in.close();
-							in = null;
-						}
-					}
-				}
-			} 
-		} catch( IOException ioe ) {
-		} catch(CoreException ce) {
-		}
-		return null;
-	}
-	
-	
-	public static String[] getManifestClasspath(IVirtualComponent component, IPath manifestPath)  {
-		ArchiveManifest mf = getManifest(component, manifestPath);
-		if( mf != null ) 
-			return mf.getClassPathTokenized();
-		return new String[]{};
-	}
-	
-	public static ArchiveManifest readBinaryManifest(File file, IPath manifestPath) {
-		ArchiveManifest manifest = null;
-		ZipFile zipFile = null;
-		if( file != null ) {
-			try {
-				zipFile = ManifestUtilities.newZipFile(file);
-				ZipEntry entry = zipFile.getEntry(manifestPath.toString());
-				if( entry != null ) {
-					InputStream entryStream = getInputstreamForZipEntry(zipFile, manifestPath.toString());
-					manifest = new ArchiveManifestImpl(entryStream);
-					zipFile.close();
-				}
-			} catch( IOException ioe) {
-				if( zipFile != null ) {
-					try {
-						zipFile.close();
-					} catch( IOException ioe2) {}
-				}
-			}
-		}
-		return manifest;
-	}
-	
-	public static InputStream getInputstreamForZipEntry(ZipFile zipFile, String uri) throws IOException {
-		try {
-			ZipEntry entry = zipFile.getEntry(uri);
-			if (entry == null) {
-				// this is a hack, but zip files are sensitive to the difference
-				// between '/' and '\\'
-				// so the hack is to try all combinations to see if any exist
-				char[] chars = uri.toCharArray();
-				int[] slashIndices = new int[chars.length];
-				int slashCount = 0;
-				for (int i = 0; i < uri.length(); i++) {
-					if (chars[i] == '/' || chars[i] == '\\') {
-						slashIndices[slashCount] = i;
-						slashCount++;
-					}
-				}
-				int slashPow = (int) Math.pow(2, slashCount);
-				boolean foundIt = false;
-				for (int i = 0; i < slashPow && !foundIt; i++) {
-					for (int j = 0; j < slashCount; j++) {
-						if ((i >> j & 1) == 1) {
-							chars[slashIndices[j]] = '/';
-						} else {
-							chars[slashIndices[j]] = '\\';
-						}
-					}
-					entry = zipFile.getEntry(new String(chars));
-					if (entry != null) {
-						foundIt = true;
-					}
-				}
-				if (entry == null) {
-					Exception del = new FileNotFoundException(uri);
-					throw new IOException(del.toString());
-				}
-			}
-			return new java.io.BufferedInputStream(zipFile.getInputStream(entry));
-		} catch (IllegalStateException zipClosed) {
-			throw new IOException(zipClosed.toString());
-		}
-	}
-	
-	public static String[] getNonBinaryComponentManifestClasspath(IVirtualComponent component, IPath manifestPath)
-			throws IOException, CoreException {
-		String[] manifestClasspath = null;
-		if(!component.isBinary()){
-			IVirtualFile vManifest = component.getRootFolder().getFile(manifestPath);
-			if (vManifest.exists()) {
-				IFile manifestFile = vManifest.getUnderlyingFile();
-				InputStream in = null;
-				try {
-					in = manifestFile.getContents();
-					ArchiveManifest manifest = new ArchiveManifestImpl(in);
-					manifestClasspath = manifest.getClassPathTokenized();
-				} finally {
-					if (in != null) {
-						in.close();
-						in = null;
-					}
-				}
-			}
-		} 
-		return manifestClasspath;
-	}
-
-	public static ZipFile newZipFile(String fileName)throws ZipException, IOException {
-		return ManifestUtilities.newZipFile(new File(fileName), ZipFile.OPEN_READ);
-	}
-	public static ZipFile newZipFile(File aFile)throws ZipException, IOException {
-		return ManifestUtilities.newZipFile(aFile, ZipFile.OPEN_READ);
-	}
-	
-	/**
-	 * Utility to create ZipFiles which avoid memory leaks 
-	 * because closing them fails to close open inputstreams.
-	 * There is a SUN bug open for this: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6735255 
-     * but it looks like the "fix" will be to change the Javadoc :-(   
-	 * @param aFile mode
-	 * @return
-	 * @throws ZipException
-	 * @throws IOException
-	 */
-	public static ZipFile newZipFile(File aFile, int mode) throws ZipException, IOException {
-		return new ZipFile(aFile, mode){
-			Collection <InputStream> openStreams = null;
-			
-			@Override
-			public InputStream getInputStream(ZipEntry entry) throws IOException {
-				InputStream in = super.getInputStream(entry);
-				if(in != null){
-					if(openStreams == null){
-						openStreams = new ArrayList<InputStream>();
-					}
-					openStreams.add(in);
-				}
-				return in;
-			}
-			
-			@Override
-			public void close() throws IOException {
-				closeOpenStreams();
-				super.close();
-			}
-
-			private void closeOpenStreams() {
-				if(openStreams != null){
-					for (Iterator iterator = openStreams.iterator(); iterator.hasNext();) {
-						InputStream in = (InputStream) iterator.next();
-						try {
-							in.close();
-						} catch (IOException e) {
-							org.eclipse.jem.util.logger.proxy.Logger.getLogger().logWarning(e);
-						}
-						iterator.remove();
-					}
-				}
-			}
-		};
-	}
-	
-	public static ArchiveManifest readManifest(IFile aFile) {
-		InputStream in = null;
-		try {
-			if (aFile == null || !aFile.exists())
-				return null;
-			in = aFile.getContents();
-			return new ArchiveManifestImpl(in);
-		} catch (Exception ex) {
-			// TODO J2EEPlugin.logError(ex);
-			return null;
-		} finally {
-			if (in != null) {
-				try {
-					in.close();
-				} catch (IOException weTried) {
-				}
-			}
-		}
-	}
-
-	private static ConcurrentHashMap<String, String> manifestClasspaths = new ConcurrentHashMap<String, String>();
-
-	/**
-	 * Generates new MANIFEST.MF with a dynamically updated classpath that is written to the specified
-	 * output stream.
-	 * @param manifestFile The current MANIFEST.MF file.
-	 * @param dynamicURIs Is List of URIs to dynamically add to the manifest classpath.
-	 * @param outputStream Stream to which the modified entry should be written.
-	 * @throws IOException
-	 * @throws FileNotFoundException
-	 */
-	public static void updateManifestClasspath(final IFile manifestFile, final List dynamicURIs, final OutputStream outputStream) throws IOException, FileNotFoundException {
-		updateManifestClasspathImpl(manifestFile, dynamicURIs, null, outputStream);
-    }
-	
-	/**
-	 * Generates new MANIFEST.MF with a dynamically updated classpath that is written to the specified
-	 * output stream.
-	 * @param manifestFile The current MANIFEST.MF file.
-	 * @param dynamicURIs Is List of URIs to dynamically add to the manifest classpath.
-	 * @param outputFile File to which the modified entry should be written.
-	 * @throws IOException
-	 * @throws FileNotFoundException
-	 */
-	public static void updateManifestClasspath(final IFile manifestFile, final List dynamicURIs, final File outputFile) throws IOException, FileNotFoundException {
-		updateManifestClasspathImpl(manifestFile, dynamicURIs, outputFile, null);
-    }
-
-	/**
-	 * Generates new MANIFEST.MF with a dynamically updated classpath that is written to the specified
-	 * file or output stream, with the stream taking precedence.
-	 * @param manifestFile The current MANIFEST.MF file.
-	 * @param dynamicURIs Is List of URIs to dynamically add to the manifest classpath.
-	 * @param outputFile File to which the modified entry should be written.
-	 * @param OutputStream stream Stream to which the modified entry should be written. If not null,
-	 * the stream will be written and the outputFile ignored.
-	 * @throws IOException
-	 * @throws FileNotFoundException
-	 */
-	private static void updateManifestClasspathImpl(final IFile manifestFile, final List dynamicURIs, final File outputFile, final OutputStream stream) throws IOException, FileNotFoundException {
-		
-		OutputStream outputStream = stream; 
-        try {
-        	InputStream in = null;
-        	ArchiveManifest manifest = null;
-        	try {
-        		in = manifestFile.getContents();
-        		manifest = new ArchiveManifestImpl(in);
-        	} catch (CoreException ce) {
-        		throw new IOException(ce.getLocalizedMessage());
-        	} finally {
-        		if (in != null) {
-        			try {
-        				in.close();
-        				in = null;
-        			} catch (IOException e) {
-						org.eclipse.jem.util.logger.proxy.Logger.getLogger().logWarning(e);
-        			}
-        		}
-        	}
-        	final String[] manifestClasspath = manifest.getClassPathTokenized();
-        	final List updatedCP = new ArrayList();
-        	for (int i = 0; i < manifestClasspath.length; i++) {
-        		updatedCP.add(manifestClasspath[i]);
-        	}
-        	// update manifest classpath to include dynamic entries
-        	for (int j = 0; j < dynamicURIs.size(); j++) {
-        		final String containerURI = (String) dynamicURIs.get(j);
-        		// need to check existing entries to ensure it doesn't are exist on the classpath
-        		boolean exists = false;
-        		for (int i = 0; i < manifestClasspath.length; i++) {
-        			if (manifestClasspath[i].equals(containerURI)) {
-        				exists = true;
-        				break;
-        			}
-        		}
-        		if (!exists) {
-        			updatedCP.add(containerURI);
-        		}
-        	}
-        	final StringBuffer cpBuffer = new StringBuffer();
-        	boolean first = true;
-        	for (int j = 0; j < updatedCP.size(); j++) {
-        		if (!first) {
-        			cpBuffer.append(" "); //$NON-NLS-1$
-        		} else {
-        			first = false;
-        		}
-        		cpBuffer.append((String) updatedCP.get(j));
-        	}
-        	String cp = cpBuffer.toString();
-        	// If we have an output stream, always write to the stream 
-        	if (outputStream != null) {
-            	manifest.setClassPath(cp);
-            	manifest.write(outputStream);
-            	outputStream.flush();
-        	}
-        	// Else, without an output stream, conditionally update the specified file
-        	else {
-        		// To avoid making the internally generated manifest file appear to projects
-        		// as a perpetually modified resource, check if the file needs to change.
-        		// This checking helps with the usefulness of "delta" deployment with
-        		// utility projects.
-            	String manifestPath = manifestFile.getFullPath().toString();
-            	String priorClasspath = manifestClasspaths.get(manifestPath);
-            	if (priorClasspath == null || !priorClasspath.equals(cp) || !outputFile.exists()) {
-                	manifestClasspaths.put(manifestPath, cp);
-                	manifest.setClassPath(cp);
-                	outputStream = new FileOutputStream(outputFile);
-                	manifest.write(outputStream);
-                	outputStream.flush();
-            	}
-        	}
-        } finally {
-        	if (outputStream != null) {
-        		outputStream.close();
-        	}
-        }
-    }
-
-	
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/UpdateManifestDataModelProperties.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/UpdateManifestDataModelProperties.java
deleted file mode 100644
index a62e843..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/UpdateManifestDataModelProperties.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 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.jst.common.internal.modulecore.util;
-
-public interface UpdateManifestDataModelProperties {
-	/**
-	 * Project name with manifest to update, type String required.
-	 */
-	public static final String PROJECT_NAME = "UpdateManifestDataModel.PROJECT_NAME"; //$NON-NLS-1$
-
-	/**
-	 * java.util.List of Strings
-	 */
-	public static final String JAR_LIST = "UpdateManifestDataModel.CLASSPATH_LIST"; //$NON-NLS-1$
-
-	/**
-	 * String. This is build from the JAR_LIST property. Never set this property.
-	 */
-	public static final String JAR_LIST_TEXT_UI = "UpdateManifestDataModel.CLASSPATH_LIST_TEXT_UI"; //$NON-NLS-1$
-
-	/**
-	 * Boolean, true merges, false replaces, default is true
-	 */
-	public static final String MERGE = "UpdateManifestDataModel.MERGE"; //$NON-NLS-1$
-
-	/**
-	 * String, no default.
-	 */
-	public static final String MAIN_CLASS = "UpdateManifestDataModel.MAIN_CLASS"; //$NON-NLS-1$
-	
-		
-	/**
-	 * String, no default.
-	 */
-	public static final String MANIFEST_FILE = "UpdateManifestDataModel.MANIFEST_FILE"; //$NON-NLS-1$	
-	
-
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/UpdateManifestDataModelProvider.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/UpdateManifestDataModelProvider.java
deleted file mode 100644
index 7ac8714..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/UpdateManifestDataModelProvider.java
+++ /dev/null
@@ -1,100 +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
- *******************************************************************************/
-/*
- * Created on Nov 13, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.jst.common.internal.modulecore.util;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-import com.ibm.icu.util.StringTokenizer;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelProvider;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModelOperation;
-
-/**
- * @author jsholl
- * 
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class UpdateManifestDataModelProvider extends AbstractDataModelProvider implements UpdateManifestDataModelProperties {
-
-	@Override
-	public Set getPropertyNames() {
-		Set propertyNames = super.getPropertyNames();
-		propertyNames.add(PROJECT_NAME);
-		propertyNames.add(JAR_LIST);
-		propertyNames.add(JAR_LIST_TEXT_UI);
-		propertyNames.add(MERGE);
-		propertyNames.add(MAIN_CLASS);
-		propertyNames.add(MANIFEST_FILE);
-		return propertyNames;
-	}
-
-	@Override
-	public Object getDefaultProperty(String propertyName) {
-		if (propertyName.equals(MERGE)) {
-			return Boolean.TRUE;
-		} else if (propertyName.equals(JAR_LIST)) {
-			return new ArrayList();
-		} else if (propertyName.equals(JAR_LIST_TEXT_UI)) {
-			return getClasspathAsString();
-		}
-		return super.getDefaultProperty(propertyName);
-	}
-
-	@Override
-	public boolean propertySet(String propertyName, Object propertyValue) {
-		boolean set = super.propertySet(propertyName, propertyValue);
-		if (propertyName.equals(JAR_LIST) && isPropertySet(JAR_LIST_TEXT_UI))
-			setProperty(JAR_LIST_TEXT_UI, getClasspathAsString());
-		return set;
-	}
-
-	public IProject getProject() {
-		String projectName = (String) getProperty(PROJECT_NAME);
-		return ResourcesPlugin.getWorkspace().getRoot().getProject(projectName);
-	}
-
-	public String getClasspathAsString() {
-		List classpathList = (List) getProperty(JAR_LIST);
-		return convertClasspathListToString(classpathList);
-	}
-
-	public static String convertClasspathListToString(List list) {
-		String classpathString = ""; //$NON-NLS-1$
-		for (int i = 0; i < list.size(); i++) {
-			classpathString += ((String) list.get(i)) + " "; //$NON-NLS-1$
-		}
-		return classpathString.trim();
-	}
-
-	public static List convertClasspathStringToList(String string) {
-		List list = new ArrayList();
-		StringTokenizer tokenizer = new StringTokenizer(string, " "); //$NON-NLS-1$
-		while (tokenizer.hasMoreTokens()) {
-			list.add(tokenizer.nextToken());
-		}
-		return list;
-	}
-	
-	@Override
-	public IDataModelOperation getDefaultOperation() {
-		return new UpdateManifestOperation(model);
-	}
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/UpdateManifestOperation.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/UpdateManifestOperation.java
deleted file mode 100644
index ad255e4..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/internal/modulecore/util/UpdateManifestOperation.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 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
- *******************************************************************************/
-/*
- * Created on Nov 13, 2003
- *
- * To change the template for this generated file go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-package org.eclipse.jst.common.internal.modulecore.util;
-
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-
-
-/**
- * @author jsholl
- * 
- * To change the template for this generated type comment go to
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
- */
-public class UpdateManifestOperation extends AbstractDataModelOperation {
-
-	public UpdateManifestOperation(IDataModel dataModel) {
-		super(dataModel);
-	}
-
-	@Override
-	public IStatus execute(IProgressMonitor monitor, IAdaptable adaptable) throws ExecutionException {
-		IFile file = (IFile)model.getProperty(UpdateManifestDataModelProperties.MANIFEST_FILE);
-		
-		String classPathValue = model.getStringProperty(UpdateManifestDataModelProperties.JAR_LIST_TEXT_UI);
-		try {
-			if(file != null && file.exists()) {
-				ArchiveManifest mf = ManifestUtilities.readManifest(file);
-				
-				if (mf == null)
-					mf = new ArchiveManifestImpl();
-				mf.addVersionIfNecessary();
-				if (model.getBooleanProperty(UpdateManifestDataModelProperties.MERGE)) {
-					mf.mergeClassPath(ManifestUtilities.getTokens(classPathValue));
-				} else {
-					mf.setClassPath(classPathValue);
-				}
-				if (model.isPropertySet(UpdateManifestDataModelProperties.MAIN_CLASS)) {
-					mf.setMainClass(model.getStringProperty(UpdateManifestDataModelProperties.MAIN_CLASS));
-				}
-	
-				ManifestUtilities.writeManifest(file, mf);
-			}
-		} catch (java.io.IOException ex) {
-			throw new ExecutionException(ex.getMessage(),ex);
-		}
-		return OK_STATUS;
-	}
-
-	@Override
-	public IStatus redo(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		return null;
-	}
-	
-	@Override
-	public IStatus undo(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		return null;
-	}
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/classpath/ClasspathDecorations.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/classpath/ClasspathDecorations.java
deleted file mode 100644
index 4e4cb5f..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/classpath/ClasspathDecorations.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    Konstantin Komissarchik - initial API and implementation
- ******************************************************************************/
-
-package org.eclipse.jst.common.jdt.internal.classpath;
-
-import java.util.ArrayList;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.IClasspathAttribute;
-import org.eclipse.jdt.core.JavaCore;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class ClasspathDecorations
-{
-    private IPath sourceAttachmentPath;
-    private IPath sourceAttachmentRootPath;
-    private ArrayList extraAttributes = new ArrayList();
-    
-    public IPath getSourceAttachmentPath()
-    {
-        return this.sourceAttachmentPath;
-    }
-    
-    public void setSourceAttachmentPath( final IPath sourceAttachmentPath )
-    {
-        this.sourceAttachmentPath = sourceAttachmentPath;
-    }
-    
-    public IPath getSourceAttachmentRootPath()
-    {
-        return this.sourceAttachmentRootPath;
-    }
-    
-    public void setSourceAttachmentRootPath( final IPath sourceAttachmentRootPath )
-    {
-        this.sourceAttachmentRootPath = sourceAttachmentRootPath;
-    }
-    
-    public IClasspathAttribute[] getExtraAttributes()
-    {
-        final IClasspathAttribute[] array 
-            = new IClasspathAttribute[ this.extraAttributes.size() ];
-        
-        return (IClasspathAttribute[]) this.extraAttributes.toArray( array );
-    }
-    
-    public void setExtraAttributes( final IClasspathAttribute[] attrs )
-    {
-        for( int i = 0; i < attrs.length; i++ )
-        {
-            this.extraAttributes.add( attrs[ i ] );
-        }
-    }
-
-    public void addExtraAttribute( final String name,
-                            final String value )
-    {
-        final IClasspathAttribute attr
-            = JavaCore.newClasspathAttribute( name, value );
-        
-        this.extraAttributes.add( attr );
-    }
-    
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/classpath/ClasspathDecorationsManager.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/classpath/ClasspathDecorationsManager.java
deleted file mode 100644
index ece1d18..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/classpath/ClasspathDecorationsManager.java
+++ /dev/null
@@ -1,375 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    Konstantin Komissarchik - initial API and implementation
- ******************************************************************************/
-
-package org.eclipse.jst.common.jdt.internal.classpath;
-
-import java.io.BufferedReader;
-import java.io.BufferedWriter;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.OutputStreamWriter;
-import java.io.PrintWriter;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.NoSuchElementException;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.IClasspathAttribute;
-import org.eclipse.jst.common.frameworks.CommonFrameworksPlugin;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.InputSource;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class ClasspathDecorationsManager
-{
-	private final File f;
-    private final HashMap decorations;
-    
-    public ClasspathDecorationsManager( final String plugin )
-    {
-        final IWorkspace ws = ResourcesPlugin.getWorkspace();
-        final File wsdir = ws.getRoot().getLocation().toFile();
-        final File wsmdroot = new File( wsdir, ".metadata/.plugins" ); //$NON-NLS-1$
-        final File pmdroot = new File( wsmdroot, plugin );
-    
-        this.f = new File( pmdroot, "classpath.decorations.xml" ); //$NON-NLS-1$
-        this.decorations = read();
-    }
-    
-    public ClasspathDecorations getDecorations( final String key,
-                                                final String entry )
-    {
-        final HashMap submap = (HashMap) this.decorations.get( key );
-        
-        if( submap == null )
-        {
-            return null;
-        }
-        
-        return (ClasspathDecorations) submap.get( entry );
-    }
-
-    public void setDecorations( final String key,
-                                final String entry,
-                                final ClasspathDecorations dec )
-    {
-    	HashMap submap = (HashMap) this.decorations.get( key );
-        
-        if( submap == null )
-        {
-            submap = new HashMap();
-            this.decorations.put( key, submap );
-        }
-        
-        submap.put( entry, dec );
-    }
-    
-    public void clearAllDecorations( final String key )
-    {
-    	this.decorations.remove( key );
-    }
-
-    public void save()
-    {
-        final File folder = this.f.getParentFile();
-        
-        if( ! folder.exists() && ! folder.mkdirs() )
-        {
-            return;
-        }
-        
-        PrintWriter w = null;
-        
-        try
-        {
-            w = new PrintWriter( new BufferedWriter( new OutputStreamWriter( new FileOutputStream( this.f ), "UTF-8" ) ) ); //$NON-NLS-1$
-           
-            w.println( "<classpath>" ); //$NON-NLS-1$
-            
-            for( Iterator itr1 = decorations.entrySet().iterator(); 
-                 itr1.hasNext(); )
-            {
-                final Map.Entry entry1 = (Map.Entry) itr1.next();
-                final Map submap = (Map) entry1.getValue();
-                
-                w.print( "  <container id=\"" ); //$NON-NLS-1$
-                w.print( (String) entry1.getKey() );
-                w.println( "\">" ); //$NON-NLS-1$
-                
-                for( Iterator itr2 = submap.entrySet().iterator(); 
-                     itr2.hasNext(); )
-                {
-                    final Map.Entry entry2 = (Map.Entry) itr2.next();
-                    
-                    final ClasspathDecorations dec 
-                        = (ClasspathDecorations) entry2.getValue();
-                    
-                    w.print( "    <entry id=\"" ); //$NON-NLS-1$
-                    w.print( (String) entry2.getKey() );
-                    w.println( "\">" ); //$NON-NLS-1$
-                    
-                    if( dec.getSourceAttachmentPath() != null )
-                    {
-                        w.print( "      <source-attachment-path>" ); //$NON-NLS-1$
-                        w.print( dec.getSourceAttachmentPath().toString() );
-                        w.println( "</source-attachment-path>" ); //$NON-NLS-1$
-                    }
-
-                    if( dec.getSourceAttachmentRootPath() != null )
-                    {
-                        w.print( "      <source-attachment-root-path>" ); //$NON-NLS-1$
-                        w.print( dec.getSourceAttachmentRootPath().toString() );
-                        w.println( "</source-attachment-root-path>" ); //$NON-NLS-1$
-                    }
-                    
-                    final IClasspathAttribute[] attrs 
-                        = dec.getExtraAttributes();
-                    
-                    for( int i = 0; i < attrs.length; i++ )
-                    {
-                        final IClasspathAttribute attr = attrs[ i ];
-                        
-                        w.print( "      <attribute name=\"" ); //$NON-NLS-1$
-                        w.print( attr.getName() );
-                        w.print( "\">" ); //$NON-NLS-1$
-                        w.print( attr.getValue() );
-                        w.println( "</attribute>" ); //$NON-NLS-1$
-                    }
-                    
-                    w.println( "    </entry>" ); //$NON-NLS-1$
-                }
-                
-                w.println( "  </container>" ); //$NON-NLS-1$
-            }
-            
-            w.println( "</classpath>" ); //$NON-NLS-1$
-        }
-        catch( IOException e )
-        {
-            CommonFrameworksPlugin.log( e );
-        }
-        finally
-        {
-        	if(null != w){
-        		w.close();
-        	}
-        }
-    }
-    
-    private HashMap read()
-    {
-        final HashMap map = new HashMap();
-        if( ! this.f.exists() ) return map;
-
-        BufferedReader in = null;
-        Element root = null;
-
-        try
-        {
-            final DocumentBuilderFactory factory 
-                = DocumentBuilderFactory.newInstance();
-            
-            final DocumentBuilder docbuilder = factory.newDocumentBuilder();
-            
-            in = new BufferedReader(new InputStreamReader( new FileInputStream( f.getPath()),"UTF-8")); //$NON-NLS-1$
-            root = docbuilder.parse( new InputSource(in)).getDocumentElement();
-        }
-        catch( Exception e )
-        {
-            CommonFrameworksPlugin.log( e );
-            return map;
-        }
-        finally
-        {
-            if( in != null )
-            {
-                try
-                {
-                    in.close();
-                }
-                catch( IOException e ) {}
-            }
-        }
-        
-        for( Iterator itr1 = elements( root, "container" ); itr1.hasNext(); ) //$NON-NLS-1$
-        {
-            final Element e1 = (Element) itr1.next();
-            final String cid = e1.getAttribute( "id" ); //$NON-NLS-1$
-            
-            final HashMap submap = new HashMap();
-            map.put( cid, submap );
-            
-            for( Iterator itr2 = elements( e1, "entry" ); itr2.hasNext(); ) //$NON-NLS-1$
-            {
-                final Element e2 = (Element) itr2.next();
-                final String eid = e2.getAttribute( "id" ); //$NON-NLS-1$
-                final ClasspathDecorations dec = new ClasspathDecorations();
-                
-                submap.put( eid, dec );
-                
-                for( Iterator itr3 = elements( e2 ); itr3.hasNext(); )
-                {
-                    final Element e3 = (Element) itr3.next();
-                    final String n = e3.getNodeName();
-                    
-                    if( n.equals( "source-attachment-path" ) ) //$NON-NLS-1$
-                    {
-                        dec.setSourceAttachmentPath( new Path( text( e3 ) ) );
-                    }
-                    else if( n.equals( "source-attachment-root-path" ) ) //$NON-NLS-1$
-                    {
-                        dec.setSourceAttachmentRootPath( new Path( text( e3 ) ) );
-                    }
-                    else if( n.equals( "attribute" ) ) //$NON-NLS-1$
-                    {
-                        final String name = e3.getAttribute( "name" ); //$NON-NLS-1$
-                        dec.addExtraAttribute( name, text( e3 ) );
-                    }
-                }
-            }
-        }
-        
-        return map;
-    }
-    
-    private static String text( final Element el )
-    {
-        final NodeList nodes = el.getChildNodes();
-
-        String str = null;
-        StringBuffer buf = null;
-        
-        for( int i = 0, n = nodes.getLength(); i < n; i++ )
-        {
-            final Node node = nodes.item( i );
-            
-            if( node.getNodeType() == Node.TEXT_NODE )
-            {
-                final String val = node.getNodeValue();
-                
-                if( buf != null )
-                {
-                    buf.append( val );
-                }
-                else if( str != null )
-                {
-                    buf = new StringBuffer();
-                    buf.append( str );
-                    buf.append( val );
-                    
-                    str = null;
-                }
-                else
-                {
-                    str = val;
-                }
-            }
-        }
-        
-        if( buf != null )
-        {
-            return buf.toString();
-        }
-        return str;
-    }
-    
-    private static Iterator elements( final Element el,
-                                     final String name )
-    {
-        return new ElementsIterator( el, name );
-    }
-    
-    private static Iterator elements( final Element el )
-    {
-        return new ElementsIterator( el, null );
-    }
-
-    private static final class ElementsIterator
-    
-        implements Iterator
-        
-    {
-        private final NodeList nodes;
-        private final int length;
-        private final String name;
-        private int position;
-        private Element element;
-
-        public ElementsIterator( final Element parent, 
-                                 final String name )
-        {
-            this.nodes = parent.getChildNodes();
-            this.length = nodes.getLength();
-            this.position = -1;
-            this.name = name;
-
-            advance();
-        }
-
-        private void advance()
-        {
-            this.element = null;
-            this.position++;
-
-            for( ; this.position < this.length && this.element == null; 
-                 this.position++ )
-            {
-                final Node node = this.nodes.item( this.position );
-
-                if( node.getNodeType() == Node.ELEMENT_NODE &&
-                    ( this.name == null || 
-                      node.getNodeName().equals( this.name ) ) ) 
-                {
-                    this.element = (Element) node;
-                }
-            }
-        }
-
-        public boolean hasNext() 
-        {
-            return ( this.element != null );
-        }
-
-        public Object next() 
-        {
-            final Element el = this.element;
-
-            if( el == null ) 
-            {
-                throw new NoSuchElementException();
-            }
-
-            advance();
-
-            return el;
-        }
-
-        public void remove() 
-        {
-            throw new UnsupportedOperationException();
-        }
-    }
-    
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/classpath/ClasspathUtil.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/classpath/ClasspathUtil.java
deleted file mode 100644
index c4161f4..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/classpath/ClasspathUtil.java
+++ /dev/null
@@ -1,113 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2006 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    Konstantin Komissarchik - initial API and implementation
- ******************************************************************************/
-
-package org.eclipse.jst.common.jdt.internal.classpath;
-
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.IClasspathContainer;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jem.util.logger.proxy.Logger;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class ClasspathUtil
-{
-    private ClasspathUtil() {}
-    
-    public static Set getResolvedClasspath( final IJavaProject jproj,
-                                            final IPath entryToIgnore )
-    {
-        return getResolvedClasspath( jproj, Collections.singleton( entryToIgnore ) );
-    }
-    
-    public static Set getResolvedClasspath( final IJavaProject jproj,
-                                            final Set entriesToIgnore )
-    {
-        final Set resolved = new HashSet();
-        
-        try 
-        {
-            final IClasspathEntry[] entries = jproj.getRawClasspath();
-            
-            for( int i = 0; i < entries.length; i++ )
-            {
-                IClasspathEntry entry = entries[ i ];
-                
-                if( entriesToIgnore.contains( entry.getPath() ) )
-                {
-                    continue;
-                }
-                
-                switch( entry.getEntryKind() )
-                {
-                    case IClasspathEntry.CPE_LIBRARY:
-                    case IClasspathEntry.CPE_PROJECT:
-                    {
-                        resolved.add( entry.getPath() );
-                        break;
-                    }
-                    case IClasspathEntry.CPE_VARIABLE:
-                    {
-                        entry = JavaCore.getResolvedClasspathEntry( entry );
-                        
-                        if( entry != null )
-                        {
-                            resolved.add( entry.getPath() );
-                        }
-                        
-                        break;
-                    }
-                    case IClasspathEntry.CPE_CONTAINER:
-                    {
-                        final IClasspathContainer container;
-                        
-                        try
-                        {
-                            container = JavaCore.getClasspathContainer( entry.getPath(), jproj );
-                        }
-                        catch( JavaModelException e )
-                        {
-                            Logger.getLogger().logError( e );
-                            continue;
-                        }
-                        
-                        if( container != null ) 
-                        {
-	                        final IClasspathEntry[] containerEntries
-	                            = container.getClasspathEntries();
-	
-	                        for( int j = 0; j < containerEntries.length; j++ )
-	                        {
-	                            resolved.add( containerEntries[ j ].getPath() );
-	                        }
-                        }
-                    }
-                }
-            }
-        } 
-        catch( JavaModelException e ) 
-        {
-            Logger.getLogger().logError( e );
-        }
-        
-        return resolved;
-    }
-
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/classpath/FlexibleProjectContainer.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/classpath/FlexibleProjectContainer.java
deleted file mode 100644
index fadb620..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/classpath/FlexibleProjectContainer.java
+++ /dev/null
@@ -1,562 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005, 2006 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    Konstantin Komissarchik - initial API and implementation
- ******************************************************************************/
-
-package org.eclipse.jst.common.jdt.internal.classpath;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.resources.IContainer;
-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.IWorkspace;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.IAccessRule;
-import org.eclipse.jdt.core.IClasspathAttribute;
-import org.eclipse.jdt.core.IClasspathContainer;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jst.common.frameworks.CommonFrameworksPlugin;
-import org.eclipse.jst.common.internal.modulecore.IClasspathDependencyComponent;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.ModuleCoreNature;
-import org.eclipse.wst.common.componentcore.internal.util.IModuleConstants;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
-import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
-import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public abstract class FlexibleProjectContainer
-
-    implements IClasspathContainer
-
-{
-    protected static final class PathType
-    {
-        public static final PathType 
-            LIB_DIRECTORY = new PathType(),
-            CLASSES_DIRECTORY = new PathType();
-    }
-    
-    private static ClasspathDecorationsManager decorations; 
-
-    static
-    {
-        // Register the resource listener that will listen for changes to
-        // resources relevant to flexible project containers across the
-        // workspace and refresh them as necessary.
-        
-        Listener.register();
-        
-        // Read the decorations from the workspace metadata.
-        
-        final String plugin = CommonFrameworksPlugin.PLUGIN_ID;
-        decorations = new ClasspathDecorationsManager( plugin );
-    }
-
-    private static final String SEPARATOR = "!"; //$NON-NLS-1$
-    
-    public static String getDecorationManagerKey(IProject project, String container){
-    	return project.getName() + SEPARATOR + container;
-    }
-    
-    protected final IPath path;
-    protected final IJavaProject owner;
-    protected final IProject project;
-    private final IPath[] paths;
-    private final PathType[] pathTypes;
-    protected final List entries;
-    private final IClasspathEntry[] cpentries;
-    private static final Set containerTypes = new HashSet();
-    
-    public FlexibleProjectContainer( final IPath path,
-                                     final IJavaProject owner,
-                                     final IProject project,
-                                     final IPath[] paths,
-                                     final PathType[] types )
-    {
-        this.path = path;
-        this.owner = owner;
-        this.project = project;
-        this.paths = paths;
-        this.pathTypes = types;
-        
-        if( ! isFlexibleProject( this.project ) )
-        {
-            // Silently noop if the referenced project is not a flexible
-            // project. Should I be doing something else here?
-            
-            this.entries = Collections.EMPTY_LIST;
-            this.cpentries = new IClasspathEntry[ 0 ];
-            
-            return;
-        }
-        
-        addFlexibleProjectContainerType( path.segment( 0 ) );
-        
-        this.entries = computeClasspathEntries();
-        this.cpentries = new IClasspathEntry[ this.entries.size() ];
-        
-        for( int i = 0, n = this.entries.size(); i < n; i++ )
-        {
-            IPath entryPath = (IPath) this.entries.get( i );
-            IResource resource =ResourcesPlugin.getWorkspace().getRoot().findMember(entryPath); 
-            if(null != resource && resource.getType() == IResource.PROJECT)
-                this.cpentries[ i ] = JavaCore.newProjectEntry(entryPath, false);
-            else
-                this.cpentries[ i ] = newLibraryEntry( entryPath );
-        }
-    }
-    
-    public int getKind()
-    {
-        return K_APPLICATION;
-    }
-
-    public IPath getPath()
-    {
-        return this.path;
-    }
-    
-    public IClasspathEntry[] getClasspathEntries()
-    {
-        return this.cpentries;
-    }
-    
-    public boolean isOutOfDate( final IResourceDelta delta )
-    {
-        if( delta == null )
-        {
-            return false;
-        }
-        return isOutOfDate();
-    }
-
-	public boolean isOutOfDate() {
-		final List currentEntries = computeClasspathEntries();
-        return ! this.entries.equals( currentEntries );
-	}
-    
-    public abstract void refresh();
-    
-	/**
-	 * If forceUpdate is <code>false</code> then a refresh is made only if
-	 * {@link #isOutOfDate()} returns <code>true</code>. If forceUpdate is
-	 * <code>true</code> then a refresh is immediately made without checking
-	 * {@link #isOutOfDate()}.
-	 * 
-	 * @param forceUpdate
-	 */
-    public void refresh(boolean forceUpdate){
-    	if(forceUpdate || isOutOfDate()){
-    		refresh();
-    	}
-    }
-    
-    static ClasspathDecorationsManager getDecorationsManager()
-    {
-        return decorations;
-    }
-    
-    protected IVirtualReference [] computeReferences(IVirtualComponent vc){
-    	return vc.getReferences();
-    }
-    
-    protected List computeClasspathEntries()
-    {
-        final List entries = new ArrayList();
-        
-        final IVirtualComponent vc 
-            = ComponentCore.createComponent( this.project );
-        
-        if( vc == null )
-        {
-            return entries;
-        }
-        
-        IVirtualReference[] refs = computeReferences(vc);
-        IVirtualComponent comp = null;
-        Set jarsHandled = new HashSet();
-        String jarName = null;
-        for (int i = 0; i < refs.length; i++) {
-            comp = refs[i].getReferencedComponent();
-            if (!refs[i].getRuntimePath().equals(paths[0].makeAbsolute()))
-                continue;
-            jarName = refs[i].getArchiveName();
-            if(null != jarName){
-                jarsHandled.add(jarName);
-            }
-            IPath newPath = null;
-            if (comp.isBinary()) {
-            	if( comp instanceof IClasspathDependencyComponent )
-            		continue;
-            	newPath = (IPath)comp.getAdapter(IPath.class);
-            } else
-                newPath = comp.getProject().getFullPath();    
-            
-        	if( newPath != null && !entries.contains(newPath))
-                entries.add( newPath );
-        }
-        
-        for( int i = 0; i < this.paths.length; i++ )
-        {
-            final IVirtualFolder rootFolder = vc.getRootFolder();
-            final IVirtualFolder vf = rootFolder.getFolder( paths[ i ] );
-            
-            if( this.pathTypes[ i ] == PathType.LIB_DIRECTORY )
-            {
-                final IVirtualResource[] contents;
-                
-                try
-                {
-                    contents = members( vf );
-                }
-                catch( CoreException e )
-                {
-                    CommonFrameworksPlugin.log( e );
-                    continue;
-                }
-
-                for( int j = 0; j < contents.length; j++ )
-                {
-                    final IResource r = contents[ j ].getUnderlyingResource();
-                    final IPath p = r.getLocation();
-                    
-                    if(!jarsHandled.contains(p.lastSegment()) &&  isJarFile( r ) )
-                    {
-                        jarsHandled.add(p.lastSegment());                  
-                       	entries.add( p );
-                    }
-                }
-            }
-            else
-            {
-                final IContainer[] uf = vf.getUnderlyingFolders();
-                
-                for( int j = 0; j < uf.length; j++ )
-                {
-                    final IPath p = uf[ j ].getFullPath();
-                    
-                    if( ! jarsHandled.contains( p.lastSegment() ) && 
-                        ! isSourceOrOutputDirectory( p ) )
-                    {
-                        jarsHandled.add(p.lastSegment());
-                       	entries.add( p );
-                    }
-                }
-            }
-        }
-
-        return entries;
-    }
-
-    // TODO: This method was created to provide a safe last-minute workaround
-    // for the issue described in https://bugs.eclipse.org/bugs/show_bug.cgi?id=162974.
-    // This code needs to be revisited in a future release to find a more
-    // permanent solution.
-
-    protected IVirtualResource[] members( final IVirtualFolder vf ) 
-    
-        throws CoreException 
-        
-    {
-        return vf.members();
-    }
-    
-    private IClasspathEntry newLibraryEntry( final IPath p )
-    {
-        IPath srcpath = null;
-        IPath srcrootpath = null;
-        IClasspathAttribute[] attrs = {};
-        IAccessRule[] access = {};
-        
-        final ClasspathDecorations dec 
-            = decorations.getDecorations( getDecorationManagerKey(project, getPath().toString()), p.toString() );
-        
-        if( dec != null )
-        {
-            srcpath = dec.getSourceAttachmentPath();
-            srcrootpath = dec.getSourceAttachmentRootPath();
-            attrs = dec.getExtraAttributes();
-        }
-        
-        return JavaCore.newLibraryEntry( p, srcpath, srcrootpath, access, attrs,
-                                         false );
-        
-    }
-    
-    private boolean isSourceOrOutputDirectory( final IPath aPath )
-    {
-        if( isJavaProject( this.project ) )
-        {
-            try
-            {
-                final IJavaProject jproject = JavaCore.create( this.project );
-                final IClasspathEntry[] cp = jproject.getRawClasspath();
-                
-                for( int i = 0; i < cp.length; i++ )
-                {
-                    final IClasspathEntry cpe = cp[ i ];
-                    
-                    if( cpe.getEntryKind() == IClasspathEntry.CPE_SOURCE )
-                    {
-                        final IPath src = cpe.getPath();
-                        final IPath output = cpe.getOutputLocation();
-                        
-                        if( src.equals( aPath ) ||
-                            output != null && output.equals( aPath ) )
-                        {
-                            return true;
-                        }
-                    }
-                }
-                
-                if( jproject.getOutputLocation().equals( aPath ) )
-                {
-                    return true;
-                }
-            }
-            catch( JavaModelException e )
-            {
-                CommonFrameworksPlugin.log( e );
-            }
-        }
-    
-        return false;    
-    }
-    
-    private static boolean isJavaProject( final IProject pj )
-    {
-        try
-        {
-            return pj.getNature( JavaCore.NATURE_ID ) != null;
-        }
-        catch( CoreException e )
-        {
-            return false;
-        }
-    }
-
-    private static boolean isFlexibleProject( final IProject pj )
-    {
-        try
-        {
-            return pj.getNature( IModuleConstants.MODULE_NATURE_ID ) != null;
-        }
-        catch( CoreException e )
-        {
-            return false;
-        }
-    }
-    
-    private static boolean isJarFile( final IResource f )
-    {
-        if( f.getType() == IResource.FILE )
-        {
-            final String fname = f.getName();
-            
-            if( fname.endsWith( ".jar" ) || fname.endsWith( ".zip" ) ) //$NON-NLS-1$ //$NON-NLS-2$
-            {
-                return true;
-            }
-        }
-        
-        return false;
-    }
-    
-    private static boolean isMetadataFile( final IResource f )
-    {
-        if( f.getType() == IResource.FILE )
-        {
-            final String fname = f.getName();
-
-            if( fname.equals( ".component" ) || //$NON-NLS-1$
-                fname.equals( "org.eclipse.wst.common.component" ) || //$NON-NLS-1$
-                fname.equals( ".classpath")) //$NON-NLS-1$
-            {
-                return true;
-            }
-        }
-        
-        return false;
-    }
-    
-    private static boolean isFlexibleProjectContainer( final IPath path )
-    {
-        synchronized( containerTypes )
-        {
-            return containerTypes.contains( path.segment( 0 ) );
-        }
-    }
-    
-    private static void addFlexibleProjectContainerType( final String type )
-    {
-        synchronized( containerTypes )
-        {
-            containerTypes.add( type );
-        }
-    }
-    
-    private static final class Listener
-    
-        implements IResourceChangeListener
-        
-    {
-        public static void register()
-        {
-            final Listener listener = new Listener();
-            final IWorkspace ws = ResourcesPlugin.getWorkspace();
-            ws.addResourceChangeListener( listener, IResourceChangeEvent.PRE_BUILD );
-        }
-        
-        public void resourceChanged( final IResourceChangeEvent event )
-        {
-            // Screen the delta before going any further. 
-            
-            if( ! isInterestingEvent( event ) )
-            {
-                return;
-            }
-            
-            // Locate all of the flexible project containers.
-            
-            final ArrayList containers = new ArrayList();
-            
-            final IProject[] projects 
-                = ResourcesPlugin.getWorkspace().getRoot().getProjects();
-            
-            for( int i = 0; i < projects.length; i++ )
-            {
-                final IProject project = projects[ i ];
-                
-                try
-                {
-                    if( isJavaProject( project ) )
-                    {
-                        final IJavaProject jproj = JavaCore.create( project );
-                        final IClasspathEntry[] cpes = jproj.getRawClasspath();
-                        
-                        for( int j = 0; j < cpes.length; j++ )
-                        {
-                            final IClasspathEntry cpe = cpes[ j ];
-                            final IPath path = cpe.getPath();
-                            
-                            if( cpe.getEntryKind() == IClasspathEntry.CPE_CONTAINER &&
-                                isFlexibleProjectContainer( path ) )
-                            {
-                                final IClasspathContainer cont
-                                    = JavaCore.getClasspathContainer( path, jproj );
-                                
-                                containers.add( cont );
-                            }
-                        }
-                    }
-                }
-                catch( JavaModelException e )
-                {
-                    CommonFrameworksPlugin.log( e );
-                }
-            }
-            
-            // Refresh the containers that are out of date.
-            
-            final IResourceDelta delta = event.getDelta();
-            
-            for( int i = 0, n = containers.size(); i < n; i++ )
-            {
-                final FlexibleProjectContainer c 
-                    = (FlexibleProjectContainer) containers.get( i );
-                
-                if( c.isOutOfDate( delta ) )
-                {
-                    c.refresh();
-                }
-            }
-        }
-
-        private static boolean isInterestingEvent( final IResourceChangeEvent event )
-        {
-            final boolean[] result = new boolean[ 1 ];
-            
-            final IResourceDeltaVisitor visitor = new IResourceDeltaVisitor()
-            {
-                public boolean visit( final IResourceDelta delta ) 
-                {
-                    final IResource r = delta.getResource();
-                    
-                    switch( r.getType() )
-                    {
-                        case IResource.ROOT:
-                        {
-                            return true;
-                        }
-                        case IResource.PROJECT:
-                        {
-                            return ModuleCoreNature.isFlexibleProject( (IProject) r );
-                        }
-                        case IResource.FOLDER:
-                        {
-                            final int kind = delta.getKind();
-                            
-                            if( kind == IResourceDelta.ADDED ||
-                                kind == IResourceDelta.REMOVED )
-                            {
-                                result[ 0 ] = true;
-                                return false;
-                            }
-                            return true;
-                        }
-                        case IResource.FILE:
-                        {
-                            if( isJarFile( r ) || isMetadataFile( r ) )
-                            {
-                                result[ 0 ] = true;
-                            }
-                            
-                            return false;
-                        }
-                        default:
-                        {
-                            return false;
-                        }
-                    }
-                }
-            };
-            
-            try
-            {
-                event.getDelta().accept( visitor, false );
-            }
-            catch( CoreException e )
-            {
-                CommonFrameworksPlugin.log( e );
-            }
-            
-            return result[ 0 ];
-        }
-    }
-    
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/classpath/FlexibleProjectContainerInitializer.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/classpath/FlexibleProjectContainerInitializer.java
deleted file mode 100644
index 16eb12a..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/classpath/FlexibleProjectContainerInitializer.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005, 2006 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    Konstantin Komissarchik - initial API and implementation
- ******************************************************************************/
-
-package org.eclipse.jst.common.jdt.internal.classpath;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.ClasspathContainerInitializer;
-import org.eclipse.jdt.core.IClasspathAttribute;
-import org.eclipse.jdt.core.IClasspathContainer;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public abstract class FlexibleProjectContainerInitializer 
-
-    extends ClasspathContainerInitializer
-
-{
-    private static final ClasspathDecorationsManager decorations
-        = FlexibleProjectContainer.getDecorationsManager();
-    
-    @Override
-	public boolean canUpdateClasspathContainer( final IPath containerPath, 
-                                                final IJavaProject project) 
-    {
-        return true; 
-    }
-
-    @Override
-	public void requestClasspathContainerUpdate( final IPath containerPath, 
-                                                 final IJavaProject project, 
-                                                 final IClasspathContainer sg ) 
-    
-        throws CoreException
-        
-    {
-    	final String key = FlexibleProjectContainer.getDecorationManagerKey(project.getProject(), containerPath.toString());
-    	
-    	final IClasspathEntry[] entries = sg.getClasspathEntries();
-        
-        decorations.clearAllDecorations( key );
-        
-        for( int i = 0; i < entries.length; i++ )
-        {
-            final IClasspathEntry entry = entries[ i ];
-            
-            final IPath srcpath = entry.getSourceAttachmentPath();
-            final IPath srcrootpath = entry.getSourceAttachmentRootPath();
-            final IClasspathAttribute[] attrs = entry.getExtraAttributes();
-            
-            if( srcpath != null || attrs.length > 0 )
-            {
-                final String eid = entry.getPath().toString();
-                final ClasspathDecorations dec = new ClasspathDecorations();
-                
-                dec.setSourceAttachmentPath( srcpath );
-                dec.setSourceAttachmentRootPath( srcrootpath );
-                dec.setExtraAttributes( attrs );
-                
-                decorations.setDecorations( key, eid, dec );
-            }
-        }
-        
-        decorations.save();
-        
-        final IClasspathContainer container
-            = JavaCore.getClasspathContainer( containerPath, project );
-        
-        ( (FlexibleProjectContainer) container ).refresh();
-    }
-    
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/JavaArtifactEditModel.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/JavaArtifactEditModel.java
deleted file mode 100644
index 21ee651..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/JavaArtifactEditModel.java
+++ /dev/null
@@ -1,237 +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
- *******************************************************************************/
-package org.eclipse.jst.common.jdt.internal.integration;
-
-import java.util.Set;
-
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.wst.common.componentcore.internal.ArtifactEditModel;
-import org.eclipse.wst.common.frameworks.internal.SaveFailedException;
-import org.eclipse.wst.common.internal.emf.resource.CompatibilityXMIResource;
-import org.eclipse.wst.common.internal.emf.resource.ReferencedResource;
-import org.eclipse.wst.common.internal.emf.resource.TranslatorResource;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext;
-
-public class JavaArtifactEditModel extends ArtifactEditModel implements WorkingCopyProvider {
-
-	private WorkingCopyManager workingCopyManager = null;
-
-	public JavaArtifactEditModel(String anEditModelId, EMFWorkbenchContext context, boolean toMakeReadOnly,
-			boolean toAccessUnknownResourcesAsReadOnly, URI moduleURI, URI rootURI, String rootContentType) {
-		super(anEditModelId, context, toMakeReadOnly, toAccessUnknownResourcesAsReadOnly, moduleURI, rootURI, rootContentType);
-	}
-
-	public JavaArtifactEditModel(String editModelID, EMFWorkbenchContext context, boolean toMakeReadOnly, URI moduleURI, URI rootURI,
-			String rootContentType) {
-		super(editModelID, context, toMakeReadOnly, moduleURI, rootURI, rootContentType);
-	}
-
-	/**
-	 * @param anEditModelId
-	 * @param aContext
-	 * @param toMakeReadOnly
-	 * @param toAccessUnknownResourcesAsReadOnly
-	 * @param aModuleURI
-	 */
-	public JavaArtifactEditModel(String anEditModelId, EMFWorkbenchContext aContext, boolean toMakeReadOnly, boolean toAccessUnknownResourcesAsReadOnly, URI aModuleURI) {
-		super(anEditModelId, aContext, toMakeReadOnly,
-				toAccessUnknownResourcesAsReadOnly, aModuleURI);
-	}
-
-	/**
-	 * @param anEditModelId
-	 * @param aContext
-	 * @param toMakeReadOnly
-	 * @param aModuleURI
-	 */
-	public JavaArtifactEditModel(String anEditModelId, EMFWorkbenchContext aContext, boolean toMakeReadOnly, URI aModuleURI) {
-		super(anEditModelId, aContext, toMakeReadOnly, aModuleURI);
-	}
-
-	/**
-	 * This will delete
-	 * 
-	 * @cu from the workbench and fix the internal references for this working copy manager.
-	 */
-	public void delete(org.eclipse.jdt.core.ICompilationUnit cu, org.eclipse.core.runtime.IProgressMonitor monitor) {
-		getWorkingCopyManager().delete(cu, monitor);
-	}
-
-	/**
-	 * This method should only be called by the J2EENature.
-	 */
-	@Override
-	protected void doDispose() {
-		super.doDispose();
-		resetWorkingCopyManager();
-	}
-
-	@Override
-	public Set getAffectedFiles() {
-		java.util.Set affected = super.getAffectedFiles();
-		if (getWorkingCopyManager() != null)
-			affected.addAll(getWorkingCopyManager().getAffectedFiles());
-	
-		return affected;
-	}
-
-	/**
-	 * Returns the working copy remembered for the compilation unit encoded in the given editor
-	 * input. Does not connect the edit model to the working copy.
-	 * 
-	 * @param input
-	 *            ICompilationUnit
-	 * @return the working copy of the compilation unit, or <code>null</code> if the input does
-	 *         not encode an editor input, or if there is no remembered working copy for this
-	 *         compilation unit
-	 */
-	public org.eclipse.jdt.core.ICompilationUnit getExistingWorkingCopy(org.eclipse.jdt.core.ICompilationUnit cu) throws org.eclipse.core.runtime.CoreException {
-		return getWorkingCopyManager().getExistingWorkingCopy(cu);
-	}
-
-	/**
-	 * Returns the working copy remembered for the compilation unit.
-	 * 
-	 * @param input
-	 *            ICompilationUnit
-	 * @return the working copy of the compilation unit, or <code>null</code> if there is no
-	 *         remembered working copy for this compilation unit
-	 */
-	public org.eclipse.jdt.core.ICompilationUnit getWorkingCopy(ICompilationUnit cu, boolean forNewCU) throws CoreException {
-		return getWorkingCopyManager().getWorkingCopy(cu, forNewCU);
-	}
-
-	/**
-	 * Save the new compilation units only.
-	 */
-	@Override
-	protected void handleSaveIfNecessaryDidNotSave(IProgressMonitor monitor) {
-		getWorkingCopyManager().saveOnlyNewCompilationUnits(monitor);
-	}
-
-	/**
-	 * @see org.eclipse.jst.j2ee.internal.internal.workbench.J2EEEditModel#isDirty()
-	 */
-	@Override
-	public boolean isDirty() {
-		boolean dirtyBool = super.isDirty();
-		if (!dirtyBool && getWorkingCopyManager() != null)
-			dirtyBool = getWorkingCopyManager().hasWorkingCopies();
-		return dirtyBool;
-	}
-
-	/**
-	 * This will force all of the referenced Resources to be saved.
-	 */
-	@Override
-	public void primSave(IProgressMonitor monitor) {
-		saveCompilationUnits(monitor);
-		if (monitor == null || !monitor.isCanceled())
-			super.primSave(monitor);
-	}
-	@Override
-	protected void runSaveOperation(IWorkspaceRunnable runnable, IProgressMonitor monitor) throws SaveFailedException {
-		try {
-			ResourcesPlugin.getWorkspace().run(runnable, null,IWorkspace.AVOID_UPDATE,monitor);
-		} catch (CoreException e) {
-			throw new SaveFailedException(e);
-		}
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/11/2001 4:14:26 PM)
-	 * 
-	 * @return java.util.Set
-	 */
-	@Override
-	public void processResource(Resource aResource) {
-		if (aResource != null && !getResources().contains(aResource)) {
-			if (aResource instanceof ReferencedResource) {
-				access((ReferencedResource) aResource);
-				//We need a better way to pass this through the save options instead.
-				//We also need to make this dynamic based on the project target
-				((ReferencedResource) aResource).setFormat(CompatibilityXMIResource.FORMAT_MOF5);
-			} else if (!isReadOnly())
-				aResource.setTrackingModification(true);
-			addResource(aResource);
-		}
-	}
-
-	/**
-	 * Release each of the referenced resources.
-	 */
-	@Override
-	protected void release(Resource aResource) {
-	
-		removeResource(aResource);
-		if (aResource != null) {
-			boolean isRefRes = aResource instanceof ReferencedResource;
-			if (isRefRes)
-				release((ReferencedResource) aResource);
-			else if (!isReadOnly())
-				aResource.setTrackingModification(false);
-			if (!isDisposing())
-				resetWorkingCopyManager();
-			}
-		}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jst.j2ee.internal.internal.workbench.J2EEEditModel#resourceIsLoadedChanged(org.eclipse.emf.ecore.resource.Resource,
-	 *      boolean, boolean)
-	 */
-	@Override
-	protected void resourceIsLoadedChanged(Resource aResource, boolean oldValue, boolean newValue) {
-		if (!isReverting && !disposing && !isReadOnly() && oldValue && !newValue && aResource instanceof TranslatorResource)
-			resetWorkingCopyManager();
-		super.resourceIsLoadedChanged(aResource, oldValue, newValue);
-	}
-
-	@Override
-	protected void reverted(ReferencedResource revertedResource) {
-		if (getWorkingCopyManager() != null)
-			getWorkingCopyManager().revert();
-		revertAllResources();
-	}
-
-	/**
-	 * This will save all of the referenced CompilationUnits to be saved.
-	 */
-	public void saveCompilationUnits(IProgressMonitor monitor) {
-		getWorkingCopyManager().saveCompilationUnits(monitor);
-	}
-
-	public WorkingCopyManager getWorkingCopyManager() {
-		if (workingCopyManager == null)
-			workingCopyManager = WorkingCopyManagerFactory.newRegisteredInstance();
-		return workingCopyManager;
-	}
-
-	/**
-	 * Reset the working copy manager because the ejb-jar.xml was removed without disposing.
-	 */
-	protected void resetWorkingCopyManager() {
-		if (workingCopyManager != null) {
-			workingCopyManager.dispose();
-			workingCopyManager = null;
-		}
-	}
-	
-
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/JavaArtifactEditModelFactory.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/JavaArtifactEditModelFactory.java
deleted file mode 100644
index 27640f5..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/JavaArtifactEditModelFactory.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 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.jst.common.jdt.internal.integration;
-
-import java.util.Map;
-
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModel;
-import org.eclipse.wst.common.internal.emfworkbench.integration.EditModelFactory;
-
-/**
- * <p>
- * The following class is experimental until fully documented.
- * </p>
- */
-public class JavaArtifactEditModelFactory extends EditModelFactory {
-	
-	public static final String MODULE_EDIT_MODEL_ID = "org.eclipse.jst.modulecore.editModel"; //$NON-NLS-1$
-	
-	public static final String PARAM_MODULE_URI = "MODULE_URI"; //$NON-NLS-1$
-	
-	public static final String PARAM_ROOT_URI = "ROOT_URI"; //$NON-NLS-1$
-	
-	public static final String PARAM_ROOT_CONTENT_TYPE = "ROOT_CONTENT_TYPE"; //$NON-NLS-1$
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.internal.emfworkbench.integration.EditModelFactory#createEditModelForRead(java.lang.String, org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext, java.util.Map)
-	 */
-	@Override
-	public EditModel createEditModelForRead(String editModelID, EMFWorkbenchContext context, Map params) {
-		URI moduleURI = (URI) ((params != null) ? params.get(PARAM_MODULE_URI) : null);
-		URI rootURI = (URI) ((params != null) ? params.get(PARAM_ROOT_URI) : null);
-		String rootContentType = (String) ((params != null) ? params.get(PARAM_ROOT_CONTENT_TYPE) : null);
-		if(moduleURI == null)
-			throw new IllegalStateException("A Module URI must be provided"); //$NON-NLS-1$
-		
-		return  new JavaArtifactEditModel(editModelID, context, true, moduleURI,rootURI,rootContentType);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.internal.emfworkbench.integration.EditModelFactory#createEditModelForWrite(java.lang.String, org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext, java.util.Map)
-	 */
-	@Override
-	public EditModel createEditModelForWrite(String editModelID, EMFWorkbenchContext context, Map params) {
-		URI moduleURI = (URI) ((params != null) ? params.get(PARAM_MODULE_URI) : null);
-		URI rootURI = (URI) ((params != null) ? params.get(PARAM_ROOT_URI) : null);
-		String rootContentType = (String) ((params != null) ? params.get(PARAM_ROOT_CONTENT_TYPE) : null);
-		if(moduleURI == null)
-			throw new IllegalStateException("A Module URI must be provided"); //$NON-NLS-1$
-		return  new JavaArtifactEditModel(editModelID, context, false,false, moduleURI,rootURI,rootContentType);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.internal.emfworkbench.integration.EditModelFactory#getCacheID(java.lang.String, java.util.Map)
-	 */
-	@Override
-	public String getCacheID(String editModelID, Map params) { 
-		URI moduleURI = (URI)params.get(PARAM_MODULE_URI);
-		if(moduleURI != null)
-			return editModelID+":"+moduleURI.toString(); //$NON-NLS-1$
-		return editModelID+":NOURI"; //$NON-NLS-1$
-	}
-
-	
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/JavaProjectValidationHandler.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/JavaProjectValidationHandler.java
deleted file mode 100644
index ece9912..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/JavaProjectValidationHandler.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 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.jst.common.jdt.internal.integration;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.wst.validation.internal.IValidationSelectionHandler;
-
-
-/**
- * Java Project validation 
- */
-public class JavaProjectValidationHandler implements IValidationSelectionHandler {
-	
-	private String validationType = null;
-	
-	/**
-	 * Default constructor
-	 */
-	public JavaProjectValidationHandler() {
-		super();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.frameworks.internal.IValidationSelectionHandler#getBaseValidationType(java.lang.Object)
-	 */
-	public IResource getBaseValidationType(Object selection) {
-		if (selection instanceof IJavaProject)
-			return ((IJavaProject)selection).getProject();
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.frameworks.internal.IValidationSelectionHandler#getValidationTypeString()
-	 */
-	public String getValidationTypeString() {
-		return validationType;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.common.frameworks.internal.IValidationSelectionHandler#setValidationTypeString(java.lang.String)
-	 */
-	public void setValidationTypeString(String validationType) {
-		this.validationType = validationType;
-	}
-
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/WTPWorkingCopyManager.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/WTPWorkingCopyManager.java
deleted file mode 100644
index c43d15d..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/WTPWorkingCopyManager.java
+++ /dev/null
@@ -1,545 +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
- *******************************************************************************/
-package org.eclipse.jst.common.jdt.internal.integration;
-
-
-
-import java.util.ArrayList;
-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 org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IPackageFragment;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jem.util.logger.proxy.Logger;
-import org.eclipse.jst.common.frameworks.CommonFrameworksPlugin;
-import org.eclipse.wst.common.frameworks.internal.ISaveHandler;
-import org.eclipse.wst.common.frameworks.internal.SaveFailedException;
-import org.eclipse.wst.common.frameworks.internal.SaveHandlerHeadless;
-import org.eclipse.wst.common.frameworks.internal.SaveHandlerRegister;
-import org.eclipse.wst.common.frameworks.internal.plugin.WTPCommonPlugin;
-
-/**
- * Insert the type's description here. Creation date: (4/27/2001 4:14:30 PM)
- * 
- * @author: Administrator
- */
-public class WTPWorkingCopyManager implements WorkingCopyManager {
-
-	//New CUs that will need to be deleted upon dispose
-	private List originalNewCompilationUnits;
-	//New CUs that were created that need saved immediately (after each gen)
-	private List needsSavingCompilationUnits;
-	//A complete list of new CUs that is only cleared on save and dispose
-	private List newCompilationUnits;
-	private HashMap deletedCompilationUnits;
-	protected static final Class IRESOURCE_CLASS = IResource.class;
-
-	/**
-	 * WTPWorkingCopyManager constructor comment.
-	 */
-	public WTPWorkingCopyManager() {
-		super();
-	}
-
-	protected void addDeletedCompilationUnit(ICompilationUnit cu) {
-		getNeedsSavingCompilationUnits().remove(cu);
-		if (!getOriginalNewCompilationUnits().contains(cu) && !getDeletedCompilationUnits().containsKey(cu))
-			primAddDeletedCompilationUnit(cu);
-		getOriginalNewCompilationUnits().remove(cu);
-	}
-
-	protected void addNewCompilationUnit(ICompilationUnit cu, ICompilationUnit workingCopy) {
-		getNewCompilationUnits().add(cu);
-		getNeedsSavingCompilationUnits().add(workingCopy);
-		if (!getDeletedCompilationUnits().containsKey(cu))
-			getOriginalNewCompilationUnits().add(cu);
-	}
-
-	/**
-	 * This will save all of the new CompilationUnits to be saved.
-	 */
-	protected void commitWorkingCopy(ICompilationUnit wc, IProgressMonitor monitor) {
-		try {
-			try {
-				wc.commitWorkingCopy(false, monitor);
-			} catch (JavaModelException e) {
-				if (isFailedWriteFileFailure(e) && shouldSaveReadOnly(wc))
-					wc.commitWorkingCopy(false, monitor);
-				else
-					throw e;
-			}
-		} catch (JavaModelException e) {
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError(e);
-			throw new SaveFailedException(e);
-		} finally {
-			try {
-				wc.discardWorkingCopy();
-			} catch (JavaModelException e1) {
-				org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError(e1);
-				throw new SaveFailedException(e1);
-			}
-		}
-	}
-
-	/**
-	 * This will delete
-	 * 
-	 * @cu from the workbench and fix the internal references for this working copy manager.
-	 */
-	public void delete(final ICompilationUnit cu, final IProgressMonitor monitor) {
-		ICompilationUnit localCU = cu;
-		if (localCU.isWorkingCopy())
-			localCU = localCU.getPrimary();
-		addDeletedCompilationUnit(localCU);
-		try {
-			localCU.delete(false, monitor);
-		} catch (JavaModelException e) {
-			if (e.getStatus().getCode() != org.eclipse.jdt.core.IJavaModelStatusConstants.ELEMENT_DOES_NOT_EXIST)
-				org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError(e);
-		}
-	}
-
-	protected void discardOriginalNewCompilationUnits() {
-		if (getOriginalNewCompilationUnits().isEmpty())
-			return;
-		List cus = getOriginalNewCompilationUnits();
-		ICompilationUnit cu;
-		ICompilationUnit wc = null;
-		for (int i = 0; i < cus.size(); i++) {
-			cu = (ICompilationUnit) cus.get(i);
-			if (cu.isWorkingCopy()) {
-				wc = cu;
-				cu = wc.getPrimary();
-			}
-			primDelete(cu);
-			if (wc != null)
-				try {
-					wc.discardWorkingCopy();
-				} catch (JavaModelException e) {
-					Logger.getLogger().logError(e);
-				}
-		}
-	}
-
-	public void dispose() {
-		IWorkspaceRunnable runnable = new IWorkspaceRunnable() {
-			public void run(IProgressMonitor aMonitor) {
-				primDispose();
-			}
-		};
-		try {
-			if (!WTPCommonPlugin.getWorkspace().isTreeLocked()) {
-				WTPCommonPlugin.getWorkspace().run(runnable,null, IWorkspace.AVOID_UPDATE,null);
-			} else {
-				runnable.run(null);
-			}
-		} catch (CoreException e) {
-			CommonFrameworksPlugin.logError(e);
-		}
-	}
-
-	public void revert() {
-		IWorkspaceRunnable runnable = new IWorkspaceRunnable() {
-			public void run(IProgressMonitor aMonitor) {
-				primRevert();
-			}
-		};
-		runOperation(runnable, null, true);
-	}
-
-	public Set getAffectedFiles() {
-		return Collections.EMPTY_SET;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (7/11/2001 6:43:37 PM)
-	 * 
-	 * @return java.util.HashMap
-	 */
-	protected HashMap getDeletedCompilationUnits() {
-		if (deletedCompilationUnits == null)
-			deletedCompilationUnits = new HashMap();
-		return deletedCompilationUnits;
-	}
-
-	/**
-	 * Returns the working copy remembered for the compilation unit encoded in the given editor
-	 * input. Does not connect the edit model to the working copy.
-	 * 
-	 * @param input
-	 *            ICompilationUnit
-	 * @return the working copy of the compilation unit, or <code>null</code> if the input does
-	 *         not encode an editor input, or if there is no remembered working copy for this
-	 *         compilation unit
-	 */
-	public org.eclipse.jdt.core.ICompilationUnit getExistingWorkingCopy(ICompilationUnit cu) throws CoreException {
-		ICompilationUnit newCU = getNewCompilationUnitWorkingCopy(cu);
-		if (newCU != null)
-			return newCU;
-		return null;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (7/19/2001 11:00:19 AM)
-	 * 
-	 * @return java.util.List
-	 */
-	protected java.util.List getNeedsSavingCompilationUnits() {
-		if (needsSavingCompilationUnits == null)
-			needsSavingCompilationUnits = new ArrayList();
-		return needsSavingCompilationUnits;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/26/2001 3:49:05 PM)
-	 * 
-	 * @return java.util.List
-	 */
-	protected java.util.List getNewCompilationUnits() {
-		if (newCompilationUnits == null)
-			newCompilationUnits = new ArrayList();
-		return newCompilationUnits;
-	}
-
-	/**
-	 * It is possible that we have already created this CompilationUnit and its working copy. If
-	 * this is the case, return our new working copy and do not create a new one.
-	 */
-	protected ICompilationUnit getNewCompilationUnitWorkingCopy(ICompilationUnit cu) {
-		if (hasNewCompilationUnit(cu)) {
-			List list = getNeedsSavingCompilationUnits();
-			ICompilationUnit copy;
-			for (int i = 0; i < list.size(); i++) {
-				copy = (ICompilationUnit) list.get(i);
-				if (cu.equals(copy.getPrimary()))
-					return copy;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Insert the method's description here. Creation date: (4/26/2001 3:49:05 PM)
-	 * 
-	 * @return java.util.List
-	 */
-	protected java.util.List getOriginalNewCompilationUnits() {
-		if (originalNewCompilationUnits == null)
-			originalNewCompilationUnits = new ArrayList();
-		return originalNewCompilationUnits;
-	}
-
-	/**
-	 * Return the IPackageFragment for the given ICompilationUnit.
-	 */
-	protected IPackageFragment getPackageFragment(ICompilationUnit cu) {
-		if (cu == null)
-			return null;
-		IJavaElement parent = cu;
-		int elementType = cu.getElementType();
-		while (parent != null && elementType != IJavaElement.PACKAGE_FRAGMENT) {
-			parent = parent.getParent();
-			if (parent != null)
-				elementType = parent.getElementType();
-			else
-				elementType = -1;
-		}
-		return (IPackageFragment) parent;
-	}
-
-	protected ISaveHandler getSaveHandler() {
-		return SaveHandlerRegister.getSaveHandler();
-	}
-
-	/**
-	 * Returns the working copy remembered for the compilation unit.
-	 * 
-	 * @param input
-	 *            ICompilationUnit
-	 * @return the working copy of the compilation unit, or <code>null</code> if there is no
-	 *         remembered working copy for this compilation unit
-	 */
-	public ICompilationUnit getWorkingCopy(ICompilationUnit cu, boolean forNewCU) throws org.eclipse.core.runtime.CoreException {
-		if (cu == null || cu.isWorkingCopy())
-			return cu;
-		ICompilationUnit newCU = getNewCompilationUnitWorkingCopy(cu);
-		if (newCU != null)
-			return newCU;
-		ICompilationUnit workingCopy = cu.getWorkingCopy(null);
-		addNewCompilationUnit(cu, workingCopy);
-		return workingCopy;
-	}
-
-	/**
-	 * Has a new compilation unit already been created.
-	 */
-	protected boolean hasNewCompilationUnit(ICompilationUnit cu) {
-		return getNewCompilationUnits().contains(cu);
-	}
-
-	protected boolean isFailedWriteFileFailure(Exception ex) {
-		return SaveHandlerHeadless.isFailedWriteFileFailure(ex);
-	}
-
-	protected void primAddDeletedCompilationUnit(ICompilationUnit cu) {
-		if (cu == null)
-			return;
-		Object[] info = new Object[2];
-		info[0] = getPackageFragment(cu);
-		try {
-			info[1] = cu.getSource();
-		} catch (JavaModelException e) {
-			info[1] = null;
-		}
-		getDeletedCompilationUnits().put(cu, info);
-	}
-
-	// This is an internal delete call.
-	protected void primDelete(ICompilationUnit cu) {
-		try {
-			if (cu.exists())
-				cu.delete(true, new org.eclipse.core.runtime.NullProgressMonitor());
-		} catch (JavaModelException e) {
-			org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError(e);
-			//What to do here?
-		}
-	}
-
-	protected void primDispose() {
-		discardOriginalNewCompilationUnits();
-		reviveDeletedCompilationUnits();
-		newCompilationUnits = null;
-		needsSavingCompilationUnits = null;
-		originalNewCompilationUnits = null;
-		deletedCompilationUnits = null;
-	}
-
-	protected void primRevert() {
-		discardOriginalNewCompilationUnits();
-		reviveDeletedCompilationUnits();
-		newCompilationUnits = null;
-		needsSavingCompilationUnits = null;
-		originalNewCompilationUnits = null;
-		deletedCompilationUnits = null;
-	}
-
-	/**
-	 * Returns the working copy remembered for the compilation unit encoded in the given editor
-	 * input.
-	 * 
-	 * @param input
-	 *            ICompilationUnit
-	 * @return the working copy of the compilation unit, or <code>null</code> if the input does
-	 *         not encode an editor input, or if there is no remembered working copy for this
-	 *         compilation unit
-	 */
-	protected ICompilationUnit primGetWorkingCopy(ICompilationUnit cu) throws CoreException {
-		return null;
-	}
-
-	/**
-	 * This will save all of the referenced CompilationUnits to be saved.
-	 */
-	protected void primSaveCompilationUnits(org.eclipse.core.runtime.IProgressMonitor monitor) {
-		saveNewCompilationUnits(monitor);
-		getDeletedCompilationUnits().clear();
-	}
-
-	/**
-	 * This will save all of the new CompilationUnits to be saved.
-	 */
-	protected void primSaveOnlyNewCompilationUnits(org.eclipse.core.runtime.IProgressMonitor monitor) {
-		List cus = getNeedsSavingCompilationUnits();
-		ICompilationUnit wc;
-		for (int i = 0; i < cus.size(); i++) {
-			wc = (ICompilationUnit) cus.get(i);
-			commitWorkingCopy(wc, monitor);
-		}
-		cus.clear();
-	}
-
-	protected void removeDeletedCompilationUnit(ICompilationUnit cu) {
-		if (getDeletedCompilationUnits().remove(cu) != null) {
-			if (cu.isWorkingCopy()) {
-				ICompilationUnit original, nextCU, testCU;
-				original = cu.getPrimary();
-				Set cus = getDeletedCompilationUnits().keySet();
-				Iterator it = cus.iterator();
-				while (it.hasNext()) {
-					nextCU = (ICompilationUnit) it.next();
-					testCU = nextCU.isWorkingCopy() ? (ICompilationUnit) nextCU.getPrimary() : nextCU;
-					if (testCU.equals(original)) {
-						cus.remove(nextCU);
-						return;
-					}
-				}
-			}
-		}
-	}
-
-	protected void reviveDeletedCompilationUnit(ICompilationUnit cu, Object[] info, IProgressMonitor pm) {
-		if(cu.getJavaProject().isOpen()) {
-			if (info[0] != null && info[1] != null) {
-				String typeName = cu.getElementName();
-				IPackageFragment pack = (IPackageFragment) info[0];
-				String source = (String) info[1];
-				try {
-					ICompilationUnit existingCU = pack.getCompilationUnit(typeName);
-					if (existingCU.exists() && getNewCompilationUnits().contains(existingCU))
-						existingCU.delete(false, pm);
-					pack.createCompilationUnit(typeName, source, false, pm);
-				} catch (JavaModelException e) {
-					org.eclipse.jem.util.logger.proxy.Logger.getLogger().logError(e);
-				}
-			}
-		}
-	}
-
-	protected void reviveDeletedCompilationUnits() {
-		if (getDeletedCompilationUnits().isEmpty())
-			return;
-		
-		IProgressMonitor pm = new org.eclipse.core.runtime.NullProgressMonitor();
-		Iterator it = getDeletedCompilationUnits().entrySet().iterator();
-		Map.Entry entry;
-		ICompilationUnit cu;
-		Object[] info;
-		while (it.hasNext()) {
-			entry = (Map.Entry) it.next();
-			cu = (ICompilationUnit) entry.getKey();
-			info = (Object[]) entry.getValue();
-			reviveDeletedCompilationUnit(cu, info, pm);
-		}
-
-	}
-
-	protected void runOperation(IWorkspaceRunnable aRunnable, IProgressMonitor monitor, boolean validate) {
-		primRunOperation(aRunnable, monitor);
-
-		// TODO Break the validator depedency
-		//	if (validate)
-		//		primRunOperation(aRunnable, monitor);
-		//	else {
-		//		IProject proj = getValidationProject();
-		//			
-		//		ValidatorManager mgr = ValidatorManager.getManager();
-		//		boolean disableValidators = proj != null;
-		//		boolean wasSuspended = false;
-		//		if (disableValidators) {
-		//			wasSuspended = mgr.isSuspended(proj);
-		//			if (!wasSuspended)
-		//				mgr.suspendValidation(proj, true);
-		//		}
-		//		try {
-		//			primRunOperation(aRunnable, monitor);
-		//		} finally {
-		//			if (disableValidators && !wasSuspended)
-		//				mgr.suspendValidation(proj, false);
-		//		}
-		//	}
-	}
-
-	protected void primRunOperation(IWorkspaceRunnable aRunnable, IProgressMonitor monitor) {
-		
-		if (aRunnable != null) {
-			//if (workspace.isTreeLocked())
-			//Logger.getLogger().logTrace(ResourceHandler.getString("Cannot_run_J2EEUIWorkingCo_ERROR_"));
-			// //$NON-NLS-1$ = "Cannot run J2EEUIWorkingCopyManager operation because the Workspace
-			// tree is locked."
-			//else {
-			if (!WTPCommonPlugin.getWorkspace().isTreeLocked()) {
-				try {
-					WTPCommonPlugin.getWorkspace().run(aRunnable, monitor);
-				} catch (CoreException e) {
-					throw new SaveFailedException(e);
-				}
-			}
-		}
-	}
-
-	/**
-	 * This will save all of the referenced CompilationUnits to be saved.
-	 */
-	public void saveCompilationUnits(org.eclipse.core.runtime.IProgressMonitor monitor) {
-		getSaveHandler().access();
-		try {
-			IWorkspaceRunnable runnable = new IWorkspaceRunnable() {
-				public void run(IProgressMonitor aMonitor) {
-					primSaveCompilationUnits(aMonitor);
-				}
-			};
-			runOperation(runnable, monitor, true);
-		} catch (SaveFailedException ex) {
-			getSaveHandler().handleSaveFailed(ex, monitor);
-		} finally {
-			getSaveHandler().release();
-		}
-	}
-
-	/**
-	 * This will save all of the referenced CompilationUnits to be saved.
-	 */
-	protected void saveNewCompilationUnits(IProgressMonitor monitor) {
-		primSaveOnlyNewCompilationUnits(monitor);
-		getOriginalNewCompilationUnits().clear();
-		getNewCompilationUnits().clear();
-	}
-
-	/**
-	 * This will save all of the new CompilationUnits to be saved.
-	 */
-	public void saveOnlyNewCompilationUnits(org.eclipse.core.runtime.IProgressMonitor monitor) {
-		getSaveHandler().access();
-		try {
-			IWorkspaceRunnable runnable = new IWorkspaceRunnable() {
-				public void run(IProgressMonitor aMonitor) {
-					primSaveOnlyNewCompilationUnits(aMonitor);
-				}
-			};
-			runOperation(runnable, monitor, false);
-		} catch (SaveFailedException ex) {
-			getSaveHandler().handleSaveFailed(ex, monitor);
-		} finally {
-			getSaveHandler().release();
-		}
-	}
-
-	protected boolean shouldSaveReadOnly(ICompilationUnit wc) {
-		IResource resource = null;
-
-		resource = (IResource) wc.getPrimary().getAdapter(IRESOURCE_CLASS);
-
-		if (resource == null || resource.getType() != IResource.FILE || !resource.getResourceAttributes().isReadOnly())
-			return false;
-
-		return getSaveHandler().shouldContinueAndMakeFileEditable((IFile) resource);
-	}
-
-	/**
-	 * @see com.ibm.etools.j2ee.workbench.IJ2EEWorkingCopyManager#hasWorkingCopies()
-	 */
-	public boolean hasWorkingCopies() {
-		return (deletedCompilationUnits != null && !deletedCompilationUnits.isEmpty()) || (needsSavingCompilationUnits != null && !needsSavingCompilationUnits.isEmpty()) || (newCompilationUnits != null && !newCompilationUnits.isEmpty());
-	}
-
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/WorkingCopyManager.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/WorkingCopyManager.java
deleted file mode 100644
index 35ccc89..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/WorkingCopyManager.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the 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.jst.common.jdt.internal.integration;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-
-
-/**
- * @author Administrator
- * 
- *  
- */
-public interface WorkingCopyManager extends WorkingCopyProvider {
-
-	void dispose();
-
-	java.util.Set getAffectedFiles();
-
-	/**
-	 * This will save all of the referenced CompilationUnits to be saved.
-	 */
-	void saveCompilationUnits(IProgressMonitor monitor);
-
-	/**
-	 * This will save all of the new CompilationUnits to be saved.
-	 */
-	void saveOnlyNewCompilationUnits(IProgressMonitor monitor);
-
-	/**
-	 * Method hasWorkingCopies.
-	 * 
-	 * @return boolean
-	 */
-	boolean hasWorkingCopies();
-
-	/**
-	 * Revert all working copies.
-	 */
-	void revert();
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/WorkingCopyManagerFactory.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/WorkingCopyManagerFactory.java
deleted file mode 100644
index 9153f9e..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/WorkingCopyManagerFactory.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 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.jst.common.jdt.internal.integration;
-
-import org.eclipse.jem.util.UIContextDetermination;
-
-
-/**
- * @author mdelder
- * 
- *  
- */
-public class WorkingCopyManagerFactory {
-
-	//	protected static Class workingCopyManagerClass;
-
-	public static WorkingCopyManager newRegisteredInstance() {
-		return (WorkingCopyManager) UIContextDetermination.createInstance("workingCopyManager"); //$NON-NLS-1$
-	}
-
-	//	public static IWorkingCopyManager createWorkingCopyManager() {
-	//		if (getWorkingCopyManagerClass() != null)
-	//			try {
-	//				return (IWorkingCopyManager) getWorkingCopyManagerClass().newInstance();
-	//			} catch (InstantiationException e1) {
-	//			} catch (IllegalAccessException e2) {
-	//			}
-	//		return null;
-	//	}
-	//	
-	//	/**
-	//	 * Insert the method's description here.
-	//	 * Creation date: (4/26/2001 7:53:15 AM)
-	//	 * @return java.lang.Class
-	//	 */
-	//	public static java.lang.Class getWorkingCopyManagerClass() {
-	//		return workingCopyManagerClass;
-	//	}
-	//	
-	//	/**
-	//	 * Insert the method's description here.
-	//	 * Creation date: (4/26/2001 7:53:15 AM)
-	//	 * @param newWorkingCopyManagerClass java.lang.Class
-	//	 */
-	//	public static void setWorkingCopyManagerClass(java.lang.Class newWorkingCopyManagerClass) {
-	//		workingCopyManagerClass = newWorkingCopyManagerClass;
-	//	}
-
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/WorkingCopyProvider.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/WorkingCopyProvider.java
deleted file mode 100644
index 2696f5c..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/integration/WorkingCopyProvider.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2004 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the 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.jst.common.jdt.internal.integration;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jdt.core.ICompilationUnit;
-
-
-/**
- * The user of the Java code generation framework must supply an implementation of this interface.
- * The framework will obtain compilation working copies from this interface. The supplier of the
- * implementation is responsible for committing the working copies when appropriate for the user's
- * edit model.
- */
-public interface WorkingCopyProvider {
-
-	/**
-	 * This will delete compilation unit from the workbench and fix the internal references for this
-	 * working copy manager.
-	 * 
-	 * @param cu
-	 *            the compilation unit to delete
-	 * @param monitor
-	 *            the progress monitor to use for the delete
-	 */
-	void delete(ICompilationUnit cu, IProgressMonitor monitor);
-
-	/**
-	 * Returns the working copy remembered for the compilation unit. That is, the manager already
-	 * has a working copy for this unit, it does not create a new working copy. Does not connect the
-	 * edit model to the working copy.
-	 * 
-	 * @param input
-	 *            the compilation unit
-	 * @return the working copy of the compilation unit, or <code>null</code> it there is no
-	 *         remembered working copy for this compilation unit
-	 */
-	ICompilationUnit getExistingWorkingCopy(ICompilationUnit cu) throws CoreException;
-
-	/**
-	 * Returns the working copy remembered for the compilation unit or creates a new working copy
-	 * for the compilation unit and returns it. If a working copy is passed in, it is returned.
-	 * 
-	 * @param input
-	 *            the compilation unit
-	 * @return the working copy of the compilation unit
-	 * @exception CoreException
-	 *                if the working copy can not be created
-	 */
-	ICompilationUnit getWorkingCopy(ICompilationUnit cu, boolean forNewCU) throws CoreException;
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/javalite/IJavaProjectLite.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/javalite/IJavaProjectLite.java
deleted file mode 100644
index ced0aec..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/javalite/IJavaProjectLite.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.common.jdt.internal.javalite;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.IJavaModel;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-
-/**
- * <p>
- * Represents a scaled down version of an {@link IJavaProject}. This subset of
- * methods is guaranteed to not force a load of the underlying
- * {@link IJavaModel}. This enables safe access to a limited set of
- * {@link IJavaProject} API for multi-threaded clients to call during times of
- * extreme concurrency, e.g. workbench startup.
- * </p>
- * <p>
- * An instance of one of these handles can be created via
- * <code>JavaCoreLite.create(project)</code>.
- * </p>
- * 
- * @see JavaCore#create(org.eclipse.core.resources.IProject)
- * @see IJavaProject
- * @see IClasspathEntry
- */
-public interface IJavaProjectLite {
-	/**
-	 * @see IJavaProject#readRawClasspath()
-	 * 
-	 * @return
-	 */
-	IClasspathEntry[] readRawClasspath();
-
-	/**
-	 * @see IJavaProject#readOutputLocation()
-	 * 
-	 * @return
-	 */
-	IPath readOutputLocation();
-
-	/**
-	 * @see IJavaProject#getProject()
-	 * 
-	 * @return
-	 */
-	IProject getProject();
-
-	/**
-	 * @see IJavaProject#exists()
-	 */
-	boolean exists();
-	
-	/**
-	 * @see IJavaProject#isOpen()
-	 * @return
-	 */
-	boolean isOpen();
-
-	/**
-	 * @see IJavaProject#hasBuildState()
-	 * @return
-	 */
-	public boolean hasBuildState();
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/javalite/JavaCoreLite.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/javalite/JavaCoreLite.java
deleted file mode 100644
index b79aa6b..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/javalite/JavaCoreLite.java
+++ /dev/null
@@ -1,211 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.common.jdt.internal.javalite;
-
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-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.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.ClasspathContainerInitializer;
-import org.eclipse.jdt.core.ElementChangedEvent;
-import org.eclipse.jdt.core.IAccessRule;
-import org.eclipse.jdt.core.IClasspathAttribute;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.IElementChangedListener;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IJavaElementDelta;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.internal.core.JavaModelManager;
-
-public final class JavaCoreLite {
-
-	public static String NATURE_ID = JavaCore.NATURE_ID;
-
-	private static Object lock = new Object();
-
-	private static JavaCoreLite INSTANCE = null;
-
-	private class JavaCoreLiteListener implements IElementChangedListener, IResourceChangeListener {
-		public void elementChanged(ElementChangedEvent event) {
-			IJavaElementDelta delta = event.getDelta();
-			IJavaElementDelta[] children = delta.getAffectedChildren();
-			for (int i = 0; i < children.length; i++) {
-				processDelta(children[i]);
-			}
-		}
-
-		private void processDelta(IJavaElementDelta delta) {
-			int flags = delta.getFlags();
-			if ((flags & IJavaElementDelta.F_CLOSED) != 0) {
-				IJavaElement element = delta.getElement();
-				IJavaProject javaProject = (IJavaProject) element;
-				IProject project = javaProject.getProject();
-				synchronized (lock) {
-					initializedJavaProjects.remove(project);
-					javaProjectLiteCache.remove(project);
-				}
-			} else if ((flags & IJavaElementDelta.F_CLASSPATH_CHANGED) != 0) {
-				IJavaElement element = delta.getElement();
-				if (element.getElementType() == IJavaElement.JAVA_PROJECT) {
-					IJavaProject javaProject = (IJavaProject) element;
-					IProject project = javaProject.getProject();
-					synchronized (lock) {
-						if (!initializedJavaProjects.contains(project) && javaProjectLiteCache.containsKey(project)) {
-							JavaProjectLite javaProjectLite = javaProjectLiteCache.get(project);
-							javaProjectLite.flushClasspath();
-						}
-					}
-				}
-			} else if ((flags & IJavaElementDelta.F_RESOLVED_CLASSPATH_CHANGED) != 0) {
-				IJavaElement element = delta.getElement();
-				if (element.getElementType() == IJavaElement.JAVA_PROJECT) {
-					IJavaProject javaProject = (IJavaProject) element;
-					IProject project = javaProject.getProject();
-					synchronized (lock) {
-						if (!initializedJavaProjects.contains(project)) {
-							initializedJavaProjects.add(project);
-							if (javaProjectLiteCache.containsKey(project)) {
-								JavaProjectLite javaProjectLite = javaProjectLiteCache.get(project);
-								javaProjectLite.markJavaProjectInitialized();
-							}
-						}
-					}
-				}
-			}
-		}
-
-		public void resourceChanged(IResourceChangeEvent event) {
-			switch (event.getType()) {
-			case IResourceChangeEvent.PRE_CLOSE:
-			case IResourceChangeEvent.PRE_DELETE:
-				IResource resource = event.getResource();
-				if (resource.getType() == IResource.PROJECT) {
-					IProject project = (IProject) resource;
-					synchronized (lock) {
-						initializedJavaProjects.remove(project);
-						javaProjectLiteCache.remove(project);
-					}
-				}
-			}
-		}
-	}
-
-	private Set<IProject> initializedJavaProjects = new HashSet<IProject>();
-	private Map<IProject, JavaProjectLite> javaProjectLiteCache = new HashMap<IProject, JavaProjectLite>();
-	private JavaCoreLiteListener listener = null;
-
-	private static JavaCoreLite getInstance() {
-		synchronized (lock) {
-			if (INSTANCE == null) {
-				INSTANCE = new JavaCoreLite();
-			}
-		}
-		return INSTANCE;
-	}
-
-	private JavaCoreLite() {
-		listener = new JavaCoreLiteListener();
-		JavaCore.addElementChangedListener(listener);
-		ResourcesPlugin.getWorkspace().addResourceChangeListener(listener, IResourceChangeEvent.PRE_CLOSE | IResourceChangeEvent.PRE_DELETE);
-	}
-
-	private IJavaProjectLite createImpl(IProject project) {
-		synchronized (lock) {
-			if (javaProjectLiteCache.containsKey(project)) {
-				return javaProjectLiteCache.get(project);
-			}
-		}
-
-		IJavaProject javaProject = JavaCore.create(project);
-		if (javaProject != null) {
-			boolean javaProjectInitialized = false;
-			synchronized (lock) {
-				javaProjectInitialized = initializedJavaProjects.contains(project);
-			}
-			if (!javaProjectInitialized) {
-				if (isInitialized(javaProject)) {
-					synchronized (lock) {
-						initializedJavaProjects.add(project);
-					}
-					javaProjectInitialized = true;
-				}
-			}
-			JavaProjectLite javaProjectLite = new JavaProjectLite(javaProject, javaProjectInitialized);
-			synchronized (lock) {
-				javaProjectLiteCache.put(project, javaProjectLite);
-			}
-			return javaProjectLite;
-		}
-		return null;
-	}
-
-	static boolean isInitialized(IJavaProject javaProject) {
-		if (javaProject.isOpen()) {
-			JavaModelManager.PerProjectInfo projectInfo = JavaModelManager.getJavaModelManager().getPerProjectInfo(javaProject.getProject(), false);
-			if (projectInfo != null) {
-				if (projectInfo.getResolvedClasspath() != null) {
-					return true;
-				}
-			}
-		}
-		return false;
-	}
-
-	public static final IJavaProjectLite create(IProject project) {
-		if (project == null) {
-			throw new NullPointerException();
-		}
-		return getInstance().createImpl(project);
-	}
-
-	public static final IJavaProjectLite create(IJavaProject javaProject) {
-		if (javaProject == null) {
-			throw new NullPointerException();
-		}
-		return create(javaProject.getProject());
-	}
-
-	public static ClasspathContainerInitializer getClasspathContainerInitializer(String containerID) {
-		return JavaCore.getClasspathContainerInitializer(containerID);
-	}
-
-	public static IClasspathEntry newProjectEntry(IPath path) {
-		return JavaCore.newProjectEntry(path);
-	}
-
-	public static IClasspathEntry newProjectEntry(IPath path, boolean isExported) {
-		return JavaCore.newProjectEntry(path, isExported);
-	}
-
-	public static IClasspathEntry newProjectEntry(IPath path, IAccessRule[] accessRules, boolean combineAccessRules, IClasspathAttribute[] extraAttributes, boolean isExported) {
-		return JavaCore.newProjectEntry(path, accessRules, combineAccessRules, extraAttributes, isExported);
-	}
-
-	public static IClasspathEntry newLibraryEntry(IPath path, IPath sourceAttachmentPath, IPath sourceAttachmentRootPath) {
-		return JavaCore.newLibraryEntry(path, sourceAttachmentPath, sourceAttachmentRootPath);
-	}
-
-	public static IClasspathEntry newLibraryEntry(IPath path, IPath sourceAttachmentPath, IPath sourceAttachmentRootPath, boolean isExported) {
-		return JavaCore.newLibraryEntry(path, sourceAttachmentPath, sourceAttachmentRootPath, isExported);
-	}
-
-	public static IClasspathEntry newLibraryEntry(IPath path, IPath sourceAttachmentPath, IPath sourceAttachmentRootPath, IAccessRule[] accessRules, IClasspathAttribute[] extraAttributes, boolean isExported) {
-		return JavaCore.newLibraryEntry(path, sourceAttachmentPath, sourceAttachmentRootPath, accessRules, extraAttributes, isExported);
-	}
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/javalite/JavaLiteUtilities.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/javalite/JavaLiteUtilities.java
deleted file mode 100644
index f61edbc..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/javalite/JavaLiteUtilities.java
+++ /dev/null
@@ -1,192 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.common.jdt.internal.javalite;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jst.common.frameworks.CommonFrameworksPlugin;
-import org.eclipse.wst.common.componentcore.ComponentCore;
-import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
-import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
-
-public final class JavaLiteUtilities {
-
-	/**
-	 * Returns the Java source (i.e. where the .java files are) IContainers for
-	 * the specified IJavaProjectLite
-	 * 
-	 * @param javaProjectLite
-	 * @return
-	 */
-	public final static List<IContainer> getJavaSourceContainers(final IJavaProjectLite javaProjectLite) {
-		IClasspathEntry[] entries = javaProjectLite.readRawClasspath();
-		List<IContainer> containers = new ArrayList<IContainer>();
-		for (IClasspathEntry entry : entries) {
-			if (entry.getEntryKind() == IClasspathEntry.CPE_SOURCE && entry.getPath().segmentCount() > 0) {
-				IContainer container = null;
-				if( entry.getPath().segmentCount() == 1 )
-					container = ResourcesPlugin.getWorkspace().getRoot().getProject(entry.getPath().segment(0));
-				else
-					container = ResourcesPlugin.getWorkspace().getRoot().getFolder(entry.getPath());
-				if( !containers.contains(container))
-					containers.add(container);
-			}
-		}
-		return containers;
-	}
-
-	/**
-	 * Returns the Java source (i.e. where the compiled .class files are) IContainers for
-	 * the specified IJavaProjectLite
-	 * 
-	 * @param javaProjectLite
-	 * @return
-	 */
-	public final static List<IContainer> getJavaOutputContainers(final IJavaProjectLite javaProjectLite) {
-		List<IContainer> containers = new ArrayList<IContainer>();
-		IContainer defaultOutputContainer = getDefaultJavaOutputContainer(javaProjectLite);
-		containers.add(defaultOutputContainer);
-		IClasspathEntry[] entries = javaProjectLite.readRawClasspath();
-		for (IClasspathEntry entry : entries) {
-			if (entry.getEntryKind() == IClasspathEntry.CPE_SOURCE) {
-				IContainer outputContainer = getJavaOutputContainer(javaProjectLite, entry);
-				if (!containers.contains(outputContainer)) {
-					containers.add(outputContainer);
-				}
-			}
-		}
-		return containers;
-	}
-
-	private static enum JavaContainerType {
-		SOURCE, OUTPUT
-	}
-
-	/**
-	 * Returns all Java output (i.e. where the compiled .class files are)
-	 * IContainers whose source is explicitly mapped by the specified component,
-	 * or if the output container itself is explicitly mapped.
-	 * 
-	 * @param virtualComponent
-	 * @return
-	 */
-	public static List<IContainer> getJavaOutputContainers(IVirtualComponent virtualComponent) {
-		return getJavaContainers(virtualComponent, JavaContainerType.OUTPUT);
-	}
-
-	/**
-	 * Returns all Java source (i.e. where the .java files are) IContainers
-	 * explicitly mapped by the specified component.
-	 * 
-	 * @param virtualComponent
-	 * @return
-	 */
-	public static List<IContainer> getJavaSourceContainers(IVirtualComponent virtualComponent) {
-		return getJavaContainers(virtualComponent, JavaContainerType.SOURCE);
-	}
-
-	private static List<IContainer> getJavaContainers(IVirtualComponent virtualComponent, JavaContainerType javaContainerType) {
-		if (virtualComponent.isBinary()) {
-			return Collections.emptyList();
-		}
-		IProject project = virtualComponent.getProject();
-		try {
-			if (!project.hasNature(JavaCoreLite.NATURE_ID)) {
-				return Collections.emptyList();
-			}
-		} catch (CoreException e) {
-			CommonFrameworksPlugin.logError(e);
-			return Collections.emptyList();
-		}
-
-		IJavaProjectLite javaProjectLite = JavaCoreLite.create(project);
-		List<IContainer> containers = new ArrayList<IContainer>();
-		if (javaContainerType == JavaContainerType.OUTPUT) {
-			IContainer defaultOutputContainer = getDefaultJavaOutputContainer(javaProjectLite);
-			IVirtualResource[] virtualResources = ComponentCore.createResources(defaultOutputContainer);
-			for (IVirtualResource virtualResource : virtualResources) {
-				if (virtualResource.getComponent().equals(virtualComponent)) {
-					containers.add(defaultOutputContainer);
-					break;
-				}
-			}
-		}
-		IClasspathEntry[] entries = javaProjectLite.readRawClasspath();
-		for (IClasspathEntry entry : entries) {
-			if (entry.getEntryKind() == IClasspathEntry.CPE_SOURCE) {
-				IPath sourcePath = entry.getPath().removeFirstSegments(1); // remove the project from the path
-				IContainer sourceContainer = sourcePath.segmentCount() == 0 ? project : project.getFolder(sourcePath);
-				if (sourceContainer != null) {
-					IVirtualResource[] virtualResources = ComponentCore.createResources(sourceContainer);
-					for (IVirtualResource virtualResource : virtualResources) {
-						if (virtualResource.getComponent().equals(virtualComponent)) {
-							switch (javaContainerType) {
-							case SOURCE:
-								if (!containers.contains(sourceContainer)) {
-									containers.add(sourceContainer);
-								}
-								break;
-							case OUTPUT:
-								IContainer outputContainer = getJavaOutputContainer(javaProjectLite, entry);
-								if (!containers.contains(outputContainer)) {
-									containers.add(outputContainer);
-								}
-								break;
-							}
-						}
-					}
-				}
-			}
-		}
-		return containers;
-	}
-
-	/**
-	 * Returns the default Java output IContainer (i.e. where the compiled
-	 * .class files go)
-	 * 
-	 * @param javaProjectLite
-	 * @return
-	 */
-	public static IContainer getDefaultJavaOutputContainer(IJavaProjectLite javaProjectLite) {
-		IProject project = javaProjectLite.getProject();
-		IPath defaultOutputPath = javaProjectLite.readOutputLocation();
-		if (defaultOutputPath.segmentCount() == 1) {
-			return project;
-		}
-		return project.getFolder(defaultOutputPath.removeFirstSegments(1));
-	}
-
-	/**
-	 * Returns the Java output (i.e. where the compiled .class files go)
-	 * IContainer for the specified IClasspathEntry
-	 * 
-	 * @param javaProjectLite
-	 * @param entry
-	 * @return
-	 */
-	public static IContainer getJavaOutputContainer(IJavaProjectLite javaProjectLite, IClasspathEntry entry) {
-		IProject project = javaProjectLite.getProject();
-		IPath outputPath = entry.getOutputLocation();
-		if (outputPath != null) {
-			return project.getFolder(outputPath.removeFirstSegments(1));
-		}
-		return getDefaultJavaOutputContainer(javaProjectLite);
-	}
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/javalite/JavaProjectLite.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/javalite/JavaProjectLite.java
deleted file mode 100644
index f8141e5..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/jdt/internal/javalite/JavaProjectLite.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 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.jst.common.jdt.internal.javalite;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jst.common.frameworks.CommonFrameworksPlugin;
-
-/**
- * @see IJavaProjectLite
- */
-public final class JavaProjectLite implements IJavaProjectLite {
-	private final IJavaProject _javaProject;
-
-	private Object lock = new Object();
-	private boolean _javaProjectInitialized = false;
-	private boolean _rawClasspathRead = false;
-	private IClasspathEntry[] _rawClasspath;
-	private boolean _rawOutputLocationRead = false;
-	private IPath _rawOutputLocation;
-	private long _dotClasspathModificationStamp = IFile.NULL_STAMP;
-
-	JavaProjectLite(IJavaProject javaProject, boolean javaProjectInitialized) {
-		this._javaProject = javaProject;
-		this._javaProjectInitialized = javaProjectInitialized;
-	}
-
-	void markJavaProjectInitialized() {
-		synchronized (lock) {
-			if (!_javaProjectInitialized) {
-				_javaProjectInitialized = true;
-				flushClasspath();
-			}
-		}
-	}
-
-	private boolean isJavaProjectInitialized() {
-		synchronized (lock) {
-			return _javaProjectInitialized;
-		}
-	}
-
-	void flushClasspath() {
-		synchronized (lock) {
-			_rawClasspathRead = false;
-			_rawClasspath = null;
-			_rawOutputLocationRead = false;
-			_rawOutputLocation = null;
-			_dotClasspathModificationStamp = IFile.NULL_STAMP;
-		}
-	}
-
-	private void verifyDotClasspathModificationStamp() {
-		long modificationStamp = IFile.NULL_STAMP;
-		synchronized (lock) {
-			modificationStamp = _dotClasspathModificationStamp;
-		}
-		if (modificationStamp == IFile.NULL_STAMP) {
-			flushClasspath();
-			return;
-		}
-		IFile dotClasspath = _javaProject.getProject().getFile(".classpath"); //$NON-NLS-1$
-		if (!dotClasspath.exists()) {
-			flushClasspath();
-			return;
-		}
-		if (modificationStamp != dotClasspath.getModificationStamp()) {
-			flushClasspath();
-			return;
-		}
-	}
-
-	private void updateDotClasspathModificationStamp() {
-		IFile dotClasspath = _javaProject.getProject().getFile(".classpath"); //$NON-NLS-1$
-		long modificationStamp = dotClasspath.getModificationStamp();
-		synchronized (lock) {
-			_dotClasspathModificationStamp = modificationStamp;
-		}
-	}
-
-	public final IClasspathEntry[] readRawClasspath() {
-		if (!isJavaProjectInitialized()) {
-			if (JavaCoreLite.isInitialized(_javaProject)) {
-				markJavaProjectInitialized();
-			}
-		}
-
-		if (isJavaProjectInitialized()) {
-			try {
-				return _javaProject.getRawClasspath();
-			} catch (JavaModelException e) {
-				CommonFrameworksPlugin.log(e);
-			}
-		}
-
-		verifyDotClasspathModificationStamp();
-
-		boolean dataRead = false;
-		synchronized (lock) {
-			dataRead = _rawClasspathRead;
-		}
-		if (!dataRead) {
-			updateDotClasspathModificationStamp();
-			IClasspathEntry[] rawClasspath = _javaProject.readRawClasspath();
-			synchronized (lock) {
-				_rawClasspathRead = true;
-				_rawClasspath = rawClasspath;
-			}
-		}
-		return _rawClasspath;
-	}
-
-	public final IPath readOutputLocation() {
-		if (!isJavaProjectInitialized()) {
-			if (JavaCoreLite.isInitialized(_javaProject)) {
-				markJavaProjectInitialized();
-			}
-		}
-
-		if (isJavaProjectInitialized()) {
-			try {
-				return _javaProject.getOutputLocation();
-			} catch (JavaModelException e) {
-				CommonFrameworksPlugin.log(e);
-			}
-		}
-
-		verifyDotClasspathModificationStamp();
-
-		boolean dataRead = false;
-		synchronized (lock) {
-			dataRead = _rawOutputLocationRead;
-		}
-		if (!dataRead) {
-			updateDotClasspathModificationStamp();
-			IPath rawOutputLocation = _javaProject.readOutputLocation();
-			if (rawOutputLocation == null) {
-				// borrowed from JavaProject.getDefaultOutputLocation()
-				rawOutputLocation = _javaProject.getProject().getFullPath().append("bin"); //$NON-NLS-1$
-			}
-			synchronized (lock) {
-				_rawOutputLocationRead = true;
-				_rawOutputLocation = rawOutputLocation;
-			}
-		}
-		return _rawOutputLocation;
-	}
-
-	/**
-	 * @see IJavaProjectLite#getProject()
-	 */
-	public final IProject getProject() {
-		return _javaProject.getProject();
-	}
-
-	public final boolean exists() {
-		return _javaProject.exists();
-	}
-
-	/**
-	 * @see IJavaProjectLite#isOpen()
-	 */
-	public final boolean isOpen() {
-		return _javaProject.isOpen();
-	}
-
-	/**
-	 * @see IJavaProjectLite#hasBuildState()
-	 */
-	public final boolean hasBuildState() {
-		return _javaProject.hasBuildState();
-	}
-
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/IJavaFacetInstallDataModelProperties.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/IJavaFacetInstallDataModelProperties.java
deleted file mode 100644
index 10daa48..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/IJavaFacetInstallDataModelProperties.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 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.jst.common.project.facet;
-
-import org.eclipse.wst.common.frameworks.datamodel.IDataModelProperties;
-
-public interface IJavaFacetInstallDataModelProperties extends IDataModelProperties {
-
-	public static final String SOURCE_FOLDER_NAME = "IJavaFacetInstallDataModelProperties.SOURCE_FOLDER_NAME"; //$NON-NLS-1$
-    public static final String DEFAULT_OUTPUT_FOLDER_NAME = "IJavaFacetInstallDataModelProperties.DEFAULT_OUTPUT_FOLDER_NAME"; //$NON-NLS-1$
-    public static final String JAVA_FACET_INSTALL_CONFIG = "IJavaFacetInstallDataModelProperties.JAVA_FACET_INSTALL_CONFIG"; //$NON-NLS-1$
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/JavaFacetInstallDataModelProvider.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/JavaFacetInstallDataModelProvider.java
deleted file mode 100644
index 31791b2..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/JavaFacetInstallDataModelProvider.java
+++ /dev/null
@@ -1,139 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 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.jst.common.project.facet;
-
-import java.util.Collections;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jst.common.project.facet.core.JavaFacet;
-import org.eclipse.jst.common.project.facet.core.JavaFacetInstallConfig;
-import org.eclipse.jst.common.project.facet.core.JavaFacetInstallConfig.ChangeEvent;
-import org.eclipse.wst.common.componentcore.datamodel.FacetInstallDataModelProvider;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-import org.eclipse.wst.common.project.facet.core.util.IEventListener;
-
-public class JavaFacetInstallDataModelProvider extends FacetInstallDataModelProvider implements IJavaFacetInstallDataModelProperties {
-
-    private final JavaFacetInstallConfig installConfig;
-    
-	public JavaFacetInstallDataModelProvider() 
-	{
-		this( new JavaFacetInstallConfig() );
-	}
-	
-	public JavaFacetInstallDataModelProvider( final JavaFacetInstallConfig installConfig )
-	{
-	    this.installConfig = installConfig;
-	}
-
-	@Override
-	public Set getPropertyNames() 
-	{
-		Set propertyNames = super.getPropertyNames();
-		propertyNames.add(JAVA_FACET_INSTALL_CONFIG);
-		propertyNames.add(SOURCE_FOLDER_NAME);
-        propertyNames.add(DEFAULT_OUTPUT_FOLDER_NAME);
-		return propertyNames;
-	}
-
-    @Override
-    public void init()
-    {
-        super.init();
-        
-        final IDataModel dm = getDataModel();
-        
-        dm.setProperty( FACET_ID, JavaFacet.ID );
-        dm.setProperty( JAVA_FACET_INSTALL_CONFIG, this.installConfig );
-        
-        String sourceFolderName = null;
-        
-        if( ! this.installConfig.getSourceFolders().isEmpty() )
-        {
-            sourceFolderName = this.installConfig.getSourceFolders().get( 0 ).toPortableString();
-        }
-        
-        dm.setProperty( SOURCE_FOLDER_NAME, sourceFolderName );
-        
-        String defaultOutputFolderName = null;
-        
-        if( this.installConfig.getDefaultOutputFolder() != null )
-        {
-            defaultOutputFolderName = this.installConfig.getDefaultOutputFolder().toPortableString();
-        }
-        
-        dm.setProperty( DEFAULT_OUTPUT_FOLDER_NAME, defaultOutputFolderName );
-        
-        final IEventListener<JavaFacetInstallConfig.ChangeEvent> listener
-            = new IEventListener<JavaFacetInstallConfig.ChangeEvent>()
-        {
-            public void handleEvent( final ChangeEvent event )
-            {
-                if( event.getType() == JavaFacetInstallConfig.ChangeEvent.Type.SOURCE_FOLDERS_CHANGED )
-                {
-                    String val = null;
-                    
-                    if( installConfig.getSourceFolders().size() > 0 )
-                    {
-                        val = installConfig.getSourceFolders().get( 0 ).toPortableString();
-                    }
-                    
-                    dm.setProperty( SOURCE_FOLDER_NAME, val );
-                }
-                else if( event.getType() == JavaFacetInstallConfig.ChangeEvent.Type.DEFAULT_OUTPUT_FOLDER_CHANGED )
-                {
-                    final String val = installConfig.getDefaultOutputFolder().toPortableString();
-                    dm.setProperty( DEFAULT_OUTPUT_FOLDER_NAME, val );
-                }
-            }
-        };
-        
-        this.installConfig.addListener( listener );
-    }
-	
-	@Override
-	public boolean propertySet( final String propertyName, 
-	                            final Object propertyValue )
-    {
-        if( propertyName.equals( SOURCE_FOLDER_NAME ) )
-        {
-            final List<IPath> sourceFolders;
-            
-            if( propertyValue == null )
-            {
-                sourceFolders = Collections.emptyList();
-            }
-            else
-            {
-                sourceFolders = Collections.<IPath>singletonList( new Path( (String) propertyValue ) );
-            }
-            
-            this.installConfig.setSourceFolders( sourceFolders );
-            
-            return true;
-        }
-        else if( propertyName.equals( DEFAULT_OUTPUT_FOLDER_NAME ) )
-        {
-            this.installConfig.setDefaultOutputFolder( new Path( (String) propertyValue ) );
-            return true;
-        }
-        else if( propertyName.equals( JAVA_FACET_INSTALL_CONFIG ) )
-        {
-            return false;
-        }
-        
-        return super.propertySet( propertyName, propertyValue );
-    }
-
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/JavaFacetUtils.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/JavaFacetUtils.java
deleted file mode 100644
index e2312ab..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/JavaFacetUtils.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005, 2006 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    Konstantin Komissarchik - initial API and implementation
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jst.common.project.facet.core.JavaFacet;
-import org.eclipse.jst.common.project.facet.core.internal.JavaFacetUtil;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-
-/**
- * This class is deprecated. JavaFacet class should be used instead.
- * 
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-@Deprecated
-
-public final class JavaFacetUtils
-{
-    public static final IProjectFacet JAVA_FACET = JavaFacet.FACET;
-    public static final IProjectFacetVersion JAVA_13 = JavaFacet.VERSION_1_3;
-    public static final IProjectFacetVersion JAVA_14 = JavaFacet.VERSION_1_4;
-    public static final IProjectFacetVersion JAVA_50 = JavaFacet.VERSION_1_5;
-    public static final IProjectFacetVersion JAVA_60 = JavaFacet.VERSION_1_6;
-    
-    public static String getCompilerLevel()
-    {
-        return JavaFacetUtil.getCompilerLevel();
-    }
-
-    public static String getCompilerLevel( final IProject project )
-    {
-        return JavaFacetUtil.getCompilerLevel( project );
-    }
-    
-    public static void setCompilerLevel( final IProject project,
-                                         final IProjectFacetVersion fv )
-    
-        throws CoreException
-        
-    {
-        JavaFacetUtil.setCompilerLevel( project, fv );
-    }
-
-    public static void setCompilerLevel( final IProject project,
-                                         final String level )
-    
-        throws CoreException
-        
-    {
-        JavaFacetUtil.setCompilerLevel( project, level );
-    }
-    
-    public static void scheduleFullBuild( final IProject project )
-    {
-        JavaFacetUtil.scheduleFullBuild( project );
-    }
-    
-    public static void resetClasspath( final IProject project,
-                                       final IProjectFacetVersion oldver,
-                                       final IProjectFacetVersion newver )
-    
-        throws CoreException
-        
-    {
-        JavaFacetUtil.resetClasspath( project, oldver, newver );
-    }
-    
-    public static IProjectFacetVersion compilerLevelToFacet( final String ver )
-    {
-        return JavaFacet.FACET.getVersion( ver );
-    }
-
-    public static String facetToCompilerLevel( final IProjectFacetVersion fv )
-    {
-        return fv.getVersionString();
-    }
-    
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/JavaProjectFacetCreationDataModelProvider.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/JavaProjectFacetCreationDataModelProvider.java
deleted file mode 100644
index 88ad597..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/JavaProjectFacetCreationDataModelProvider.java
+++ /dev/null
@@ -1,34 +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
- *******************************************************************************/
-package org.eclipse.jst.common.project.facet;
-
-import java.util.ArrayList;
-import java.util.Collection;
-
-import org.eclipse.jst.common.project.facet.core.JavaFacet;
-import org.eclipse.wst.common.componentcore.datamodel.FacetProjectCreationDataModelProvider;
-
-public class JavaProjectFacetCreationDataModelProvider extends FacetProjectCreationDataModelProvider {
-
-	public JavaProjectFacetCreationDataModelProvider() {
-		super();
-	}
-
-	@Override
-	public void init() {
-		super.init();
-
-        Collection requiredFacets = new ArrayList();
-        requiredFacets.add(JavaFacet.FACET);
-        setProperty(REQUIRED_FACETS_COLLECTION, requiredFacets);
-	}
-
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/WtpUtils.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/WtpUtils.java
deleted file mode 100644
index b82d7d2..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/WtpUtils.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    Konstantin Komissarchik - initial API and implementation
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jem.util.emf.workbench.ProjectUtilities;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class WtpUtils 
-{
-    private WtpUtils() {}
-    
-    private static final String WTP_NATURE 
-        = "org.eclipse.wst.common.modulecore.ModuleCoreNature"; //$NON-NLS-1$
-    
-    private static final String JEM_NATURE
-        = "org.eclipse.jem.workbench.JavaEMFNature"; //$NON-NLS-1$
-    
-    private static final String[] NATURES = {WTP_NATURE, JEM_NATURE};
-    
-    public static void addNatures( final IProject project )
-    
-        throws CoreException
-        
-    {
-        for (int i = 0; i < NATURES.length; i++) {
-			if (!project.hasNature(NATURES[i])) {
-				ProjectUtilities.addNatureToProject(project, NATURES[i]);
-			}
-		}
-    }
-
-    public static void addNaturestoEAR( final IProject project )
-    
-    throws CoreException
-    
-	{
-	    final IProjectDescription desc = project.getDescription();
-	    final String[] current = desc.getNatureIds();
-	    final String[] replacement = new String[ current.length + 1 ];
-	    System.arraycopy( current, 0, replacement, 0, current.length );
-	    replacement[ current.length ] = WTP_NATURE;
-	    desc.setNatureIds( replacement );
-	    project.setDescription( desc, null );
-	}  
-    
-    public static void removeNatures( final IProject project )
-    
-    throws CoreException
-    
-	{
-    	ProjectUtilities.removeNatureFromProject( project, WTP_NATURE );
-    	ProjectUtilities.removeNatureFromProject( project, JEM_NATURE );
-	}    
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/internal/DataModelToJavaFacetInstallConfigAdapter.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/internal/DataModelToJavaFacetInstallConfigAdapter.java
deleted file mode 100644
index aaee1bd..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/internal/DataModelToJavaFacetInstallConfigAdapter.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.internal;
-
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.jst.common.project.facet.IJavaFacetInstallDataModelProperties;
-import org.eclipse.jst.common.project.facet.core.JavaFacetInstallConfig;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class DataModelToJavaFacetInstallConfigAdapter
-
-    implements IAdapterFactory
-    
-{
-    private static final Class[] ADAPTER_TYPES = { JavaFacetInstallConfig.class };
-    
-    public Object getAdapter( final Object adaptable, 
-                              final Class adapterType )
-    {
-        if( adapterType == JavaFacetInstallConfig.class )
-        {
-            final IDataModel dm = (IDataModel) adaptable;
-            
-            return dm.getProperty( IJavaFacetInstallDataModelProperties.JAVA_FACET_INSTALL_CONFIG );
-        }
-
-        return null;
-    }
-
-    public Class[] getAdapterList()
-    {
-        return ADAPTER_TYPES;
-    }
-
-}
diff --git a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/internal/JavaFacetInstallConfigToDataModelAdapter.java b/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/internal/JavaFacetInstallConfigToDataModelAdapter.java
deleted file mode 100644
index f42c4c5..0000000
--- a/plugins/org.eclipse.jst.common.frameworks/src/org/eclipse/jst/common/project/facet/internal/JavaFacetInstallConfigToDataModelAdapter.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/******************************************************************************
- * Copyright (c) 2008 BEA Systems, Inc.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    Konstantin Komissarchik
- ******************************************************************************/
-
-package org.eclipse.jst.common.project.facet.internal;
-
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.jst.common.project.facet.JavaFacetInstallDataModelProvider;
-import org.eclipse.jst.common.project.facet.core.JavaFacetInstallConfig;
-import org.eclipse.wst.common.frameworks.datamodel.DataModelFactory;
-import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
-
-/**
- * @author <a href="mailto:kosta@bea.com">Konstantin Komissarchik</a>
- */
-
-public final class JavaFacetInstallConfigToDataModelAdapter
-
-    implements IAdapterFactory
-    
-{
-    private static final Class[] ADAPTER_TYPES = { IDataModel.class };
-    
-    public Object getAdapter( final Object adaptable, 
-                              final Class adapterType )
-    {
-        if( adapterType == IDataModel.class )
-        {
-            final JavaFacetInstallDataModelProvider provider 
-                = new JavaFacetInstallDataModelProvider( (JavaFacetInstallConfig) adaptable );
-            
-            return DataModelFactory.createDataModel( provider );
-        }
-
-        return null;
-    }
-
-    public Class[] getAdapterList()
-    {
-        return ADAPTER_TYPES;
-    }
-
-}