This commit was manufactured by cvs2svn to create tag 'v200604160100'.
diff --git a/plugins/org.eclipse.jst.server.core/.classpath b/plugins/org.eclipse.jst.server.core/.classpath
deleted file mode 100644
index 8eae546..0000000
--- a/plugins/org.eclipse.jst.server.core/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="sjavacore/"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.jst.server.core/.cvsignore b/plugins/org.eclipse.jst.server.core/.cvsignore
deleted file mode 100644
index 1697fa1..0000000
--- a/plugins/org.eclipse.jst.server.core/.cvsignore
+++ /dev/null
@@ -1,7 +0,0 @@
-bin
-build.xml
-org.eclipse.jst.server.core_3.0.0.jar
-sjavacore.jar
-temp.folder
-@dot
-src.zip
diff --git a/plugins/org.eclipse.jst.server.core/.options b/plugins/org.eclipse.jst.server.core/.options
deleted file mode 100644
index 7da2b54..0000000
--- a/plugins/org.eclipse.jst.server.core/.options
+++ /dev/null
@@ -1,4 +0,0 @@
-# Debugging options for the org.eclipse.jst.server.core plugin
-
-# Turn on general debugging
-org.eclipse.jst.server.core/debug=true
diff --git a/plugins/org.eclipse.jst.server.core/.project b/plugins/org.eclipse.jst.server.core/.project
deleted file mode 100644
index 7d5e17d..0000000
--- a/plugins/org.eclipse.jst.server.core/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jst.server.core</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.jst.server.core/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.server.core/META-INF/MANIFEST.MF
deleted file mode 100644
index 4ea4481..0000000
--- a/plugins/org.eclipse.jst.server.core/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,21 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.jst.server.core; singleton:=true
-Bundle-Version: 1.0.2.qualifier
-Bundle-Activator: org.eclipse.jst.server.core.internal.JavaServerPlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.jst.server.core,
- org.eclipse.jst.server.core.internal;x-friends:="org.eclipse.jst.server.ui",
- org.eclipse.jst.server.core.internal.cactus;x-friends:="org.eclipse.jst.server.ui"
-Require-Bundle: org.eclipse.core.runtime,
- org.eclipse.core.resources,
- org.eclipse.core.expressions,
- org.eclipse.debug.core,
- org.eclipse.jdt.core,
- org.eclipse.jdt.launching,
- org.eclipse.wst.server.core,
- org.eclipse.wst.common.project.facet.core,
- org.eclipse.jst.common.project.facet.core
-Eclipse-AutoStart: true
diff --git a/plugins/org.eclipse.jst.server.core/about.html b/plugins/org.eclipse.jst.server.core/about.html
deleted file mode 100644
index 6f6b96c..0000000
--- a/plugins/org.eclipse.jst.server.core/about.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>February 24, 2005</p>	
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content.  Check the Redistributor's license that was provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/build.properties b/plugins/org.eclipse.jst.server.core/build.properties
deleted file mode 100644
index 0ba4473..0000000
--- a/plugins/org.eclipse.jst.server.core/build.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = plugin.xml,\
-               plugin.properties,\
-               .,\
-               META-INF/,\
-               about.html
-bin.excludes = bin/**,\
-               @dot/**,\
-               temp.folder/**
-src.includes = schema/,\
-               component.xml
-source.. = sjavacore/
diff --git a/plugins/org.eclipse.jst.server.core/component.xml b/plugins/org.eclipse.jst.server.core/component.xml
deleted file mode 100644
index e458e3d..0000000
--- a/plugins/org.eclipse.jst.server.core/component.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<component xmlns="http://eclipse.org/wtp/releng/tools/component-model" name="org.eclipse.jst.server">
-<component-depends unrestricted="true"/>
-  <plugin id="org.eclipse.jst.server.core" fragment="false"/>
-<!--  <package name="org.eclipse.jst.server.core">
-    <type name="IConnectorModule"/>
-    <type name="IEJBModule"/>
-    <type name="IJ2EEModule"/>
-    <type name="Servlet"/>
-    <type name="IWebModule"/>
-    <type name="IEnterpriseApplication"/>
-    <type name="JndiObject"/>
-    <type name="ClasspathRuntimeTargetHandler"/>
-    <type name="IApplicationClientModule"/>
-    <type name="EJBBean"/>
-    <type name="JndiLaunchable"/>
-    <type name="PublishUtil"/>
-    <type name="IJavaRuntime"/>
-  </package>-->
-
-  <plugin id="org.eclipse.jst.server.ui" fragment="false"/>
-
-  <plugin id="org.eclipse.jst.server.generic.core" fragment="false"/>
-
-  <plugin id="org.eclipse.jst.server.generic.serverdefinitions" fragment="false"/>
-
-  <plugin id="org.eclipse.jst.server.generic.ui" fragment="false"/>
-
-  <plugin id="org.eclipse.jst.server.tomcat.core" fragment="false"/>
-
-  <plugin id="org.eclipse.jst.server.tomcat.ui" fragment="false"/>
-
-  <plugin id="org.eclipse.jst.server.websphere.core" fragment="false"/>
-</component>
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/plugin.properties b/plugins/org.eclipse.jst.server.core/plugin.properties
deleted file mode 100644
index 21465ad..0000000
--- a/plugins/org.eclipse.jst.server.core/plugin.properties
+++ /dev/null
@@ -1,28 +0,0 @@
-###############################################################################
-# Copyright (c) 2004, 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
-###############################################################################
-pluginName=Java Server Support
-providerName=Eclipse.org
-
-extensionPointRuntimeClasspathProviders=Runtime Classpath Providers
-extensionPointRuntimeFacetMapping=Runtime Facet Mappings
-
-runtimeTypeName=J2EE Runtime Library
-runtimeTypeDescription=A runtime that represents a set of J2EE runtime libraries.
-
-moduleTypeJ2EEWebName=J2EE Web module
-moduleTypeJ2EEEJBName=J2EE EJB module
-moduleTypeJ2EERARName=J2EE Connector module
-moduleTypeJ2EEClientName=J2EE Application Client module
-moduleTypeJ2EEEARName=J2EE Enterprise application
-moduleTypeJ2EEUtilityName=J2EE utility jar
-
-launchableJndi=JNDI Object
-launchableJndiDescription=Silently start an object locatable by JNDI.
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/plugin.xml b/plugins/org.eclipse.jst.server.core/plugin.xml
deleted file mode 100644
index a2ed69c..0000000
--- a/plugins/org.eclipse.jst.server.core/plugin.xml
+++ /dev/null
@@ -1,185 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<plugin>
-  <extension-point id="runtimeClasspathProviders" name="%extensionPointRuntimeClasspathProviders" schema="schema/runtimeClasspathProviders.exsd"/>
-  <extension-point id="runtimeFacetMappings" name="%extensionPointRuntimeFacetMappings" schema="schema/runtimeFacetMappings.exsd"/>
-
-  <extension point="org.eclipse.jdt.core.classpathContainerInitializer">
-    <classpathContainerInitializer
-      id="org.eclipse.jst.server.core.container"
-      class="org.eclipse.jst.server.core.internal.RuntimeClasspathContainerInitializer"/>
-  </extension>
-
-  <extension point="org.eclipse.wst.server.core.moduleTypes">
-    <moduleType
-       id="jst.web"
-       name="%moduleTypeJ2EEWebName"/>
-    <moduleType
-       id="jst.ejb"
-       name="%moduleTypeJ2EEEJBName"/>
-    <moduleType
-       id="jst.appclient"
-       name="%moduleTypeJ2EEClientName"/>
-    <moduleType
-       id="jst.connector"
-       name="%moduleTypeJ2EERARName"/>
-    <moduleType
-       id="jst.ear"
-       name="%moduleTypeJ2EEEARName"/>
-    <moduleType
-       id="jst.utility"
-       name="%moduleTypeJ2EEUtilityName"/>
-  </extension>
-
-  <extension point="org.eclipse.wst.server.core.runtimeTypes">
-    <runtimeType
-       id="org.eclipse.jst.server.core.runtimeType"
-       name="%runtimeTypeName"
-       description="%runtimeTypeDescription"
-       class="org.eclipse.jst.server.core.internal.GenericRuntime">
-       <moduleType
-         types="jst.*"
-         versions="*"/>
-    </runtimeType>
-  </extension>
-
-  <extension point="org.eclipse.jst.server.core.runtimeClasspathProviders">
-    <runtimeClasspathProvider
-      id="org.eclipse.jst.server.core.runtimeTarget"
-      runtimeTypeIds="org.eclipse.jst.server.core.runtimeType"
-      class="org.eclipse.jst.server.core.internal.GenericRuntimeClasspathProvider"/>
-  </extension>
-
-  <extension point="org.eclipse.core.expressions.propertyTesters">
-    <propertyTester
-      namespace="org.eclipse.jst.cactus.expressions"
-      type="org.eclipse.core.runtime.IAdaptable"
-      class="org.eclipse.jst.server.core.internal.cactus.ServletTestCasePropertyTester"
-      properties="isServletTestCase"
-      id="org.eclipse.jst.server.cactus.expression"/>
-  </extension>
-
-  <extension point="org.eclipse.wst.server.core.moduleArtifactAdapters">
-    <moduleArtifactAdapter
-      id="org.eclipse.jst.server.cactus.moduleArtifactAdapter"
-      class="org.eclipse.jst.server.core.internal.cactus.CactusModuleArtifactAdapterDelegate"
-      priority="10">
-      <enablement>
-         <or>
-            <instanceof value="org.eclipse.jdt.core.IMethod"/>
-            <instanceof value="org.eclipse.jdt.core.ICompilationUnit"/>
-            <instanceof value="org.eclipse.jdt.core.IType"/>
-            <instanceof value="org.eclipse.core.resources.IFile"/>
-         </or>
-      </enablement>
-    </moduleArtifactAdapter>
-  </extension>
-
-  <extension point="org.eclipse.wst.server.core.launchableAdapters">
-    <launchableAdapter
-       id="org.eclipse.jst.server.cactus.launchableAdapter"
-       class="org.eclipse.jst.server.core.internal.cactus.CactusLaunchableAdapterDelegate"/>
-  </extension>
-
-  <extension point="org.eclipse.wst.server.core.clients">
-    <client
-      id="org.eclipse.jst.server.jndi"
-      name="%launchableJndi"
-      description="%launchableJndiDescription"
-      priority="-100"
-      launchable="org.eclipse.jst.server.core.JndiLaunchable"
-      class="org.eclipse.jst.server.core.internal.J2EELaunchableClient"/>
-  </extension>
-
-  <extension point="org.eclipse.wst.common.project.facet.core.runtimes">
-    <runtime-component-type id="standard.jre"/>
-
-    <runtime-component-version
-       type="standard.jre"
-       version="1.3"/>
-    <runtime-component-version
-       type="standard.jre"
-       version="1.4"/>
-    <runtime-component-version
-       type="standard.jre"
-       version="5.0"/>
-
-    <adapter>
-      <runtime-component id="standard.jre"/>
-      <factory class="org.eclipse.jst.server.core.internal.StandardJreClasspathProvider$Factory"/>
-      <type class="org.eclipse.jst.common.project.facet.core.IClasspathProvider"/>
-    </adapter>
-
-    <supported>
-      <facet id="jst.java" version="1.3"/>
-      <runtime-component id="standard.jre" version="&gt;=1.3"/>
-    </supported>
-
-    <supported>
-      <facet id="jst.java" version="1.4"/>
-      <runtime-component id="standard.jre" version="&gt;=1.4"/>
-    </supported>
-
-    <supported>
-      <facet id="jst.java" version="5.0"/>
-      <runtime-component id="standard.jre" version="&gt;=5.0"/>
-    </supported>
-  </extension>
-
-  <extension point="org.eclipse.wst.common.project.facet.core.runtimeBridges">
-    <bridge
-      id="org.eclipse.jst.server.core.default"
-      class="org.eclipse.jst.server.core.internal.RuntimeBridge"/>
-  </extension>
-
-  <extension point="org.eclipse.wst.common.project.facet.core.runtimes">
-    <runtime-component-type
-       id="org.eclipse.jst.server.core.runtimeType"/>
-
-    <runtime-component-version
-       type="org.eclipse.jst.server.core.runtimeType"
-       version="1.0"/>
-
-    <adapter>
-      <runtime-component
-         id="org.eclipse.jst.server.core.runtimeType"/>
-      <factory
-         class="org.eclipse.jst.server.core.internal.RuntimeClasspathProvider$Factory"/>
-      <type
-         class="org.eclipse.jst.common.project.facet.core.IClasspathProvider"/>
-    </adapter>
-
-    <supported>
-      <runtime-component
-         id="org.eclipse.jst.server.core.runtimeType"
-         version="1.0"/>
-      <facet
-         id="jst.web"
-         version="2.2,2.3,2.4"/>
-      <facet
-         id="jst.ejb"
-         version="1.1,2.0,2.1"/>
-      <facet
-         id="jst.ear"
-         version="1.2,1.3,1.4"/>
-      <facet
-         id="jst.connector"
-         version="1.0,1.5"/>
-      <facet
-         id="jst.appclient"
-         version="1.2,1.3,1.4"/>
-      <facet
-         id="jst.utility"
-         version="1.0"/>
-    </supported>
-  </extension>
-
-  <extension point="org.eclipse.jst.server.core.runtimeFacetMappings">
-    <runtimeFacetMapping
-      runtimeTypeId="org.eclipse.jst.server.core.runtimeType"
-      runtime-component="org.eclipse.jst.server.core.runtimeType"
-      version="1.0"/>
-  </extension>
-
-</plugin>
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/schema/runtimeClasspathProviders.exsd b/plugins/org.eclipse.jst.server.core/schema/runtimeClasspathProviders.exsd
deleted file mode 100644
index 33ae4d4..0000000
--- a/plugins/org.eclipse.jst.server.core/schema/runtimeClasspathProviders.exsd
+++ /dev/null
@@ -1,137 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.jst.server.core">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.jst.server.core" id="runtimeClasspathProviders" name="Runtime Classpath Providers"/>
-      </appInfo>
-      <documentation>
-         This extension point is used to provide a new runtime classpath provider. Runtime classpath providers provide the classpath for Java server runtimes.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="runtimeClasspathProvider" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="runtimeClasspathProvider">
-      <annotation>
-         <appInfo>
-            <meta.element labelAttribute="name"/>
-         </appInfo>
-      </annotation>
-      <complexType>
-         <sequence>
-         </sequence>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a unique identifier for this extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="runtimeTypeIds" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a comma separated list of runtime type ids that this provider may support. Used for memory &amp; performance reasons
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies the fully qualified name of the Java class that extends &lt;samp&gt;RuntimeClasspathProviderDelegate&lt;/samp&gt;.
-Runtime classpath provider instances of this type will delegate to instances of this class.
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="java" basedOn="org.eclipse.jst.server.core.RuntimeClasspathProviderDelegate"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         1.0
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         The following is an example of a runtime classpath provider extension point:
-
-&lt;pre&gt;
-  &lt;extension point=&quot;org.eclipse.jst.server.core.runtimeClasspathProviders&quot;&gt;
-     &lt;runtimeClasspathProvider
-        id=&quot;com.example.runtimeClasspathProvider&quot;
-        runtimeTypeIds=&quot;com.example.runtime, com.example2.*&quot;
-        class=&quot;com.example.ExampleRuntimeClasspathProvider&quot;/&gt;
-   &lt;/extension&gt;
-&lt;/pre&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that extends &lt;b&gt;org.eclipse.jst.server.core.RuntimeClasspathProviderDelegate&lt;/b&gt; and contains a public 0-arg constructor.
-      </documentation>
-   </annotation>
-   
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;
-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 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.jst.server.core/schema/runtimeFacetMappings.exsd b/plugins/org.eclipse.jst.server.core/schema/runtimeFacetMappings.exsd
deleted file mode 100644
index 0367663..0000000
--- a/plugins/org.eclipse.jst.server.core/schema/runtimeFacetMappings.exsd
+++ /dev/null
@@ -1,141 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.jst.server.core">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.jst.server.core" id="runtimeFacetMappings" name="Runtime Facet Mappings"/>
-      </appInfo>
-      <documentation>
-         This extension point is used to map between a facet runtime component and a server runtime type.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="runtimeFacetMapping" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="runtimeFacetMapping">
-      <annotation>
-         <appInfo>
-            <meta.element labelAttribute="name"/>
-         </appInfo>
-      </annotation>
-      <complexType>
-         <sequence>
-         </sequence>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  specifies a unique identifier for this extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="runtimeTypeId" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a runtime type id
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="runtime-component" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="version" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         1.0
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         The following is an example of a runtime facet mapping extension point:
-
-&lt;pre&gt;
-  &lt;extension point=&quot;org.eclipse.jst.server.core.runtimeFacetMappings&quot;&gt;
-     &lt;runtimeFacetMapping
-        id=&quot;com.example.runtimeClasspathProvider&quot;
-        runtimeTypeId=&quot;com.example.runtime.32&quot;
-        runtime-component=&quot;com.example.ExampleRuntimeClasspathProvider&quot;
-        version=&quot;3.2&quot;/&gt;
-  &lt;/extension&gt;
-&lt;/pre&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-   
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;
-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 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/ClasspathRuntimeTargetHandler.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/ClasspathRuntimeTargetHandler.java
deleted file mode 100644
index 11a4da2..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/ClasspathRuntimeTargetHandler.java
+++ /dev/null
@@ -1,134 +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.server.core;
-
-import java.io.File;
-import java.util.List;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.*;
-import org.eclipse.jdt.core.*;
-import org.eclipse.wst.server.core.IRuntime;
-import org.eclipse.wst.server.core.model.RuntimeTargetHandlerDelegate;
-/**
- * A runtime target handler that supports changing the classpath of the
- * project by adding one or more classpath containers. Runtime providers
- * can extend this class and implement the abstract methods to provide
- * the correct build path for their runtime type.
- * 
- * @deprecated Should use org.eclipse.jst.server.core.runtimeClasspathProviders
- *    extension point instead
- */
-public abstract class ClasspathRuntimeTargetHandler extends RuntimeTargetHandlerDelegate {
-	/** (non-Javadoc)
-	 * @see RuntimeTargetHandlerDelegate#setRuntimeTarget(IProject, IRuntime, IProgressMonitor)
-	 */
-	public void setRuntimeTarget(IProject project, IRuntime runtime, IProgressMonitor monitor) throws CoreException {
-		throw new RuntimeException("Attempt to use deprecated code");
-	}
-
-	/** (non-Javadoc)
-	 * @see RuntimeTargetHandlerDelegate#removeRuntimeTarget(IProject, IRuntime, IProgressMonitor)
-	 */
-	public void removeRuntimeTarget(IProject project, IRuntime runtime, IProgressMonitor monitor) {
-		throw new RuntimeException("Attempt to use deprecated code");
-	}
-
-	/**
-	 * Add library entries to the given list for every jar file found in the
-	 * given directory. Optionally search subdirectories as well.
-	 * 
-	 * @param list a list
-	 * @param dir a directory
-	 * @param includeSubdirectories <code>true</code> to include subdirectories, and
-	 *    <code>false</code> otherwise
-	 */
-	protected static void addLibraryEntries(List list, File dir, boolean includeSubdirectories) {
-		throw new RuntimeException("Attempt to use deprecated code");
-	}
-
-	/**
-	 * Returns the classpath entries that correspond to the given runtime.
-	 * 
-	 * @param runtime a runtime
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return an array of classpath entries
-	 */
-	public IClasspathEntry[] getDelegateClasspathEntries(IRuntime runtime, IProgressMonitor monitor) {
-		throw new RuntimeException("Attempt to use deprecated code");
-	}
-
-	/**
-	 * Returns the classpath entry ids for this runtime target handler. These
-	 * ids will be added to the classpath container id to create a new fully
-	 * qualified classpath container id.
-	 * <p>
-	 * By default, there is a single classpath entry for the runtime, with no
-	 * extra id (<code>new String[1]</code>). To create multiple ids, just
-	 * return a string array containing the ids. For instance, to have two
-	 * classpath containers with ids "id1" and "id2", use
-	 * <code>new String[] { "id1", "id2" }</code>
-	 * </p>
-	 * 
-	 * @return an array of classpath entry ids
-	 */
-	public String[] getClasspathEntryIds() {
-		throw new RuntimeException("Attempt to use deprecated code");
-	}
-
-	/**
-	 * Request that the classpath container for the given runtime and id be updated
-	 * with the given classpath container entries.
-	 * 
-	 * @param runtime a runtime
-	 * @param id an id
-	 * @param entries an array of classpath entries
-	 */
-	public void requestClasspathContainerUpdate(IRuntime runtime, String id, IClasspathEntry[] entries) {
-		throw new RuntimeException("Attempt to use deprecated code");
-	}
-
-	/**
-	 * Returns the classpath container label for the given runtime and the given
-	 * classpath container id (returned from getClasspathEntryIds()). This method
-	 * must not return null.
-	 * 
-	 * @param runtime the runtime to resolve the container label for
-	 * @param id the classpath entry id
-	 * @return a classpath container label
-	 */
-	public abstract String getClasspathContainerLabel(IRuntime runtime, String id);
-
-	/**
-	 * Resolve the classpath container.
-	 * 
-	 * @param runtime a runtime
-	 * @param id a container id
-	 * @return a possibly empty array of classpath entries
-	 */
-	public IClasspathEntry[] resolveClasspathContainerImpl(IRuntime runtime, String id) {
-		throw new RuntimeException("Attempt to use deprecated code");
-	}
-
-	/**
-	 * Resolves (creates the classpath entries for) the classpath container with
-	 * the given runtime and the given classpath container id (returned from
-	 * getClasspathEntryIds()). If the classpath container cannot be resolved
-	 * (for instance, if the runtime does not exist), return null.
-	 * 
-	 * @param runtime the runtime to resolve the container for
-	 * @param id the classpath entry id
-	 * @return an array of classpath entries for the container, or null if the
-	 *   container could not be resolved
-	 */
-	public abstract IClasspathEntry[] resolveClasspathContainer(IRuntime runtime, String id);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/EJBBean.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/EJBBean.java
deleted file mode 100644
index 6694961..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/EJBBean.java
+++ /dev/null
@@ -1,83 +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.server.core;
-
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.IModuleArtifact;
-/**
- * An EJB bean.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @plannedfor 1.5
- */
-public class EJBBean implements IModuleArtifact {
-	private IModule module;
-	private String jndiName;
-	private boolean local;
-	private boolean remote;
-
-	/**
-	 * Create a new EJBBean.
-	 * 
-	 * @param module the module that the EJB is contained in
-	 * @param jndiName the JNDI name of the EJB
-	 * @param remote <code>true</code> if the EJB has a remote interface, and
-	 *    <code>false</code> otherwise
-	 * @param local <code>true</code> if the EJB has a local interface, and
-	 *    <code>false</code> otherwise
-	 */
-	public EJBBean(IModule module, String jndiName, boolean remote, boolean local) {
-		this.module = module;
-		this.jndiName = jndiName;
-		this.remote = remote;
-		this.local = local;
-	}
-
-	/**
-	 * @see IModuleArtifact#getModule()
-	 */
-	public IModule getModule() {
-		return module;
-	}
-
-	/**
-	 * Returns the JNDI name of the EJB.
-	 * 
-	 * @return the JNDI name of the EJB
-	 */
-	public String getJndiName() {
-		return jndiName;
-	}
-
-	/**
-	 * Returns whether the EJB has a remote interface.
-	 * 
-	 * @return <code>true</code> if the EJB has a remote interface, and
-	 *    <code>false</code> otherwise
-	 */
-	public boolean hasRemoteInterface() {
-		return remote;
-	}
-
-	/**
-	 * Returns whether the EJB has a local interface.
-	 * 
-	 * @return <code>true</code> if the EJB has a local interface, and
-	 *    <code>false</code> otherwise
-	 */
-	public boolean hasLocalInterface() {
-		return local;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/FacetUtil.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/FacetUtil.java
deleted file mode 100644
index 71350a7..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/FacetUtil.java
+++ /dev/null
@@ -1,76 +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.server.core;
-
-import java.util.Iterator;
-import java.util.Set;
-
-import org.eclipse.wst.common.project.facet.core.runtime.RuntimeManager;
-import org.eclipse.wst.server.core.IRuntime;
-import org.eclipse.wst.server.core.ServerCore;
-/**
- * Utility class for converting between facet runtimes and server runtimes.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- */
-public class FacetUtil {
-	/**
-	 * Returns the server runtime that corresponds to a facet runtime, or null
-	 * if none could be found.
-	 * 
-	 * @param runtime a facet runtime
-	 * @return the server runtime that corresponds to the facet runtime, or
-	 *    <code>null</code> if none could be found.
-	 */
-	public static IRuntime getRuntime(org.eclipse.wst.common.project.facet.core.runtime.IRuntime runtime) {
-		if (runtime == null)
-			throw new IllegalArgumentException();
-		
-		String id = runtime.getProperty("id");
-		
-		IRuntime[] runtimes = ServerCore.getRuntimes();
-		int size = runtimes.length;
-		for (int i = 0; i < size; i++) {
-			if (id.equals(runtimes[i].getId()))
-				return runtimes[i];
-		}
-		
-		return null;
-	}
-
-	/**
-	 * Returns the facet runtime that corresponds to a server runtime, or null
-	 * if none could be found.
-	 * 
-	 * @param runtime a server runtime
-	 * @return the facet runtime that corresponds to the server runtime, or
-	 *    <code>null</code> if none could be found.
-	 */
-	public static org.eclipse.wst.common.project.facet.core.runtime.IRuntime getRuntime(IRuntime runtime) {
-		if (runtime == null)
-			throw new IllegalArgumentException();
-		
-		String id = runtime.getId();
-		
-		Set runtimes = RuntimeManager.getRuntimes();
-		Iterator iterator = runtimes.iterator();
-		while (iterator.hasNext()) {
-			org.eclipse.wst.common.project.facet.core.runtime.IRuntime runtime2 = (org.eclipse.wst.common.project.facet.core.runtime.IRuntime) iterator.next();
-			if (id.equals(runtime2.getProperty("id")))
-				return runtime2;
-		}
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IApplicationClientModule.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IApplicationClientModule.java
deleted file mode 100644
index c4d10e1..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IApplicationClientModule.java
+++ /dev/null
@@ -1,24 +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.server.core;
-/**
- * A J2EE application client module.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @plannedfor 1.5
- */
-public interface IApplicationClientModule extends IJ2EEModule {
-	// intentionally empty
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IConnectorModule.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IConnectorModule.java
deleted file mode 100644
index 9cb3c9a..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IConnectorModule.java
+++ /dev/null
@@ -1,31 +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.server.core;
-
-import org.eclipse.core.runtime.IPath;
-/**
- * A J2EE connector module.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @plannedfor 1.5
- */
-public interface IConnectorModule extends IJ2EEModule {
-	/**
-	 * Returns the classpath as an array of absolute IPaths.
-	 * 
-	 * @return an array of classpath entries
-	 */
-	public IPath[] getClasspath();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IEJBModule.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IEJBModule.java
deleted file mode 100644
index 83dcac7..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IEJBModule.java
+++ /dev/null
@@ -1,24 +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.server.core;
-/**
- * A representation of a J2EE EJB module.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @plannedfor 1.5
- */
-public interface IEJBModule extends IJ2EEModule {
-	// intentionally empty
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IEnterpriseApplication.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IEnterpriseApplication.java
deleted file mode 100644
index d22376d..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IEnterpriseApplication.java
+++ /dev/null
@@ -1,50 +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.server.core;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.wst.server.core.IModule;
-/**
- * A representation of a J2EE enterprise application (EAR file).
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @plannedfor 1.5
- */
-public interface IEnterpriseApplication {
-	/**
-	 * Returns the modules contained within this EAR. The returned modules will
-	 * either be J2EE modules (which will be adaptable to IJ2EEModule) or
-	 * utility jars contained in the EAR.
-	 * 
-	 * @return a possibly empty array of modules contained within this application
-	 */
-	public IModule[] getModules();
-
-	/**
-	 * Returns the URI of the given module within this enterprise application.
-	 * 
-	 * @param module a module within this application
-	 * @return the URI of the given module, or <code>null</code> if the URI could
-	 *    not be found
-	 */
-	public String getURI(IModule module);
-
-	/**
-	 * Returns the root folders for the resources in this module.
-	 * 
-	 * @return a possibly-empty array of resource folders
-	 */
-	public IContainer[] getResourceFolders();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IJ2EEModule.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IJ2EEModule.java
deleted file mode 100644
index f116a87..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IJ2EEModule.java
+++ /dev/null
@@ -1,61 +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.server.core;
-
-import org.eclipse.core.resources.IContainer;
-/**
- * A J2EE module that can be deployed to a server.
- * 
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @plannedfor 1.5
- */
-public interface IJ2EEModule {
-	/**
-	 * Returns the root folders for the resources in this module.
-	 * 
-	 * @return a possibly-empty array of resource folders
-	 */
-	public IContainer[] getResourceFolders();
-
-	/**
-	 * Returns the root folders containing Java output in this module.
-	 * 
-	 * @return a possibly-empty array of Java output folders
-	 */
-	public IContainer[] getJavaOutputFolders();
-
-	/**
-	 * Returns true if this is a binary (zipped) module, and
-	 * false if it is expanded.
-	 * 
-	 * <p>If true, members() should return only a single element -
-	 * the binary (jar or zip file) that contains the contents of
-	 * this module. (a single IModuleResource, e.g.
-	 * myejb.jar) Also, getLocation() should return the full path
-	 * up to and including the binary itself. (e.g.
-	 * c:\temp\myejb.jar)</p>
-	 * 
-	 * <p>If false, members() should return the entire contents
-	 * of the module, starting at the root. There should be no
-	 * preceeding directory structure. (an array of
-	 * IModuleResources, e.g. index.html, WEB-INF/web.xml,
-	 * ...) In this case, getLocation() should return the path to
-	 * the root folder containing these resources.</p>
-	 * 
-	 * @return boolean
-	 */
-	public boolean isBinary();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IJavaRuntime.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IJavaRuntime.java
deleted file mode 100644
index 9081821..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IJavaRuntime.java
+++ /dev/null
@@ -1,31 +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.server.core;
-
-import org.eclipse.jdt.launching.IVMInstall;
-/**
- * An interface for a server that contains a Java runtime.
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @since 1.5
- */
-public interface IJavaRuntime {
-	/**
-	 * Return the VM install (installed JRE) that this runtime is using.
-	 * 
-	 * @return the current VM install
-	 */
-	public IVMInstall getVMInstall();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IUtilityModule.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IUtilityModule.java
deleted file mode 100644
index 7242fd8..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IUtilityModule.java
+++ /dev/null
@@ -1,61 +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.server.core;
-
-import org.eclipse.core.resources.IContainer;
-/**
- * A J2EE utility module that can be deployed to a server.
- * 
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @plannedfor 1.5
- */
-public interface IUtilityModule {
-	/**
-	 * Returns the root folders for the resources in this module.
-	 * 
-	 * @return a possibly-empty array of resource folders
-	 */
-	public IContainer[] getResourceFolders();
-
-	/**
-	 * Returns the root folders containing Java output in this module.
-	 * 
-	 * @return a possibly-empty array of Java output folders
-	 */
-	public IContainer[] getJavaOutputFolders();
-
-	/**
-	 * Returns true if this is a binary (zipped) module, and
-	 * false if it is expanded.
-	 * 
-	 * <p>If true, members() should return only a single element -
-	 * the binary (jar or zip file) that contains the contents of
-	 * this module. (a single IModuleResource, e.g.
-	 * myejb.jar) Also, getLocation() should return the full path
-	 * up to and including the binary itself. (e.g.
-	 * c:\temp\myejb.jar)</p>
-	 * 
-	 * <p>If false, members() should return the entire contents
-	 * of the module, starting at the root. There should be no
-	 * preceeding directory structure. (an array of
-	 * IModuleResources, e.g. index.html, WEB-INF/web.xml,
-	 * ...) In this case, getLocation() should return the path to
-	 * the root folder containing these resources.</p>
-	 * 
-	 * @return boolean
-	 */
-	public boolean isBinary();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IWebModule.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IWebModule.java
deleted file mode 100644
index 0bc0b17..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IWebModule.java
+++ /dev/null
@@ -1,47 +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.server.core;
-
-import org.eclipse.wst.server.core.IModule;
-/**
- * A J2EE web module.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @plannedfor 1.5
- */
-public interface IWebModule extends IJ2EEModule {
-	/**
-	 * Returns the context root of the module.
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getContextRoot();
-
-	/**
-	 * Returns the utility modules contained within this WAR.
-	 *
-	 * @return a possibly empty array of modules contained within this application
-	 */
-	public IModule[] getModules();
-
-	/**
-	 * Returns the URI of the given contained module.
-	 *
-	 * @param module a module
-	 * @return the URI of the given module, or <code>null</code> if the URI could
-	 *    not be found
-	 */
-	public String getURI(IModule module);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/JndiLaunchable.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/JndiLaunchable.java
deleted file mode 100644
index 542efbd..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/JndiLaunchable.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.server.core;
-
-import java.util.Properties;
-/**
- * A representation of an object in JNDI that can be tested on a server.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @plannedfor 1.5
- */
-public class JndiLaunchable {
-	private Properties props;
-	private String jndiName;
-
-	/**
-	 * Create a reference to an object that is launchable via JNDI.
-	 * 
-	 * @param props the JNDI properties required to connect to the object
-	 * @param jndiName the JNDI name of the object
-	 */
-	public JndiLaunchable(Properties props, String jndiName) {
-		this.jndiName = jndiName;
-		this.props = props;
-	}
-
-	/**
-	 * Returns the JNDI properties required to connect to the object.
-	 * 
-	 * @return the JNDI properties required to connect to the object
-	 */
-	public Properties getProperties() {
-		return props;
-	}
-
-	/**
-	 * Returns the JNDI name of the object.
-	 * 
-	 * @return the JNDI name of the object
-	 */
-	public String getJNDIName() {
-		return jndiName;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/JndiObject.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/JndiObject.java
deleted file mode 100644
index bae4411..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/JndiObject.java
+++ /dev/null
@@ -1,55 +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.server.core;
-
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.IModuleArtifact;
-/**
- * A representation of an object in JNDI that can be tested on a server.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @plannedfor 1.5
- */
-public class JndiObject implements IModuleArtifact {
-	private IModule module;
-	private String jndiName;
-
-	/**
-	 * Create a reference to an object in JNDI.
-	 * 
-	 * @param module the module that the object is contained in
-	 * @param jndiName the JNDI name of the object
-	 */
-	public JndiObject(IModule module, String jndiName) {
-		this.module = module;
-		this.jndiName = jndiName;
-	}
-
-	/**
-	 * @see IModuleArtifact#getModule()
-	 */
-	public IModule getModule() {
-		return module;
-	}
-
-	/**
-	 * Return the JNDI name of the object.
-	 * 
-	 * @return the JNDI name of the object
-	 */
-	public String getJndiName() {
-		return jndiName;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/PublishUtil.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/PublishUtil.java
deleted file mode 100644
index 6036c48..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/PublishUtil.java
+++ /dev/null
@@ -1,474 +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.server.core;
-
-import java.io.*;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipOutputStream;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.*;
-import org.eclipse.jst.server.core.internal.JavaServerPlugin;
-import org.eclipse.jst.server.core.internal.Messages;
-import org.eclipse.jst.server.core.internal.ProgressUtil;
-import org.eclipse.jst.server.core.internal.Trace;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.server.core.model.IModuleFile;
-import org.eclipse.wst.server.core.model.IModuleFolder;
-import org.eclipse.wst.server.core.model.IModuleResource;
-import org.eclipse.wst.server.core.model.IModuleResourceDelta;
-/**
- * Utility class with an assortment of useful file methods.
- * 
- * <p>
- * <b>Note:</b> This class/interface is part of an interim API that is still under development and expected to
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
- * (repeatedly) as the API evolves.
- * </p>
- * @plannedfor 1.5
- */
-public class PublishUtil {
-	// size of the buffer
-	private static final int BUFFER = 10240;
-
-	// the buffer
-	private static byte[] buf = new byte[BUFFER];
-
-	/**
-	 * FileUtil cannot be created. Use static methods.
-	 */
-	private PublishUtil() {
-		super();
-	}
-
-	/**
-	 * Copy a file from a to b. Closes the input stream after use.
-	 *
-	 * @param in java.io.InputStream
-	 * @param to java.lang.String
-	 * @return a status
-	 */
-	public static IStatus copyFile(InputStream in, String to) {
-		OutputStream out = null;
-		
-		try {
-			out = new FileOutputStream(to);
-	
-			int avail = in.read(buf);
-			while (avail > 0) {
-				out.write(buf, 0, avail);
-				avail = in.read(buf);
-			}
-			return Status.OK_STATUS;
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error copying file", e);
-			return new Status(IStatus.ERROR, JavaServerPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCopyingFile, new String[] {to, e.getLocalizedMessage()}), e);
-		} finally {
-			try {
-				if (in != null)
-					in.close();
-			} catch (Exception ex) {
-				// ignore
-			}
-			try {
-				if (out != null)
-					out.close();
-			} catch (Exception ex) {
-				// ignore
-			}
-		}
-	}
-
-	/**
-	 * Copy a file from a to b. Closes the input stream after use.
-	 *
-	 * @param in an input stream
-	 * @param to a path to copy to. the directory must already exist
-	 * @param ts timestamp
-	 * @throws CoreException if anything goes wrong
-	 */
-	private static void copyFile(InputStream in, IPath to, long ts) throws CoreException {
-		OutputStream out = null;
-		
-		File tempFile = null;
-		try {
-			File file = to.toFile();
-			File tempDir = JavaServerPlugin.getInstance().getStateLocation().toFile();
-			tempFile = File.createTempFile("tmp", "." + to.getFileExtension(), tempDir);
-			
-			out = new FileOutputStream(tempFile);
-	
-			int avail = in.read(buf);
-			while (avail > 0) {
-				out.write(buf, 0, avail);
-				avail = in.read(buf);
-			}
-			
-			out.close();
-			out = null;
-			
-			int i = 0;
-			//System.out.print("file: " + file.exists() + " " + tempFile.exists());
-			if (file.exists()) {
-				i += 1;
-				if (!file.delete()) {
-					i += 2;
-					tempFile.delete();
-					throw new Exception(NLS.bind(Messages.errorDelete, file.toString()));
-				}
-			}
-			i += 4;
-			//System.out.println(" " + i + " " + file.exists() + " " + tempFile.exists());
-			if (!tempFile.renameTo(file)) {
-				throw new Exception(NLS.bind(Messages.errorRename, tempFile.toString(), file.toString()));
-			}
-			
-			if (ts != IResource.NULL_STAMP && ts != 0)
-				file.setLastModified(ts);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error copying file", e);
-			throw new CoreException(new Status(IStatus.ERROR, JavaServerPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCopyingFile, to.toOSString(), e.getLocalizedMessage()), e));
-		} finally {
-			if (tempFile != null && tempFile.exists())
-				tempFile.deleteOnExit();
-			try {
-				if (in != null)
-					in.close();
-			} catch (Exception ex) {
-				// ignore
-			}
-			try {
-				if (out != null)
-					out.close();
-			} catch (Exception ex) {
-				// ignore
-			}
-		}
-	}
-
-	private static void copyFile(IModuleFile mf, IPath path) throws CoreException {
-		IFile file = (IFile) mf.getAdapter(IFile.class);
-		if (file != null) {
-			copyFile(file.getContents(), path, file.getLocalTimeStamp());
-		} else {
-			File file2 = (File) mf.getAdapter(File.class);
-			InputStream in = null;
-			try {
-				in = new FileInputStream(file2);
-			} catch (IOException e) {
-				throw new CoreException(new Status(IStatus.ERROR, JavaServerPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorReading, file2.getAbsolutePath()), e));
-			}
-			copyFile(in, path, file2.lastModified());
-		}
-	}
-
-	/**
-	 * Recursively deletes a directory.
-	 *
-	 * @param dir java.io.File
-	 * @param monitor a progress monitor, or <code>null</code>
-	 */
-	public static void deleteDirectory(File dir, IProgressMonitor monitor) {
-		try {
-			if (!dir.exists() || !dir.isDirectory())
-				return;
-	
-			File[] files = dir.listFiles();
-			int size = files.length;
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(NLS.bind(Messages.deletingTask, new String[] { dir.getAbsolutePath() }), size * 10);
-	
-			// cycle through files
-			for (int i = 0; i < size; i++) {
-				File current = files[i];
-				if (current.isFile()) {
-					current.delete();
-					monitor.worked(10);
-				} else if (current.isDirectory()) {
-					monitor.subTask(NLS.bind(Messages.deletingTask, new String[] {current.getAbsolutePath()}));
-					deleteDirectory(current, ProgressUtil.getSubMonitorFor(monitor, 10));
-				}
-			}
-			dir.delete();
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error deleting directory " + dir.getAbsolutePath(), e);
-		}
-	}
-	
-	public static void smartCopy(IModuleResource[] resources, IPath path, IProgressMonitor monitor) throws CoreException {
-		if (resources == null)
-			return;
-		
-		File toDir = path.toFile();
-		File[] toFiles = toDir.listFiles();
-		int fromSize = resources.length;
-		
-		if (toDir.exists() && toDir.isDirectory()) {
-			int toSize = toFiles.length;
-			// check if this exact file exists in the new directory
-			for (int i = 0; i < toSize; i++) {
-				String name = toFiles[i].getName();
-				boolean isDir = toFiles[i].isDirectory();
-				boolean found = false;
-				for (int j = 0; j < fromSize; j++) {
-					if (name.equals(resources[j].getName()) && isDir == resources[j] instanceof IModuleFolder)
-						found = true;
-				}
-	
-				// delete file if it can't be found or isn't the correct type
-				if (!found) {
-					if (isDir)
-						deleteDirectory(toFiles[i], null);
-					else
-						toFiles[i].delete();
-				}
-				if (monitor.isCanceled())
-					return;
-			}
-		} else {
-			if (toDir.isFile())
-				toDir.delete();
-			toDir.mkdir();
-		}
-			
-		monitor.worked(50);
-		
-		// cycle through files and only copy when it doesn't exist
-		// or is newer
-		toFiles = toDir.listFiles();
-		int toSize = toFiles.length;
-		int dw = 0;
-		if (toSize > 0)
-			dw = 500 / toSize;
-
-		for (int i = 0; i < fromSize; i++) {
-			IModuleResource current = resources[i];
-
-			// check if this is a new or newer file
-			boolean copy = true;
-			boolean currentIsDir = current instanceof IModuleFolder;
-			if (!currentIsDir) {
-				//String name = current.getName();
-				//IModuleFile mf = (IModuleFile) current;
-				
-				//long mod = mf.getModificationStamp();
-				// TODO
-				/*for (int j = 0; j < toSize; j++) {
-					if (name.equals(toFiles[j].getName()) && mod <= toFiles[j].lastModified())
-						copy = false;
-				}*/
-			}
-
-			if (copy) {
-				//String fromFile = current.getAbsolutePath();
-				IPath toPath = path.append(current.getName());
-				if (!currentIsDir) {
-					IModuleFile mf = (IModuleFile) current;
-					copyFile(mf, toPath);
-					monitor.worked(dw);
-				} else { //if (currentIsDir) {
-					IModuleFolder folder = (IModuleFolder) current;
-					IModuleResource[] children = folder.members();
-					monitor.subTask(NLS.bind(Messages.copyingTask, new String[] {resources[i].getName(), current.getName()}));
-					smartCopy(children, toPath, ProgressUtil.getSubMonitorFor(monitor, dw));
-				}
-			}
-			if (monitor.isCanceled())
-				return;
-		}
-		monitor.worked(500 - dw * toSize);
-		monitor.done();
-	}
-
-	public static void handleDelta(int kind, IPath path, IModuleResourceDelta delta) throws CoreException {
-		IModuleResource resource = delta.getModuleResource();
-		int kind2 = delta.getKind();
-		
-		if (resource instanceof IModuleFile) {
-			IModuleFile file = (IModuleFile) resource;
-			if (kind2 == IModuleResourceDelta.REMOVED)
-				deleteFile(path, file);
-			else
-				copyFile(path, file);
-			return;
-		}
-		
-		if (kind2 == IModuleResourceDelta.ADDED) {
-			IPath path2 = path.append(resource.getModuleRelativePath()).append(resource.getName());
-			path2.toFile().mkdirs();
-		} else if (kind == IModuleResourceDelta.REMOVED) {
-			IPath path2 = path.append(resource.getModuleRelativePath()).append(resource.getName());
-			path2.toFile().delete();
-		}
-		IModuleResourceDelta[] childDeltas = delta.getAffectedChildren();
-		int size = childDeltas.length;
-		for (int i = 0; i < size; i++) {
-			handleDelta(kind, path, childDeltas[i]);
-		}
-	}
-
-	protected static void deleteFile(IPath path, IModuleFile file) {
-		IPath path2 = path.append(file.getModuleRelativePath()).append(file.getName());
-		path2.toFile().delete();
-	}
-
-	private static void copyFile(IPath path, IModuleFile mf) throws CoreException {
-		IPath path3 = path.append(mf.getModuleRelativePath()).append(mf.getName());
-		File f = path3.toFile().getParentFile();
-		if (!f.exists())
-			f.mkdirs();
-		
-		IFile file = (IFile) mf.getAdapter(IFile.class);
-		if (file != null)
-			copyFile(file.getContents(), path3, file.getLocalTimeStamp());
-		else {
-			File file2 = (File) mf.getAdapter(File.class);
-			InputStream in = null;
-			try {
-				in = new FileInputStream(file2);
-			} catch (IOException e) {
-				throw new CoreException(new Status(IStatus.ERROR, JavaServerPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorReading, file2.getAbsolutePath()), e));
-			}
-			copyFile(in, path3, file2.lastModified());
-		}
-	}
-
-	public static void copy(IModuleResource[] resources, IPath path) throws CoreException {
-		if (resources == null)
-			return;
-		
-		int size = resources.length;
-		for (int i = 0; i < size; i++) {
-			copy(resources[i], path);
-		}
-	}
-
-	private static void copy(IModuleResource resource, IPath path) throws CoreException {
-		if (resource instanceof IModuleFolder) {
-			IModuleFolder folder = (IModuleFolder) resource;
-			copy(folder.members(), path);
-		} else {
-			IModuleFile mf = (IModuleFile) resource;
-			IPath path3 = path.append(mf.getModuleRelativePath()).append(mf.getName());
-			File f = path3.toFile().getParentFile();
-			if (!f.exists())
-				f.mkdirs();
-			IFile file = (IFile) mf.getAdapter(IFile.class);
-			if (file != null)
-				copyFile(file.getContents(), path3, file.getLocalTimeStamp());
-			else {
-				File file2 = (File) mf.getAdapter(File.class);
-				InputStream in = null;
-				try {
-					in = new FileInputStream(file2);
-				} catch (IOException e) {
-					throw new CoreException(new Status(IStatus.ERROR, JavaServerPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorReading, file2.getAbsolutePath()), e));
-				}
-				copyFile(in, path3, file2.lastModified());
-			}
-		}
-	}
-
-	/**
-	 * Creates a new zip file containing the given module resources. Deletes the existing file
-	 * (and doesn't create a new one) if resources is null or empty.
-	 * 
-	 * @param resources
-	 * @param zipPath
-	 * @throws CoreException
-	 */
-	public static void createZipFile(IModuleResource[] resources, IPath zipPath) throws CoreException {
-		if (resources == null || resources.length == 0) {
-			// should also check if resources consists of all empty directories
-			File file = zipPath.toFile();
-			if (file.exists())
-				file.delete();
-			return;
-		}
-		
-		File tempFile = null;
-		try {
-			File file = zipPath.toFile();
-			File tempDir = JavaServerPlugin.getInstance().getStateLocation().toFile();
-			tempFile = File.createTempFile("tmp", "." + zipPath.getFileExtension(), tempDir);
-			
-			BufferedOutputStream bout = new BufferedOutputStream(new FileOutputStream(tempFile));
-			ZipOutputStream zout = new ZipOutputStream(bout);
-			addZipEntries(zout, resources);
-			zout.close();
-			
-			if (file.exists()) {
-				if (!file.delete()) {
-					tempFile.delete();
-					throw new Exception(NLS.bind(Messages.errorDelete, file.toString()));
-				}
-			}
-			if (!tempFile.renameTo(file))
-				throw new Exception(NLS.bind(Messages.errorRename, tempFile.toString(), file.toString()));
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error zipping", e);
-			throw new CoreException(new Status(IStatus.ERROR, JavaServerPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCreatingZipFile, zipPath.lastSegment(), e.getLocalizedMessage()), e));
-		} finally {
-			if (tempFile != null && tempFile.exists())
-				tempFile.deleteOnExit();
-		}
-	}
-
-	private static void addZipEntries(ZipOutputStream zout, IModuleResource[] resources) throws Exception {
-		int size = resources.length;
-		for (int i = 0; i < size; i++) {
-			if (resources[i] instanceof IModuleFolder) {
-				IModuleFolder mf = (IModuleFolder) resources[i];
-				IModuleResource[] res = mf.members();
-				addZipEntries(zout, res);
-				continue;
-			}
-			
-			IModuleFile mf = (IModuleFile) resources[i];
-			IPath path = mf.getModuleRelativePath().append(mf.getName());
-			
-			ZipEntry ze = new ZipEntry(path.toPortableString());
-			
-			InputStream in = null;
-			long ts = 0;
-			IFile file = (IFile) mf.getAdapter(IFile.class);
-			if (file != null) {
-				ts = file.getLocalTimeStamp();
-				in = file.getContents();
-			} else {
-				File file2 = (File) mf.getAdapter(File.class);
-				ts = file2.lastModified();
-				in = new FileInputStream(file2);
-			}
-			
-			if (ts != IResource.NULL_STAMP && ts != 0)
-				ze.setTime(ts);
-			
-			zout.putNextEntry(ze);
-			
-			try {
-				int n = 0;
-				while (n > -1) {
-					n = in.read(buf);
-					if (n > 0)
-						zout.write(buf, 0, n);
-				}
-			} finally {
-				in.close();
-			}
-			
-			zout.closeEntry();
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/RuntimeClasspathProviderDelegate.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/RuntimeClasspathProviderDelegate.java
deleted file mode 100644
index 617f8cd..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/RuntimeClasspathProviderDelegate.java
+++ /dev/null
@@ -1,368 +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.server.core;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.IAccessRule;
-import org.eclipse.jdt.core.IClasspathAttribute;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jst.server.core.internal.IMemento;
-import org.eclipse.jst.server.core.internal.JavaServerPlugin;
-import org.eclipse.jst.server.core.internal.Trace;
-import org.eclipse.jst.server.core.internal.XMLMemento;
-import org.eclipse.wst.server.core.IRuntime;
-/**
- * A runtime classpath provider provides the classpath for a Java server runtime.
- * This provider is scoped by runtime type and may provide the classpath for multiple
- * runtime instances.
- * <p>
- * This abstract class is intended to be extended only by clients
- * to extend the <code>runtimeClasspathProviders</code> extension point.
- * </p>
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * 
- * @plannedfor 1.5
- */
-public abstract class RuntimeClasspathProviderDelegate {
-	private class SourceAttachmentUpdate {
-		String runtimeId;
-		IPath entry;
-		IPath sourceAttachmentPath;
-		IPath sourceAttachmentRootPath;
-		IClasspathAttribute[] attributes;
-	}
-
-	private List sourceAttachments;
-
-	private String extensionId;
-
-	private Map runtimePathMap = new HashMap();
-
-	public RuntimeClasspathProviderDelegate() {
-		// default constructor
-	}
-
-	/**
-	 * Initializes this classpath provider with its life-long id.
-	 * <p>
-	 * This method is called by the framework.
-	 * Clients should never call this method.
-	 * </p>
-	 * @param id the extension id
-	 */
-	public final void initialize(String id) {
-		extensionId = id;
-	}
-
-	/**
-	 * Returns the classpath container label for the given runtime and the given
-	 * classpath container id (returned from getClasspathEntryIds()). This method
-	 * must not return null.
-	 * 
-	 * @param runtime the runtime to resolve the container label for
-	 * @return a classpath container label
-	 */
-	public String getClasspathContainerLabel(IRuntime runtime) {
-		return null;
-	}
-
-	/**
-	 * Resolves (creates the classpath entries for) the classpath container with
-	 * the given runtime and the given classpath container id (returned from
-	 * getClasspathEntryIds()). If the classpath container cannot be resolved
-	 * (for instance, if the runtime does not exist), return null.
-	 * 
-	 * @param runtime the runtime to resolve the container for
-	 * @return an array of classpath entries for the container, or null if the
-	 *   container could not be resolved
-	 */
-	public IClasspathEntry[] resolveClasspathContainer(IRuntime runtime) {
-		return null;
-	}
-
-	/**
-	 * Returns the classpath container label for the given runtime and the given
-	 * classpath container id (returned from getClasspathEntryIds()). This method
-	 * must not return null.
-	 * 
-	 * @param runtime the runtime to resolve the container label for
-	 * @param id the classpath entry id
-	 * @return a classpath container label
-	 * @deprecated should use the equivalent method without the unused id variable
-	 */
-	public String getClasspathContainerLabel(IRuntime runtime, String id) {
-		return getClasspathContainerLabel(runtime);
-	}
-
-	/**
-	 * Resolves (creates the classpath entries for) the classpath container with
-	 * the given runtime and the given classpath container id (returned from
-	 * getClasspathEntryIds()). If the classpath container cannot be resolved
-	 * (for instance, if the runtime does not exist), return null.
-	 * 
-	 * @param runtime the runtime to resolve the container for
-	 * @param id the classpath entry id
-	 * @return an array of classpath entries for the container, or null if the
-	 *   container could not be resolved
-	 * @deprecated should use the equivalent method without the unused id variable
-	 */
-	public IClasspathEntry[] resolveClasspathContainer(IRuntime runtime, String id) {
-		return resolveClasspathContainer(runtime);
-	}
-
-	/**
-	 * Resolve the classpath container.
-	 * 
-	 * @param runtime a runtime
-	 * @param id a container id
-	 * @return a possibly empty array of classpath entries
-	 * @deprecated should use the equivalent method without the unused id variable
-	 */
-	public IClasspathEntry[] resolveClasspathContainerImpl(IRuntime runtime, String id) {
-		return resolveClasspathContainerImpl(runtime);
-	}
-
-	/**
-	 * Resolve the classpath container.
-	 * 
-	 * @param runtime a runtime
-	 * @return a possibly empty array of classpath entries
-	 */
-	public IClasspathEntry[] resolveClasspathContainerImpl(IRuntime runtime) {
-		if (runtime == null)
-			return new IClasspathEntry[0];
-		runtimePathMap.put(runtime.getId(), runtime.getLocation());
-		IClasspathEntry[] entries = resolveClasspathContainer(runtime, "");
-		
-		if (entries == null)
-			entries = new IClasspathEntry[0];
-		
-		if (sourceAttachments == null)
-			load();
-		
-		int size = entries.length;
-		int size2 = sourceAttachments.size();
-		for (int i = 0; i < size; i++) {
-			for (int j = 0; j < size2; j++) {
-				SourceAttachmentUpdate sau = (SourceAttachmentUpdate) sourceAttachments.get(j);
-				if (sau.runtimeId.equals(runtime.getId()) && sau.entry.equals(entries[i].getPath())) {
-					entries[i] = JavaCore.newLibraryEntry(entries[i].getPath(), sau.sourceAttachmentPath, sau.sourceAttachmentRootPath, new IAccessRule[0], sau.attributes, false);
-				}
-			}
-		}
-		
-		return entries;
-	}
-
-	/*
-	 * Returns true if there are any changes in the runtime since the last time that the
-	 * classpath was resolved which may affect the classpath, and false otherwise. This
-	 * method is used to check projects when a runtime changes and automatically rebuild
-	 * them if necessary.
-	 * 
-	 * @param runtime a runtime
-	 * @return <code>true</code> if the classpath may change due to a change in the runtime,
-	 *    and <code>false</code> if there are no changes
-	 */
-	public boolean hasRuntimeClasspathChanged(IRuntime runtime) {
-		try {
-			IPath path = (IPath) runtimePathMap.get(runtime.getId());
-			return (path != null && !path.equals(runtime.getLocation()));
-		} catch (Exception e) {
-			// ignore
-		}
-		return false;
-	}
-
-	private static void addJarFiles(File dir, List list, boolean includeSubdirectories) {
-		int depth = 0;
-		if (includeSubdirectories)
-			depth = 2;
-		addJarFiles(dir, list, depth);
-	}
-
-	private static void addJarFiles(File dir, List list, int depth) {
-		if (dir == null)
-			throw new IllegalArgumentException();
-		
-		File[] files = dir.listFiles();
-		if (files != null) {
-			int size = files.length;
-			for (int i = 0; i < size; i++) {
-				if (files[i].isDirectory() && depth > 0) {
-					addJarFiles(files[i], list, depth - 1);
-				} else if (files[i].getAbsolutePath().endsWith(".jar") || files[i].getAbsolutePath().endsWith(".zip")) {
-					IPath path = new Path(files[i].getAbsolutePath());
-					list.add(JavaCore.newLibraryEntry(path, null, null));
-				}
-			}
-		}
-	}
-
-	/**
-	 * Add library entries to the given list for every jar file found in the
-	 * given directory. Optionally search subdirectories as well.
-	 * 
-	 * @param list a list
-	 * @param dir a directory
-	 * @param includeSubdirectories <code>true</code> to include subdirectories, and
-	 *    <code>false</code> otherwise
-	 */
-	protected static void addLibraryEntries(List list, File dir, boolean includeSubdirectories) {
-		if (dir == null)
-			throw new IllegalArgumentException();
-		addJarFiles(dir, list, includeSubdirectories);
-	}
-
-	/**
-	 * Request that the classpath container for the given runtime and id be updated
-	 * with the given classpath container entries.
-	 * 
-	 * @param runtime a runtime
-	 * @param id an id
-	 * @param entries an array of classpath entries
-	 * @deprecated should use the equivalent method without the unused id variable
-	 */
-	public void requestClasspathContainerUpdate(IRuntime runtime, String id, IClasspathEntry[] entries) {
-		requestClasspathContainerUpdate(runtime, entries);
-	}
-
-	/**
-	 * Request that the classpath container for the given runtime and id be updated
-	 * with the given classpath container entries.
-	 * 
-	 * @param runtime a runtime
-	 * @param entries an array of classpath entries
-	 */
-	public void requestClasspathContainerUpdate(IRuntime runtime, IClasspathEntry[] entries) {
-		// default behaviour is to save the source path entries
-		if (runtime == null || entries == null)
-			return;
-		
-		// find the source attachments
-		sourceAttachments = new ArrayList();
-		
-		int size = entries.length;
-		for (int i = 0; i < size; i++) {
-			if (entries[i].getSourceAttachmentPath() != null || entries[i].getExtraAttributes() != null) {
-				SourceAttachmentUpdate sau = new SourceAttachmentUpdate();
-				sau.runtimeId = runtime.getId();
-				sau.entry = entries[i].getPath();
-				sau.sourceAttachmentPath = entries[i].getSourceAttachmentPath();
-				sau.sourceAttachmentRootPath = entries[i].getSourceAttachmentRootPath();
-				sau.attributes = entries[i].getExtraAttributes();
-				sourceAttachments.add(sau);
-			}
-		}
-		save();
-	}
-
-	/**
-	 * Load source attachment info.
-	 */
-	private void load() {
-		sourceAttachments = new ArrayList();
-		
-		String id = extensionId;
-		String filename = JavaServerPlugin.getInstance().getStateLocation().append(id + ".xml").toOSString();
-		
-		try {
-			IMemento memento = XMLMemento.loadMemento(filename);
-			
-			IMemento[] children = memento.getChildren("source-attachment");
-			int size = children.length;
-			
-			for (int i = 0; i < size; i++) {
-				try {
-					SourceAttachmentUpdate sau = new SourceAttachmentUpdate();
-					sau.runtimeId = children[i].getString("runtime-id");
-					String temp = children[i].getString("entry");
-					if (temp != null)
-						sau.entry = new Path(temp);
-					temp = children[i].getString("source-attachment-path");
-					if (temp != null)
-						sau.sourceAttachmentPath = new Path(temp);
-					temp = children[i].getString("source-attachment-root-path");
-					if (temp != null)
-						sau.sourceAttachmentRootPath = new Path(temp);
-					IMemento[] attrChildren = children[i].getChildren("attribute");
-					if (attrChildren != null) {
-						int size2 = attrChildren.length;
-						sau.attributes = new IClasspathAttribute[size2];
-						for (int j = 0; j < size2; j++) {
-							String name = attrChildren[j].getString("name");
-							String value = attrChildren[j].getString("value");
-							sau.attributes[j] = JavaCore.newClasspathAttribute(name, value);
-						}
-					}
-					sourceAttachments.add(sau);
-				} catch (Exception e) {
-					Trace.trace(Trace.WARNING, "Could not load monitor: " + e);
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not load source path info: " + e.getMessage());
-		}
-	}
-
-	/**
-	 * Save source attachment info.
-	 */
-	private void save() {
-		if (sourceAttachments == null)
-			return;
-		String id = extensionId;
-		String filename = JavaServerPlugin.getInstance().getStateLocation().append(id + ".xml").toOSString();
-		try {
-			XMLMemento memento = XMLMemento.createWriteRoot("classpath");
-
-			Iterator iterator = sourceAttachments.iterator();
-			while (iterator.hasNext()) {
-				SourceAttachmentUpdate sau = (SourceAttachmentUpdate) iterator.next();
-				IMemento child = memento.createChild("source-attachment");
-				child.putString("runtime-id", sau.runtimeId);
-				if (sau.entry != null)
-					child.putString("entry", sau.entry.toPortableString());
-				if (sau.sourceAttachmentPath != null)
-					child.putString("source-attachment-path", sau.sourceAttachmentPath.toPortableString());
-				if (sau.sourceAttachmentRootPath != null)
-					child.putString("source-attachment-root-path", sau.sourceAttachmentRootPath.toPortableString());
-				if (sau.attributes != null) {
-					int size = sau.attributes.length;
-					for (int i = 0; i < size; i++) {
-						IClasspathAttribute attr = sau.attributes[i];
-						IMemento attrChild = child.createChild("attribute");
-						attrChild.putString("name", attr.getName());
-						attrChild.putString("value", attr.getValue());
-					}
-				}
-			}
-			
-			memento.saveToFile(filename);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error saving source path info", e);
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/Servlet.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/Servlet.java
deleted file mode 100644
index 7f7c5aa..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/Servlet.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.server.core;
-
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.IModuleArtifact;
-/**
- * A J2EE Servlet.
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * @plannedfor 1.5
- */
-public class Servlet implements IModuleArtifact {
-	private IModule module;
-	private String className;
-	private String alias;
-	
-	/**
-	 * Create a reference to a servlet.
-	 * 
-	 * @param module the module that the servlet is contained in
-	 * @param className the class name of the servlet
-	 * @param alias the servlet's alias
-	 */
-	public Servlet(IModule module, String className, String alias) {
-		this.module = module;
-		this.className = className;
-		this.alias = alias;
-	}
-
-	/**
-	 * @see IModuleArtifact#getModule()
-	 */
-	public IModule getModule() {
-		return module;
-	}
-
-	/**
-	 * Return the class name of the servlet.
-	 * 
-	 * @return the class name of the servlet
-	 */
-	public String getServletClassName() {
-		return className;
-	}
-	
-	/**
-	 * Return the servlet's alias.
-	 * 
-	 * @return the servlet's alias
-	 */
-	public String getAlias() {
-		return alias;
-	}
-
-	/**
-	 * @see Object#toString()
-	 */
-	public String toString() {
-		return "Servlet [module=" + module + ", class=" + className + ", alias=" + alias + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/GenericRuntime.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/GenericRuntime.java
deleted file mode 100644
index 3a365ff..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/GenericRuntime.java
+++ /dev/null
@@ -1,120 +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.server.core.internal;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.jdt.launching.IVMInstall;
-import org.eclipse.jdt.launching.IVMInstallType;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.wst.server.core.IRuntime;
-import org.eclipse.wst.server.core.model.RuntimeDelegate;
-/**
- *
- */
-public class GenericRuntime extends RuntimeDelegate implements IGenericRuntime, IGenericRuntimeWorkingCopy {
-	protected static final String PROP_VM_INSTALL_TYPE_ID = "vm-install-type-id";
-	protected static final String PROP_VM_INSTALL_ID = "vm-install-id";
-
-	/**
-	 * Create a new generic runtime.
-	 */
-	public GenericRuntime() {
-		// do nothing
-	}
-
-	protected String getVMInstallTypeId() {
-		return getAttribute(PROP_VM_INSTALL_TYPE_ID, (String)null);
-	}
-
-	protected String getVMInstallId() {
-		return getAttribute(PROP_VM_INSTALL_ID, (String)null);
-	}
-
-	/**
-	 * Returns <code>true</code> if the runtime is using the default JRE.
-	 * 
-	 * @return <code>true</code> if the runtime is using the default JRE,
-	 *    and <code>false</code> otherwise
-	 */
-	public boolean isUsingDefaultJRE() {
-		return getVMInstallTypeId() == null;
-	}
-
-	/**
-	 * @see IGenericRuntime#getVMInstall()
-	 */
-	public IVMInstall getVMInstall() {
-		if (getVMInstallTypeId() == null)
-			return JavaRuntime.getDefaultVMInstall();
-		try {
-			IVMInstallType vmInstallType = JavaRuntime.getVMInstallType(getVMInstallTypeId());
-			IVMInstall[] vmInstalls = vmInstallType.getVMInstalls();
-			int size = vmInstalls.length;
-			String id = getVMInstallId();
-			for (int i = 0; i < size; i++) {
-				if (id.equals(vmInstalls[i].getId()))
-					return vmInstalls[i];
-			}
-		} catch (Exception e) {
-			// ignore
-		}
-		return null;
-	}
-	
-	/**
-	 * @see RuntimeDelegate#validate()
-	 */
-	public IStatus validate() {
-		IStatus status = super.validate();
-		if (!status.isOK())
-			return status;
-		
-		IRuntime runtime = getRuntime();
-
-		IPath path = runtime.getLocation();
-		if (!path.toFile().exists())
-			return new Status(IStatus.ERROR, JavaServerPlugin.PLUGIN_ID, 0, Messages.errorLocation, null);
-		else if (getVMInstall() == null)
-			return new Status(IStatus.ERROR, JavaServerPlugin.PLUGIN_ID, 0, Messages.errorJRE, null);
-		else
-			return Status.OK_STATUS;
-	}
-
-	/**
-	 * @see RuntimeDelegate#setDefaults(IProgressMonitor)
-	 */
-	public void setDefaults(IProgressMonitor monitor) {
-		IVMInstall vmInstall = JavaRuntime.getDefaultVMInstall();
-		setVMInstall(vmInstall.getVMInstallType().getId(), vmInstall.getId());
-	}
-
-	/**
-	 * @see IGenericRuntimeWorkingCopy#setVMInstall(IVMInstall)
-	 */
-	public void setVMInstall(IVMInstall vmInstall) {
-		if (vmInstall == null) {
-			setVMInstall(null, null);
-		} else
-			setVMInstall(vmInstall.getVMInstallType().getId(), vmInstall.getId());
-	}
-
-	protected void setVMInstall(String typeId, String id) {
-		if (typeId == null)
-			setAttribute(PROP_VM_INSTALL_TYPE_ID, (String)null);
-		else
-			setAttribute(PROP_VM_INSTALL_TYPE_ID, typeId);
-		
-		if (id == null)
-			setAttribute(PROP_VM_INSTALL_ID, (String)null);
-		else
-			setAttribute(PROP_VM_INSTALL_ID, id);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/GenericRuntimeClasspathProvider.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/GenericRuntimeClasspathProvider.java
deleted file mode 100644
index 6310eca..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/GenericRuntimeClasspathProvider.java
+++ /dev/null
@@ -1,45 +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.server.core.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jst.server.core.RuntimeClasspathProviderDelegate;
-
-import org.eclipse.wst.server.core.IRuntime;
-/**
- * 
- */
-public class GenericRuntimeClasspathProvider extends RuntimeClasspathProviderDelegate {
-	/**
-	 * @see RuntimeClasspathProviderDelegate#getClasspathContainerLabel(IRuntime, String)
-	 */
-	public String getClasspathContainerLabel(IRuntime runtime, String id) {
-		return runtime.getRuntimeType().getName();
-	}
-
-	/** (non-Javadoc)
-	 * @see RuntimeClasspathProviderDelegate#resolveClasspathContainer(IRuntime, String)
-	 */
-	public IClasspathEntry[] resolveClasspathContainer(IRuntime runtime, String id) {
-		IPath installPath = runtime.getLocation();
-		
-		if (installPath == null)
-			return new IClasspathEntry[0];
-		
-		List list = new ArrayList();
-		addLibraryEntries(list, installPath.toFile(), false);
-		return (IClasspathEntry[])list.toArray(new IClasspathEntry[list.size()]);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/GenericRuntimeUtil.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/GenericRuntimeUtil.java
deleted file mode 100644
index 82dc488..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/GenericRuntimeUtil.java
+++ /dev/null
@@ -1,41 +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.server.core.internal;
-
-import org.eclipse.wst.server.core.IRuntime;
-/**
- * Utility methods for the generic J2EE runtime.
- */
-public class GenericRuntimeUtil {
-	protected static final String RUNTIME_TYPE_ID = "org.eclipse.jst.server.core.runtimeType";
-
-	/**
-	 * Cannot create GenericRuntimeUtil - use static methods.
-	 */
-	private GenericRuntimeUtil() {
-		// can't create
-	}
-
-	/**
-	 * Returns <code>true</code> if the given runtime is a generic J2EE runtime, and
-	 * <code>false</code> otherwise. The runtime may not be null.
-	 * 
-	 * @param runtime 
-	 * @return <code>true</code> if 
-	 */
-	public static boolean isGenericJ2EERuntime(IRuntime runtime) {
-		if (runtime == null)
-			throw new IllegalArgumentException();
-
-		return (runtime.getRuntimeType() != null &&
-			runtime.getRuntimeType().getId().startsWith(RUNTIME_TYPE_ID));
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/IGenericRuntime.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/IGenericRuntime.java
deleted file mode 100644
index 1c509c4..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/IGenericRuntime.java
+++ /dev/null
@@ -1,19 +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.server.core.internal;
-
-import org.eclipse.jst.server.core.IJavaRuntime;
-/**
- * 
- */
-public interface IGenericRuntime extends IJavaRuntime {
-	// no additional methods
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/IGenericRuntimeWorkingCopy.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/IGenericRuntimeWorkingCopy.java
deleted file mode 100644
index 0133c5c..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/IGenericRuntimeWorkingCopy.java
+++ /dev/null
@@ -1,25 +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.server.core.internal;
-
-import org.eclipse.jdt.launching.IVMInstall;
-/**
- * 
- */
-public interface IGenericRuntimeWorkingCopy extends IGenericRuntime {
-	/**
-	 * Set the VM install (installed JRE) that this runtime is using.
-	 * Use <code>null</code> to use the Eclipse default JRE.
-	 * 
-	 * @param vmInstall the VM install to use
-	 */
-	public void setVMInstall(IVMInstall vmInstall);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/IMemento.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/IMemento.java
deleted file mode 100644
index 398c72c..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/IMemento.java
+++ /dev/null
@@ -1,194 +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.server.core.internal;
-
-import java.util.List;
-/**
- * Interface to a memento used for saving the important state of an object
- * in a form that can be persisted in the file system.
- * <p>
- * Mementos were designed with the following requirements in mind:
- * <ol>
- *  <li>Certain objects need to be saved and restored across platform sessions.
- *    </li>
- *  <li>When an object is restored, an appropriate class for an object might not
- *    be available. It must be possible to skip an object in this case.</li>
- *  <li>When an object is restored, the appropriate class for the object may be
- *    different from the one when the object was originally saved. If so, the
- *    new class should still be able to read the old form of the data.</li>
- * </ol>
- * </p>
- * <p>
- * Mementos meet these requirements by providing support for storing a
- * mapping of arbitrary string keys to primitive values, and by allowing
- * mementos to have other mementos as children (arranged into a tree).
- * A robust external storage format based on XML is used.
- * </p><p>
- * The key for an attribute may be any alpha numeric value.  However, the
- * value of <code>TAG_ID</code> is reserved for internal use.
- * </p><p>
- * This interface is not intended to be implemented by clients.
- * </p>
- */
-public interface IMemento {
-	/**
-	 * Special reserved key used to store the memento id 
-	 * (value <code>"org.eclipse.ui.id"</code>).
-	 *
-	 * @see #getId
-	 */
-	public static final String TAG_ID = "IMemento.internal.id"; //$NON-NLS-1$
-
-	/**
-	 * Creates a new child of this memento with the given type.
-	 * <p>
-	 * The <code>getChild</code> and <code>getChildren</code> methods
-	 * are used to retrieve children of a given type.
-	 * </p>
-	 *
-	 * @param type the type
-	 * @return a new child memento
-	 * @see #getChild
-	 * @see #getChildren
-	 */
-	public IMemento createChild(String type);
-	
-	/**
-	 * Creates a new child of this memento with the given type and id.
-	 * The id is stored in the child memento (using a special reserved
-	 * key, <code>TAG_ID</code>) and can be retrieved using <code>getId</code>.
-	 * <p>
-	 * The <code>getChild</code> and <code>getChildren</code> methods
-	 * are used to retrieve children of a given type.
-	 * </p>
-	 *
-	 * @param type the type
-	 * @param id the child id
-	 * @return a new child memento with the given type and id
-	 * @see #getId
-	 */
-	public IMemento createChild(String type, String id);
-	
-	/**
-	 * Returns the first child with the given type id.
-	 *
-	 * @param type the type id
-	 * @return the first child with the given type
-	 */
-	public IMemento getChild(String type);
-	
-	/**
-	 * Returns all children with the given type id.
-	 *
-	 * @param type the type id
-	 * @return the list of children with the given type
-	 */
-	public IMemento[] getChildren(String type);
-	
-	/**
-	 * Returns the floating point value of the given key.
-	 *
-	 * @param key the key
-	 * @return the value, or <code>null</code> if the key was not found or was found
-	 *   but was not a floating point number
-	 */
-	public Float getFloat(String key);
-	
-	/**
-	 * Returns the id for this memento.
-	 *
-	 * @return the memento id, or <code>null</code> if none
-	 * @see #createChild(java.lang.String,java.lang.String)
-	 */
-	public String getId();
-	
-	/**
-	 * Returns the name for this memento.
-	 *
-	 * @return the memento name, or <code>null</code> if none
-	 * @see #createChild(java.lang.String,java.lang.String)
-	 */
-	public String getName();
-
-	/**
-	 * Returns the integer value of the given key.
-	 *
-	 * @param key the key
-	 * @return the value, or <code>null</code> if the key was not found or was found
-	 *   but was not an integer
-	 */
-	public Integer getInteger(String key);
-
-	/**
-	 * Returns the string value of the given key.
-	 *
-	 * @param key the key
-	 * @return the value, or <code>null</code> if the key was not found or was found
-	 *  but was not an integer
-	 */
-	public String getString(String key);
-
-	/**
-	 * Returns the boolean value of the given key.
-	 *
-	 * @param key the key
-	 * @return the value, or <code>null</code> if the key was not found or was found
-	 *  but was not a boolean
-	 */
-	public Boolean getBoolean(String key);
-	
-	/**
-	 * Return the list of names.
-	 * 
-	 * @return a possibly empty list of names
-	 */
-	public List getNames();
-	
-	/**
-	 * Sets the value of the given key to the given floating point number.
-	 *
-	 * @param key the key
-	 * @param value the value
-	 */
-	public void putFloat(String key, float value);
-	
-	/**
-	 * Sets the value of the given key to the given integer.
-	 *
-	 * @param key the key
-	 * @param value the value
-	 */
-	public void putInteger(String key, int value);
-	
-	/**
-	 * Sets the value of the given key to the given boolean value.
-	 *
-	 * @param key the key
-	 * @param value the value
-	 */
-	public void putBoolean(String key, boolean value);
-
-	/**
-	 * Copy the attributes and children from  <code>memento</code>
-	 * to the receiver.
-	 *
-	 * @param memento the IMemento to be copied.
-	 */
-	public void putMemento(IMemento memento);
-
-	/**
-	 * Sets the value of the given key to the given string.
-	 *
-	 * @param key the key
-	 * @param value the value
-	 */
-	public void putString(String key, String value);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/J2EELaunchableClient.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/J2EELaunchableClient.java
deleted file mode 100644
index 4f18292..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/J2EELaunchableClient.java
+++ /dev/null
@@ -1,36 +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.server.core.internal;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.jst.server.core.JndiLaunchable;
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.model.ClientDelegate;
-/**
- *
- */
-public class J2EELaunchableClient extends ClientDelegate {
-	/*
-	 * @see ClientDelegate#supports(ILaunchable)
-	 */
-	public boolean supports(IServer server, Object launchable, String launchMode) {
-		return (launchable instanceof JndiLaunchable);
-	}
-
-	/*
-	 * @see ClientDelegate#launch(ILaunchable)
-	 */
-	public IStatus launch(IServer server, Object launchable, String launchMode, ILaunch launch) {
-		Trace.trace(Trace.FINEST, "JNDI client launched");
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/J2EEUtil.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/J2EEUtil.java
deleted file mode 100644
index 25d7de0..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/J2EEUtil.java
+++ /dev/null
@@ -1,130 +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.server.core.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jst.server.core.IEnterpriseApplication;
-import org.eclipse.jst.server.core.IJ2EEModule;
-import org.eclipse.jst.server.core.IWebModule;
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.ServerUtil;
-/**
- * Utility class for dealing with J2EE modules.
- */
-public class J2EEUtil {
-	private static final String EAR_MODULE = "jst.ear";
-	private static final String WEB_MODULE = "jst.web";
-
-	/**
-	 * Returns the enterprise applications that the module is contained within.
-	 * 
-	 * @param module a J2EE module
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return a possibly empty array of enterprise applications
-	 */
-	public static IModule[] getEnterpriseApplications(IJ2EEModule module, IProgressMonitor monitor) {
-		List list = new ArrayList();
-		IModule[] modules = ServerUtil.getModules(EAR_MODULE);
-		if (modules != null) {
-			int size = modules.length;
-			for (int i = 0; i < size; i++) {
-				IModule module2 = modules[i];
-				IEnterpriseApplication ear = (IEnterpriseApplication) module2.loadAdapter(IEnterpriseApplication.class, monitor);
-				if (ear != null) {
-					IModule[] modules2 = ear.getModules();
-					if (modules2 != null) {
-						int size2 = modules2.length;
-						for (int j = 0; j < size2; j++) {
-							if (module.equals(modules2[j].loadAdapter(IJ2EEModule.class, monitor)))
-								list.add(module2);
-						}
-					}
-				}
-			}
-		}
-		
-		IModule[] ears = new IModule[list.size()];
-		list.toArray(ears);
-		return ears;
-	}
-
-	/**
-	 * Returns the enterprise applications that the module is contained within.
-	 * 
-	 * @param module a J2EE module or utility module
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return a possibly empty array of enterprise applications
-	 */
-	public static IModule[] getEnterpriseApplications(IModule module, IProgressMonitor monitor) {
-		List list = new ArrayList();
-		IModule[] modules = ServerUtil.getModules(EAR_MODULE);
-		if (modules != null) {
-			int size = modules.length;
-			for (int i = 0; i < size; i++) {
-				IModule module2 = modules[i];
-				IEnterpriseApplication ear = (IEnterpriseApplication) module2.loadAdapter(IEnterpriseApplication.class, monitor);
-				if (ear != null) {
-					IModule[] modules2 = ear.getModules();
-					if (modules2 != null) {
-						int size2 = modules2.length;
-						for (int j = 0; j < size2; j++) {
-							if (module.equals(modules2[j]))
-								list.add(module2);
-						}
-					}
-				}
-			}
-		}
-		
-		IModule[] ears = new IModule[list.size()];
-		list.toArray(ears);
-		return ears;
-	}
-
-	/**
-	 * Returns the web modules that the utility module is contained within.
-	 * 
-	 * @param module a utility module
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return a possibly empty array of web modules
-	 */
-	public static IModule[] getWebModules(IModule module, IProgressMonitor monitor) {
-		List list = new ArrayList();
-		IModule[] modules = ServerUtil.getModules(WEB_MODULE);
-		if (modules != null) {
-			int size = modules.length;
-			for (int i = 0; i < size; i++) {
-				IModule module2 = modules[i];
-				IWebModule web = (IWebModule) module2.loadAdapter(IWebModule.class, monitor);
-				if (web != null) {
-					IModule[] modules2 = web.getModules();
-					if (modules2 != null) {
-						int size2 = modules2.length;
-						for (int j = 0; j < size2; j++) {
-							if (module.equals(modules2[j]))
-								list.add(module2);
-						}
-					}
-				}
-			}
-		}
-		
-		IModule[] webs = new IModule[list.size()];
-		list.toArray(webs);
-		return webs;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/JavaServerPlugin.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/JavaServerPlugin.java
deleted file mode 100644
index b412b68..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/JavaServerPlugin.java
+++ /dev/null
@@ -1,324 +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.server.core.internal;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.*;
-import org.eclipse.core.runtime.jobs.Job;
-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.osgi.util.NLS;
-import org.eclipse.wst.server.core.IRuntime;
-import org.eclipse.wst.server.core.IRuntimeLifecycleListener;
-import org.eclipse.wst.server.core.IRuntimeType;
-import org.eclipse.wst.server.core.ServerCore;
-import org.eclipse.wst.server.core.internal.ServerPlugin;
-import org.osgi.framework.BundleContext;
-/**
- * The main server tooling plugin class.
- */
-public class JavaServerPlugin extends Plugin {
-	/**
-	 * Java server plugin id
-	 */
-	public static final String PLUGIN_ID = "org.eclipse.jst.server.core";
-
-	// singleton instance of this class
-	private static JavaServerPlugin singleton;
-
-	//	cached copy of all runtime classpath providers
-	private static List runtimeClasspathProviders;
-
-	//	cached copy of all runtime facet mappings
-	private static List runtimeFacetMappings;
-
-	// runtime listener
-	private static IRuntimeLifecycleListener runtimeListener;
-
-	/**
-	 * Create the JavaServerPlugin.
-	 */
-	public JavaServerPlugin() {
-		super();
-		singleton = this;
-	}
-
-	/**
-	 * Returns the singleton instance of this plugin.
-	 *
-	 * @return a singleton instance
-	 */
-	public static JavaServerPlugin getInstance() {
-		return singleton;
-	}
-
-	/**
-	 * @see Plugin#start(org.osgi.framework.BundleContext)
-	 */
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-		
-		runtimeListener = new IRuntimeLifecycleListener() {
-			public void runtimeAdded(IRuntime runtime) {
-				handleRuntimeChange(runtime);
-			}
-
-			public void runtimeChanged(IRuntime runtime) {
-				handleRuntimeChange(runtime);
-			}
-
-			public void runtimeRemoved(IRuntime runtime) {
-				handleRuntimeChange(runtime);
-			}
-		};
-		
-		ServerCore.addRuntimeLifecycleListener(runtimeListener);
-	}
-
-	/**
-	 * @see Plugin#stop(org.osgi.framework.BundleContext)
-	 */
-	public void stop(BundleContext context) throws Exception {
-		ServerCore.removeRuntimeLifecycleListener(runtimeListener);
-		super.stop(context);
-	}
-
-	/**
-	 * Handle a runtime change by potentially updating the classpath container.
-	 * 
-	 * @param runtime a runtime
-	 */
-	protected void handleRuntimeChange(final IRuntime runtime) {
-		if (runtime == null)
-			throw new IllegalArgumentException();
-		
-		Trace.trace(Trace.FINEST, "Possible runtime change: " + runtime);
-		
-		final RuntimeClasspathProviderWrapper rcpw = findRuntimeClasspathProvider(runtime.getRuntimeType());
-		if (rcpw != null && rcpw.hasRuntimeClasspathChanged(runtime)) {
-			final IPath serverContainerPath = new Path(RuntimeClasspathContainer.SERVER_CONTAINER)
-				.append(rcpw.getId()).append(runtime.getId());
-			
-			class RebuildRuntimeReferencesJob extends Job {
-				public RebuildRuntimeReferencesJob() {
-					super(NLS.bind(Messages.updateClasspathContainers, runtime.getName()));
-				}
-
-				public boolean belongsTo(Object family) {
-					return ServerPlugin.PLUGIN_ID.equals(family);
-				}
-
-				public IStatus run(IProgressMonitor monitor) {
-					IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
-					if (projects != null) {
-						int size = projects.length;
-						for (int i = 0; i < size; i++) {
-							if (projects[i].isAccessible()) {
-								try {
-									IJavaProject javaProject = JavaCore.create(projects[i]);
-									
-									boolean found = false;
-									IClasspathEntry[] ce = javaProject.getRawClasspath();
-									for (int j = 0; j < ce.length; j++) {
-										if (ce[j].getEntryKind() == IClasspathEntry.CPE_CONTAINER) {
-											if (serverContainerPath.isPrefixOf(ce[j].getPath()))
-												found = true;
-										}
-									}
-									
-									Trace.trace(Trace.FINEST, "Classpath change on: " + projects[i] + " " + found);
-									
-									if (found) {
-										RuntimeClasspathContainer container = new RuntimeClasspathContainer(
-												serverContainerPath, rcpw, runtime);
-										JavaCore.setClasspathContainer(serverContainerPath, new IJavaProject[] { javaProject },
-												new IClasspathContainer[] {container}, null);
-									}
-								} catch (Exception e) {
-									Trace.trace(Trace.SEVERE, "Could not update classpath container", e);
-								}
-							}
-						}
-					}
-					
-					return Status.OK_STATUS;
-				}
-			}
-			RebuildRuntimeReferencesJob job = new RebuildRuntimeReferencesJob();
-			job.schedule();
-		}
-	}
-
-	/**
-	 * Convenience method for logging.
-	 *
-	 * @param status a status
-	 */
-	public static void log(IStatus status) {
-		getInstance().getLog().log(status);
-	}
-	
-	/**
-	 * Convenience method for logging.
-	 *
-	 * @param t a throwable
-	 */
-	public static void log(Throwable t) {
-		log(new Status(IStatus.ERROR, PLUGIN_ID, IStatus.ERROR, "Internal error", t)); //$NON-NLS-1$
-	}
-
-	/**
-	 * Returns an array of all known runtime classpath provider instances.
-	 * <p>
-	 * A new array is returned on each call, so clients may store or modify the result.
-	 * </p>
-	 * 
-	 * @return a possibly-empty array of runtime classpath provider instances
-	 *    {@link RuntimeClasspathProviderWrapper}
-	 */
-	public static RuntimeClasspathProviderWrapper[] getRuntimeClasspathProviders() {
-		if (runtimeClasspathProviders == null)
-			loadRuntimeClasspathProviders();
-		
-		RuntimeClasspathProviderWrapper[] rth = new RuntimeClasspathProviderWrapper[runtimeClasspathProviders.size()];
-		runtimeClasspathProviders.toArray(rth);
-		return rth;
-	}
-
-	/**
-	 * Returns the runtime classpath provider that supports the given runtime type, or <code>null</code>
-	 * if none. This convenience method searches the list of known runtime
-	 * classpath providers ({@link #getRuntimeClasspathProviders()}) for the one with
-	 * a matching runtime type.
-	 * The runtimeType may not be null.
-	 *
-	 * @param runtimeType a runtime type
-	 * @return the runtime classpath provider instance, or <code>null</code> if
-	 *   there is no runtime classpath provider with the given id
-	 */
-	public static RuntimeClasspathProviderWrapper findRuntimeClasspathProvider(IRuntimeType runtimeType) {
-		if (runtimeType == null)
-			throw new IllegalArgumentException();
-
-		if (runtimeClasspathProviders == null)
-			loadRuntimeClasspathProviders();
-		
-		Iterator iterator = runtimeClasspathProviders.iterator();
-		while (iterator.hasNext()) {
-			RuntimeClasspathProviderWrapper runtimeClasspathProvider = (RuntimeClasspathProviderWrapper) iterator.next();
-			if (runtimeClasspathProvider.supportsRuntimeType(runtimeType))
-				return runtimeClasspathProvider;
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the runtime classpath provider with the given id, or <code>null</code>
-	 * if none. This convenience method searches the list of known runtime
-	 * classpath providers ({@link #getRuntimeClasspathProviders()}) for the one with
-	 * a matching runtime classpath provider id ({@link RuntimeClasspathProviderWrapper#getId()}).
-	 * The id may not be null.
-	 *
-	 * @param id the runtime classpath provider id
-	 * @return the runtime classpath provider instance, or <code>null</code> if
-	 *   there is no runtime classpath provider with the given id
-	 */
-	public static RuntimeClasspathProviderWrapper findRuntimeClasspathProvider(String id) {
-		if (id == null)
-			throw new IllegalArgumentException();
-
-		if (runtimeClasspathProviders == null)
-			loadRuntimeClasspathProviders();
-		
-		Iterator iterator = runtimeClasspathProviders.iterator();
-		while (iterator.hasNext()) {
-			RuntimeClasspathProviderWrapper runtimeClasspathProvider = (RuntimeClasspathProviderWrapper) iterator.next();
-			if (id.equals(runtimeClasspathProvider.getId()))
-				return runtimeClasspathProvider;
-		}
-		return null;
-	}
-
-	/**
-	 * Load the runtime classpath providers.
-	 */
-	private static synchronized void loadRuntimeClasspathProviders() {
-		if (runtimeClasspathProviders != null)
-			return;
-		Trace.trace(Trace.CONFIG, "->- Loading .runtimeClasspathProviders extension point ->-");
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IConfigurationElement[] cf = registry.getConfigurationElementsFor(JavaServerPlugin.PLUGIN_ID, "runtimeClasspathProviders");
-
-		int size = cf.length;
-		runtimeClasspathProviders = new ArrayList(size);
-		for (int i = 0; i < size; i++) {
-			try {
-				RuntimeClasspathProviderWrapper runtimeClasspathProvider = new RuntimeClasspathProviderWrapper(cf[i]);
-				runtimeClasspathProviders.add(runtimeClasspathProvider);
-				Trace.trace(Trace.CONFIG, "  Loaded runtimeClasspathProviders: " + cf[i].getAttribute("id"));
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "  Could not load runtimeClasspathProviders: " + cf[i].getAttribute("id"), t);
-			}
-		}
-		
-		Trace.trace(Trace.CONFIG, "-<- Done loading .runtimeClasspathProviders extension point -<-");
-	}
-	
-	/**
-	 * Returns an array of all known runtime classpath provider instances.
-	 * <p>
-	 * A new array is returned on each call, so clients may store or modify the result.
-	 * </p>
-	 * 
-	 * @return a possibly-empty array of runtime classpath provider instances
-	 *    {@link RuntimeClasspathProviderWrapper}
-	 */
-	public static RuntimeFacetMapping[] getRuntimeFacetMapping() {
-		if (runtimeFacetMappings == null)
-			loadRuntimeFacetMapping();
-		
-		RuntimeFacetMapping[] rfm = new RuntimeFacetMapping[runtimeFacetMappings.size()];
-		runtimeFacetMappings.toArray(rfm);
-		return rfm;
-	}
-
-	/**
-	 * Load the runtime facet mappings.
-	 */
-	private static synchronized void loadRuntimeFacetMapping() {
-		if (runtimeFacetMappings != null)
-			return;
-		Trace.trace(Trace.CONFIG, "->- Loading .runtimeFacetMapping extension point ->-");
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IConfigurationElement[] cf = registry.getConfigurationElementsFor(JavaServerPlugin.PLUGIN_ID, "runtimeFacetMappings");
-
-		int size = cf.length;
-		runtimeFacetMappings = new ArrayList(size);
-		for (int i = 0; i < size; i++) {
-			try {
-				RuntimeFacetMapping rfm = new RuntimeFacetMapping(cf[i]);
-				runtimeFacetMappings.add(rfm);
-				Trace.trace(Trace.CONFIG, "  Loaded runtimeFacetMapping: " + cf[i].getAttribute("id"));
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "  Could not load runtimeFacetMapping: " + cf[i].getAttribute("id"), t);
-			}
-		}
-		
-		Trace.trace(Trace.CONFIG, "-<- Done loading .runtimeFacetMapping extension point -<-");
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/LaunchConfigurationUtil.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/LaunchConfigurationUtil.java
deleted file mode 100644
index 6b94bbe..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/LaunchConfigurationUtil.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.server.core.internal;
-/**
- * 
- */
-public class LaunchConfigurationUtil {
-	/**
-	 * Gets the classpath from the launch configuration of the given server.
-	 * If create is false, it will return null if there is no launch configuration
-	 * (i.e. the server has not been run before) If create is true, it will create
-	 * a launch configuration if one does not exist.
-	 *
-	 * @param server
-	 * @param create
-	 * @param monitor a progress monitor
-	 * @return an array containing runtime classpath entries
-	 * @throws CoreException
-	 */
-	/*public static IRuntimeClasspathEntry[] getClasspath(IServer server, boolean create, IProgressMonitor monitor) throws CoreException {
-		ILaunchConfiguration config = server.getLaunchConfiguration(create, monitor);
-		if (config == null)
-			return null;
-		
-		return JavaRuntime.computeUnresolvedRuntimeClasspath(config);
-	}*/
-
-	/**
-	 * Sets the classpath on the given server's launch configuration.
-	 *
-	 * @param server
-	 * @param classpath
-	 * @throws CoreException
-	 */
-	/*public static void setClasspath(IServer server, IRuntimeClasspathEntry[] classpath, IProgressMonitor monitor) throws CoreException {
-		ILaunchConfiguration config = server.getLaunchConfiguration(true, monitor);
-		ILaunchConfigurationWorkingCopy wc = config.getWorkingCopy();
-		wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_DEFAULT_CLASSPATH, false);
-	
-		List mementos = new ArrayList(classpath.length);
-		for (int i = 0; i < classpath.length; i++) {
-			IRuntimeClasspathEntry entry = classpath[i];
-			mementos.add(entry.getMemento());
-		}
-		wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_CLASSPATH, mementos);
-		wc.doSave();
-	}*/
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/Messages.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/Messages.java
deleted file mode 100644
index 2da8a29..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/Messages.java
+++ /dev/null
@@ -1,34 +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.server.core.internal;
-
-import org.eclipse.osgi.util.NLS;
-/**
- * Translated messages.
- */
-public class Messages extends NLS {
-	public static String errorLocation;
-	public static String errorJRE;
-	public static String classpathContainerDescription;
-	
-	public static String copyingTask;
-	public static String deletingTask;
-	public static String errorCopyingFile;
-	public static String errorCreatingZipFile;
-	public static String errorDelete;
-	public static String errorRename;
-	public static String errorReading;
-	public static String updateClasspathContainers;
-	
-	static {
-		NLS.initializeMessages(JavaServerPlugin.PLUGIN_ID + ".internal.Messages", Messages.class);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/Messages.properties b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/Messages.properties
deleted file mode 100644
index e203f8b..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/Messages.properties
+++ /dev/null
@@ -1,25 +0,0 @@
-###############################################################################
-# Copyright (c) 2004, 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
-###############################################################################
-
-classpathContainerDescription=Server Classpath Container
-
-errorLocation=Invalid location.
-errorJRE=Invalid JRE.
-
-copyingTask=Copying from {0} to {1}
-deletingTask=Deleting {0}
-errorCopyingFile=Error copying file to {0}: {1}
-errorCreatingZipFile=Error creating zip file {0}: {1}
-errorDelete=Error deleting {0}
-errorRename=Error renaming {0} to {1}
-errorReading=Error reading file {0}
-
-updateClasspathContainers=Updating classpath container for {0}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/ProgressUtil.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/ProgressUtil.java
deleted file mode 100644
index 55bbe1c..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/ProgressUtil.java
+++ /dev/null
@@ -1,69 +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.server.core.internal;
-
-import org.eclipse.core.runtime.*;
-/**
- * Progress Monitor utility.
- */
-public class ProgressUtil {
-	/**
-	 * ProgressUtil constructor comment.
-	 */
-	private ProgressUtil() {
-		super();
-	}
-
-	/**
-	 * Return a valid progress monitor.
-	 *
-	 * @param monitor org.eclipse.core.runtime.IProgressMonitor
-	 * @return org.eclipse.core.runtime.IProgressMonitor
-	 */
-	public static IProgressMonitor getMonitorFor(IProgressMonitor monitor) {
-		if (monitor == null)
-			return new NullProgressMonitor();
-		return monitor;
-	}
-
-	/**
-	 * Return a sub-progress monitor with the given amount on the
-	 * current progress monitor.
-	 *
-	 * @param monitor org.eclipse.core.runtime.IProgressMonitor
-	 * @param ticks int
-	 * @return org.eclipse.core.runtime.IProgressMonitor
-	 */
-	public static IProgressMonitor getSubMonitorFor(IProgressMonitor monitor, int ticks) {
-		if (monitor == null)
-			return new NullProgressMonitor();
-		if (monitor instanceof NullProgressMonitor)
-			return monitor;
-		return new SubProgressMonitor(monitor, ticks);
-	}
-
-	/**
-	 * Return a sub-progress monitor with the given amount on the
-	 * current progress monitor.
-	 *
-	 * @param monitor org.eclipse.core.runtime.IProgressMonitor
-	 * @param ticks a number of ticks
-	 * @param style a style
-	 * @return org.eclipse.core.runtime.IProgressMonitor
-	 */
-	public static IProgressMonitor getSubMonitorFor(IProgressMonitor monitor, int ticks, int style) {
-		if (monitor == null)
-			return new NullProgressMonitor();
-		if (monitor instanceof NullProgressMonitor)
-			return monitor;
-		return new SubProgressMonitor(monitor, ticks, style);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeBridge.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeBridge.java
deleted file mode 100644
index 8739930..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeBridge.java
+++ /dev/null
@@ -1,194 +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
- *    IBM Corporation - Support for all server types
- ******************************************************************************/
-package org.eclipse.jst.server.core.internal;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.launching.IVMInstall;
-import org.eclipse.jdt.launching.IVMInstall2;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.jst.server.core.IJavaRuntime;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntimeBridge;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntimeComponentVersion;
-import org.eclipse.wst.common.project.facet.core.runtime.RuntimeManager;
-import org.eclipse.wst.server.core.IRuntime;
-import org.eclipse.wst.server.core.IRuntimeType;
-import org.eclipse.wst.server.core.ServerCore;
-import org.eclipse.wst.server.core.internal.Runtime;
-/**
- * 
- */
-public class RuntimeBridge implements IRuntimeBridge {
-	protected static final String CLASSPATH = "classpath";
-
-	protected static Map mappings = new HashMap();
-
-	static {
-		initialize();
-	}
-
-	private static void addMapping(String id, String id2, String version) {
-		try {
-			mappings.put(id, RuntimeManager.getRuntimeComponentType(id2).getVersion(version));
-		} catch (Exception e) {
-			// ignore
-		}
-	}
-
-	private static void initialize() {
-		RuntimeFacetMapping[] rfms = JavaServerPlugin.getRuntimeFacetMapping();
-		int size = rfms.length;
-		for (int i = 0; i < size; i++)
-			addMapping(rfms[i].getRuntimeTypeId(), rfms[i].getRuntimeComponent(), rfms[i].getVersion());
-
-		// generic runtimes
-		addMapping("org.eclipse.jst.server.generic.runtime.weblogic81", "org.eclipse.jst.server.generic.runtime.weblogic", "8.1");
-
-		addMapping("org.eclipse.jst.server.generic.runtime.weblogic90", "org.eclipse.jst.server.generic.runtime.weblogic", "9.0");
-
-		addMapping("org.eclipse.jst.server.generic.runtime.jboss323", "org.eclipse.jst.server.generic.runtime.jboss", "3.2.3");
-
-		addMapping("org.eclipse.jst.server.generic.runtime.jonas4", "org.eclipse.jst.server.generic.runtime.jonas", "4.0");
-		
-		addMapping("org.eclipse.jst.server.generic.runtime.oracle1013", "org.eclipse.jst.server.generic.runtime.oracle", "10.1.3");
-		
-		addMapping("org.eclipse.jst.server.generic.runtime.websphere.6", "org.eclipse.jst.server.generic.runtime.websphere", "6.0");
-	}
-
-	public Set getExportedRuntimeNames() throws CoreException {
-		IRuntime[] runtimes = ServerCore.getRuntimes();
-		Set result = new HashSet(runtimes.length);
-		
-		for (int i = 0; i < runtimes.length; i++) {
-			IRuntime runtime = runtimes[i];
-			IRuntimeType runtimeType = runtime.getRuntimeType();
-			if (runtimeType != null && mappings.containsKey(runtimeType.getId())) {
-				result.add(runtime.getName());
-			}
-		}
-		
-		return result;
-	}
-
-	public IStub bridge(String name) throws CoreException {
-		if (name == null)
-			throw new IllegalArgumentException();
-		
-		IRuntime[] runtimes = ServerCore.getRuntimes();
-		int size = runtimes.length;
-		for (int i = 0; i < size; i++) {
-			if (runtimes[i].getName().equals(name))
-				return new Stub(runtimes[i]);
-		}
-		return null;
-	}
-
-	private static class Stub implements IStub {
-		private IRuntime runtime;
-		protected int timestamp = -1;
-		protected IVMInstall vmInstall;
-		protected String jvmver;
-
-		public Stub(IRuntime runtime) {
-			this.runtime = runtime;
-		}
-
-		public List getRuntimeComponents() {
-			List components = new ArrayList(2);
-			if (runtime == null)
-				return components;
-			
-			// define server runtime component
-			String typeId = runtime.getRuntimeType().getId();
-			IRuntimeComponentVersion mapped = (IRuntimeComponentVersion) mappings.get(typeId);
-			
-			Map properties = new HashMap(5);
-			if (runtime.getLocation() != null)
-				properties.put("location", runtime.getLocation().toPortableString());
-			else
-				properties.put("location", "");
-			properties.put("name", runtime.getName());
-			properties.put("type", runtime.getRuntimeType().getName());
-			properties.put("id", runtime.getId());
-			
-			RuntimeClasspathProviderWrapper rcpw = JavaServerPlugin.findRuntimeClasspathProvider(runtime.getRuntimeType());
-			if (rcpw != null) {
-				IPath path = new Path(RuntimeClasspathContainer.SERVER_CONTAINER);
-				path = path.append(rcpw.getId()).append(runtime.getId());
-				properties.put(CLASSPATH, path.toPortableString());
-			}
-			
-			components.add(RuntimeManager.createRuntimeComponent(mapped, properties));
-			
-			// define JRE component
-			IJavaRuntime javaRuntime = (IJavaRuntime) runtime.loadAdapter(IJavaRuntime.class, null);
-			if (javaRuntime != null) {
-				if (timestamp != ((Runtime) runtime).getTimestamp()) {
-					vmInstall = null;
-					jvmver = null;
-					timestamp = ((Runtime) runtime).getTimestamp();
-				}
-				if (vmInstall == null)
-					vmInstall = javaRuntime.getVMInstall(); 
-				if (jvmver == null) {
-					IVMInstall2 vmInstall2 = (IVMInstall2) vmInstall;
-					if (vmInstall2 != null)
-						jvmver = vmInstall2.getJavaVersion();
-				}
-				IRuntimeComponentVersion rcv;
-				
-				if (jvmver == null)
-					rcv = RuntimeManager.getRuntimeComponentType("standard.jre").getVersion("1.4");
-				else if (jvmver.startsWith("1.3"))
-					rcv = RuntimeManager.getRuntimeComponentType("standard.jre").getVersion("1.3");
-				else if (jvmver.startsWith("1.5") || jvmver.startsWith("5.0"))
-					rcv = RuntimeManager.getRuntimeComponentType("standard.jre").getVersion("5.0");
-				else if (jvmver.startsWith("1.6") || jvmver.startsWith("6.0"))
-					rcv = RuntimeManager.getRuntimeComponentType("standard.jre").getVersion("5.0");
-				else // default || jvmver.startsWith("1.4"))
-					rcv = RuntimeManager.getRuntimeComponentType("standard.jre").getVersion("1.4");
-				
-				if (vmInstall != null) {
-					properties = new HashMap(3);
-					properties.put("name", vmInstall.getName());
-					IPath path = new Path(JavaRuntime.JRE_CONTAINER);
-					path = path.append(vmInstall.getVMInstallType().getId()).append(vmInstall.getName());
-					properties.put(CLASSPATH, path.toPortableString());
-					components.add(RuntimeManager.createRuntimeComponent(rcv, properties));
-				} else {
-					properties = new HashMap(3);
-					properties.put("name", "-");
-					IPath path = new Path(JavaRuntime.JRE_CONTAINER);
-					properties.put(CLASSPATH, path.toPortableString());
-					components.add(RuntimeManager.createRuntimeComponent(rcv, properties));
-				}
-			}
-			
-			return components;
-		}
-
-		public Map getProperties() {
-			if (runtime == null)
-				return new HashMap(0);
-			return Collections.singletonMap("id", runtime.getId());
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeClasspathContainer.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeClasspathContainer.java
deleted file mode 100644
index a429a52..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeClasspathContainer.java
+++ /dev/null
@@ -1,99 +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.server.core.internal;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.IClasspathContainer;
-import org.eclipse.jdt.core.IClasspathEntry;
-
-import org.eclipse.wst.server.core.IRuntime;
-/**
- * 
- */
-public class RuntimeClasspathContainer implements IClasspathContainer {
-	/**
-	 * The server container id.
-	 */
-	public static final String SERVER_CONTAINER = JavaServerPlugin.PLUGIN_ID + ".container";
-
-	private IPath path;
-	private RuntimeClasspathProviderWrapper delegate;
-	private IRuntime runtime;
-
-	/**
-	 * Create a new runtime classpath container.
-	 * 
-	 * @param path
-	 * @param delegate
-	 * @param runtime
-	 * @param id
-	 * @deprecated should use the equivalent method without the unused id variable
-	 */
-	public RuntimeClasspathContainer(IPath path, RuntimeClasspathProviderWrapper delegate, IRuntime runtime, String id) {
-		this.path = path;
-		this.delegate = delegate;
-		this.runtime = runtime;
-	}
-
-	/**
-	 * Create a new runtime classpath container.
-	 * 
-	 * @param path
-	 * @param delegate
-	 * @param runtime
-	 */
-	public RuntimeClasspathContainer(IPath path, RuntimeClasspathProviderWrapper delegate, IRuntime runtime) {
-		this.path = path;
-		this.delegate = delegate;
-		this.runtime = runtime;
-	}
-
-	/** (non-Javadoc)
-	 * @see org.eclipse.jdt.core.IClasspathContainer#getClasspathEntries()
-	 */
-	public IClasspathEntry[] getClasspathEntries() {
-		IClasspathEntry[] entries = null;
-		if (delegate != null && runtime != null)
-			entries = delegate.resolveClasspathContainerImpl(runtime);
-		
-		if (entries == null)
-			return new IClasspathEntry[0];
-		
-		return entries;
-	}
-
-	/** (non-Javadoc)
-	 * @see org.eclipse.jdt.core.IClasspathContainer#getDescription()
-	 */
-	public String getDescription() {
-		if (runtime != null && delegate != null) {
-			String s = delegate.getClasspathContainerLabel(runtime);
-			if (s != null)
-				return s;
-		}
-		
-		return Messages.classpathContainerDescription;
-	}
-
-	/** (non-Javadoc)
-	 * @see org.eclipse.jdt.core.IClasspathContainer#getKind()
-	 */
-	public int getKind() {
-		return IClasspathContainer.K_APPLICATION;
-	}
-
-	/** (non-Javadoc)
-	 * @see org.eclipse.jdt.core.IClasspathContainer#getPath()
-	 */
-	public IPath getPath() {
-		return path;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeClasspathContainerInitializer.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeClasspathContainerInitializer.java
deleted file mode 100644
index 15c5091..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeClasspathContainerInitializer.java
+++ /dev/null
@@ -1,85 +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.server.core.internal;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.*;
-import org.eclipse.wst.server.core.IRuntime;
-import org.eclipse.wst.server.core.ServerCore;
-/**
- * 
- */
-public class RuntimeClasspathContainerInitializer extends ClasspathContainerInitializer {
-	/** (non-Javadoc)
-	 * @see org.eclipse.jdt.core.ClasspathContainerInitializer#initialize(org.eclipse.core.runtime.IPath, org.eclipse.jdt.core.IJavaProject)
-	 */
-	public void initialize(IPath containerPath, IJavaProject project) throws CoreException {
-		if (containerPath.segmentCount() > 0) {
-			if (containerPath.segment(0).equals(RuntimeClasspathContainer.SERVER_CONTAINER)) {
-				RuntimeClasspathProviderWrapper delegate = null;
-				IRuntime runtime = null;
-				if (containerPath.segmentCount() > 2) {
-					delegate = JavaServerPlugin.findRuntimeClasspathProvider(containerPath.segment(1));
-					
-					String runtimeId = containerPath.segment(2);
-					if (runtimeId != null)
-						runtime = ServerCore.findRuntime(runtimeId);
-				}
-				RuntimeClasspathContainer container = new RuntimeClasspathContainer(containerPath, delegate, runtime);
-				JavaCore.setClasspathContainer(containerPath, new IJavaProject[] {project}, new IClasspathContainer[] {container}, null);
-			}
-		}
-	}
-
-	/** (non-Javadoc)
-	 * @see org.eclipse.jdt.core.ClasspathContainerInitializer#getDescription(org.eclipse.core.runtime.IPath, org.eclipse.jdt.core.IJavaProject)
-	 */
-	public String getDescription(IPath containerPath, IJavaProject project) {
-		return Messages.classpathContainerDescription;
-	}
-
-	/** (non-Javadoc)
-	 * @see org.eclipse.jdt.core.ClasspathContainerInitializer#canUpdateClasspathContainer(org.eclipse.core.runtime.IPath, org.eclipse.jdt.core.IJavaProject)
-	 */
-	public boolean canUpdateClasspathContainer(IPath containerPath, IJavaProject project) {
-		return true;
-	}
-
-	/** (non-Javadoc)
-	 * @see org.eclipse.jdt.core.ClasspathContainerInitializer#requestClasspathContainerUpdate(org.eclipse.core.runtime.IPath, org.eclipse.jdt.core.IJavaProject, org.eclipse.jdt.core.IClasspathContainer)
-	 */
-	public void requestClasspathContainerUpdate(IPath containerPath, IJavaProject project, IClasspathContainer containerSuggestion) throws CoreException {
-		if (containerPath.segmentCount() > 0) {
-			if (containerPath.segment(0).equals(RuntimeClasspathContainer.SERVER_CONTAINER)) {
-				RuntimeClasspathProviderWrapper delegate = null;
-				IRuntime runtime = null;
-				if (containerPath.segmentCount() > 2) {
-					delegate = JavaServerPlugin.findRuntimeClasspathProvider(containerPath.segment(1));
-					String runtimeId = containerPath.segment(2);
-					if (runtimeId != null)
-						runtime = ServerCore.findRuntime(runtimeId);
-					delegate.requestClasspathContainerUpdate(runtime, containerSuggestion.getClasspathEntries());
-				}
-			}
-		}
-	}
-
-	/** (non-Javadoc)
-	 * @see org.eclipse.jdt.core.ClasspathContainerInitializer#getComparisonID(org.eclipse.core.runtime.IPath, org.eclipse.jdt.core.IJavaProject)
-	 */
-	public Object getComparisonID(IPath containerPath, IJavaProject project) {
-		if (containerPath == null)
-			return null;
-		
-		return containerPath.toPortableString();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeClasspathProvider.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeClasspathProvider.java
deleted file mode 100644
index bae44c6..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeClasspathProvider.java
+++ /dev/null
@@ -1,70 +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
- *    IBM Corporation - Support for all server types
- ******************************************************************************/
-package org.eclipse.jst.server.core.internal;
-
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jst.common.project.facet.core.IClasspathProvider;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntimeComponent;
-/**
- * 
- */
-public final class RuntimeClasspathProvider implements IClasspathProvider {
-	private static final IProjectFacet WEB_FACET = ProjectFacetsManager.getProjectFacet("jst.web");
-	private static final IProjectFacet EJB_FACET = ProjectFacetsManager.getProjectFacet("jst.ejb");
-	private static final IProjectFacet EAR_FACET = ProjectFacetsManager.getProjectFacet("jst.ear");
-	private static final IProjectFacet UTILITY_FACET = ProjectFacetsManager.getProjectFacet("jst.utility");
-	private static final IProjectFacet CONNECTOR_FACET = ProjectFacetsManager.getProjectFacet("jst.connector");
-	private static final IProjectFacet APP_CLIENT_FACET = ProjectFacetsManager.getProjectFacet("jst.appclient");
-
-	private final IRuntimeComponent rc;
-
-	public RuntimeClasspathProvider(final IRuntimeComponent rc) {
-		this.rc = rc;
-	}
-
-	public List getClasspathEntries(final IProjectFacetVersion fv) {
-		IProjectFacet pf = fv.getProjectFacet();
-		if (WEB_FACET.equals(pf) || EJB_FACET.equals(pf) || EAR_FACET.equals(pf) ||
-				UTILITY_FACET.equals(pf) || CONNECTOR_FACET.equals(pf) || APP_CLIENT_FACET.equals(pf)) {
-			String s = rc.getProperty(RuntimeBridge.CLASSPATH);
-			if (s == null || s.length() == 0)
-				return null;
-
-			IClasspathEntry cpentry = JavaCore.newContainerEntry(new Path(s));
-			return Collections.singletonList(cpentry);
-		}
-		
-		return null;
-	}
-
-	public static final class Factory implements IAdapterFactory {
-		private static final Class[] ADAPTER_TYPES = { IClasspathProvider.class };
-
-		public Object getAdapter(final Object adaptable, final Class adapterType) {
-			IRuntimeComponent rc = (IRuntimeComponent) adaptable;
-			return new RuntimeClasspathProvider(rc);
-		}
-
-		public Class[] getAdapterList() {
-			return ADAPTER_TYPES;
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeClasspathProviderWrapper.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeClasspathProviderWrapper.java
deleted file mode 100644
index 94c7ccd..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeClasspathProviderWrapper.java
+++ /dev/null
@@ -1,185 +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.server.core.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jst.server.core.RuntimeClasspathProviderDelegate;
-import org.eclipse.wst.server.core.*;
-/**
- * 
- */
-public class RuntimeClasspathProviderWrapper {
-	private IConfigurationElement element;
-	private RuntimeClasspathProviderDelegate delegate;
-
-	/**
-	 * Create a new runtime target handler.
-	 * 
-	 * @param element a configuration element
-	 */
-	public RuntimeClasspathProviderWrapper(IConfigurationElement element) {
-		super();
-		this.element = element;
-	}
-	
-	protected IConfigurationElement getElement() {
-		return element;
-	}
-
-	/**
-	 * 
-	 * @return the id
-	 */
-	public String getId() {
-		return element.getAttribute("id");
-	}
-
-	/**
-	 * Returns the order.
-	 *
-	 * @return the order
-	 */
-	public int getOrder() {
-		try {
-			String o = element.getAttribute("order");
-			return Integer.parseInt(o);
-		} catch (NumberFormatException e) {
-			return -1;
-		}
-	}
-
-	public String[] getRuntimeTypeIds() {
-		try {
-			List list = new ArrayList();
-			StringTokenizer st = new StringTokenizer(element.getAttribute("runtimeTypeIds"), ",");
-			while (st.hasMoreTokens()) {
-				String str = st.nextToken();
-				if (str != null && str.length() > 0)
-					list.add(str.trim());
-			}
-			String[] s = new String[list.size()];
-			list.toArray(s);
-			return s;
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not parse runtime type ids: " + element);
-			return null;
-		}
-	}
-
-	/**
-	 * Returns true if the given server resource type (given by the
-	 * id) can be opened with this editor. This result is based on
-	 * the result of the getServerResources() method.
-	 *
-	 * @param runtimeType a runtime type
-	 * @return boolean
-	 */
-	public boolean supportsRuntimeType(IRuntimeType runtimeType) {
-		if (runtimeType == null)
-			return false;
-		String id = runtimeType.getId();
-		if (id == null || id.length() == 0)
-			return false;
-
-		String[] s = getRuntimeTypeIds();
-		if (s == null)
-			return false;
-		
-		int size = s.length;
-		for (int i = 0; i < size; i++) {
-			if (s[i].endsWith("*")) {
-				if (id.length() >= s[i].length() && id.startsWith(s[i].substring(0, s[i].length() - 1)))
-					return true;
-			} else if (id.equals(s[i]))
-				return true;
-		}
-		return false;
-	}
-
-	/*
-	 * Loads the delegate class.
-	 */
-	public RuntimeClasspathProviderDelegate getDelegate() {
-		if (delegate == null) {
-			try {
-				delegate = (RuntimeClasspathProviderDelegate) element.createExecutableExtension("class");
-				delegate.initialize(getId());
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "Could not create delegate " + toString() + ": " + t.getMessage());
-			}
-		}
-		return delegate;
-	}
-
-	/*
-	 * @see RuntimeClasspathProviderDelegate#resolveClasspathContainerImpl(IRuntime)
-	 */
-	public IClasspathEntry[] resolveClasspathContainerImpl(IRuntime runtime) {
-		if (runtime == null)
-			return null;
-		try {
-			return getDelegate().resolveClasspathContainerImpl(runtime, "");
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate " + toString() + ": " + e.getMessage());
-		}
-		return null;
-	}
-
-	/*
-	 * @see RuntimeClasspathProviderDelegate#getClasspathContainerLabel(IRuntime)
-	 */
-	public String getClasspathContainerLabel(IRuntime runtime) {
-		if (runtime == null)
-			return "n/a";
-		try {
-			return getDelegate().getClasspathContainerLabel(runtime, "");
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate " + toString() + ": " + e.getMessage());
-		}
-		return "n/a";
-	}
-
-	/*
-	 * @see RuntimeClasspathProviderDelegate#requestClasspathContainerUpdate(IRuntime, IClasspathEntry[])
-	 */
-	public void requestClasspathContainerUpdate(IRuntime runtime, IClasspathEntry[] entries) {
-		if (runtime == null)
-			return;
-		try {
-			getDelegate().requestClasspathContainerUpdate(runtime, "", entries);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate " + toString() + ": " + e.getMessage());
-		}
-	}
-
-	/*
-	 * @see RuntimeClasspathProviderDelegate#hasRuntimeClasspathChanged(IRuntime)
-	 */
-	public boolean hasRuntimeClasspathChanged(IRuntime runtime) {
-		if (runtime == null)
-			return false;
-		try {
-			return getDelegate().hasRuntimeClasspathChanged(runtime);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate " + toString() + ": " + e.getMessage());
-		}
-		return false;
-	}
-
-	public String toString() {
-		return "RuntimeClasspathProviderWrapper[" + getId() + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeFacetMapping.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeFacetMapping.java
deleted file mode 100644
index ea829a8..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeFacetMapping.java
+++ /dev/null
@@ -1,65 +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.server.core.internal;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-/**
- * 
- */
-public class RuntimeFacetMapping {
-	private IConfigurationElement element;
-
-	/**
-	 * Create a new runtime facet mapping.
-	 * 
-	 * @param element a configuration element
-	 */
-	public RuntimeFacetMapping(IConfigurationElement element) {
-		super();
-		this.element = element;
-	}
-
-	/**
-	 * 
-	 * @return the id
-	 */
-	public String getId() {
-		return element.getAttribute("id");
-	}
-
-	/**
-	 * 
-	 * @return the id
-	 */
-	public String getRuntimeTypeId() {
-		return element.getAttribute("runtimeTypeId");
-	}
-
-	/**
-	 * 
-	 * @return the id
-	 */
-	public String getVersion() {
-		return element.getAttribute("version");
-	}
-
-	/**
-	 * 
-	 * @return the id
-	 */
-	public String getRuntimeComponent() {
-		return element.getAttribute("runtime-component");
-	}
-
-	public String toString() {
-		return "RuntimeFacetMapping[" + getId() + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/StandardJreClasspathProvider.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/StandardJreClasspathProvider.java
deleted file mode 100644
index 943fe1b..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/StandardJreClasspathProvider.java
+++ /dev/null
@@ -1,59 +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
- *    IBM Corporation - Cleanup
- ******************************************************************************/
-package org.eclipse.jst.server.core.internal;
-
-import java.util.Collections;
-import java.util.List;
-
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jst.common.project.facet.core.IClasspathProvider;
-import org.eclipse.wst.common.project.facet.core.IProjectFacet;
-import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
-import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntimeComponent;
-/**
- * 
- */
-public final class StandardJreClasspathProvider implements IClasspathProvider {
-	private static final IProjectFacet JAVA_FACET = ProjectFacetsManager.getProjectFacet("jst.java");
-
-	private IRuntimeComponent rc;
-
-	public StandardJreClasspathProvider(final IRuntimeComponent rc) {
-		this.rc = rc;
-	}
-
-	public List getClasspathEntries(final IProjectFacetVersion fv) {
-		if (fv.getProjectFacet() == JAVA_FACET) {
-			IClasspathEntry cpentry = JavaCore.newContainerEntry(new Path(rc.getProperty(RuntimeBridge.CLASSPATH)));
-			return Collections.singletonList(cpentry);
-		}
-
-		return null;
-	}
-
-	public static final class Factory implements IAdapterFactory {
-		private static final Class[] ADAPTER_TYPES = { IClasspathProvider.class };
-
-		public Object getAdapter(final Object adaptable, final Class adapterType) {
-			IRuntimeComponent rc = (IRuntimeComponent) adaptable;
-			return new StandardJreClasspathProvider(rc);
-		}
-
-		public Class[] getAdapterList() {
-			return ADAPTER_TYPES;
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/Trace.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/Trace.java
deleted file mode 100644
index ff7db57..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/Trace.java
+++ /dev/null
@@ -1,65 +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.server.core.internal;
-/**
- * Helper class to route trace output.
- */
-public class Trace {
-	/**
-	 * Config tracing
-	 */
-	public static byte CONFIG = 0;
-	/**
-	 * Warning tracing
-	 */
-	public static byte WARNING = 1;
-	/**
-	 * Severe tracing
-	 */
-	public static byte SEVERE = 2;
-	/**
-	 * Finest tracing
-	 */
-	public static byte FINEST = 3;
-
-	/**
-	 * Trace constructor comment.
-	 */
-	private Trace() {
-		super();
-	}
-
-	/**
-	 * Trace the given text.
-	 *
-	 * @param level trace level
-	 * @param s String
-	 */
-	public static void trace(byte level, String s) {
-		Trace.trace(level, s, null);
-	}
-	
-	/**
-	 * Trace the given message and exception.
-	 *
-	 * @param level trace level
-	 * @param s String
-	 * @param t Throwable
-	 */
-	public static void trace(byte level, String s, Throwable t) {
-		if (!JavaServerPlugin.getInstance().isDebugging())
-			return;
-
-		System.out.println(JavaServerPlugin.PLUGIN_ID + " " +s);
-		if (t != null)
-			t.printStackTrace();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/XMLMemento.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/XMLMemento.java
deleted file mode 100644
index 01b81c9..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/XMLMemento.java
+++ /dev/null
@@ -1,388 +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.server.core.internal;
-
-import java.io.*;
-import java.util.*;
-import org.w3c.dom.*;
-import org.xml.sax.*;
-
-import javax.xml.parsers.*;
-import javax.xml.transform.*;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamResult;
-/**
- * A Memento is a class independent container for persistence
- * info.  It is a reflection of 3 storage requirements.
- *
- * 1)   We need the ability to persist an object and restore it.  
- * 2)   The class for an object may be absent.  If so we would 
- *      like to skip the object and keep reading. 
- * 3)   The class for an object may change.  If so the new class 
- *      should be able to read the old persistence info.
- *
- * We could ask the objects to serialize themselves into an 
- * ObjectOutputStream, DataOutputStream, or Hashtable.  However 
- * all of these approaches fail to meet the second requirement.
- *
- * Memento supports binary persistance with a version ID.
- */
-public final class XMLMemento implements IMemento {
-	private Document factory;
-	private Element element;
-
-	/**
-	 * Answer a memento for the document and element.  For simplicity
-	 * you should use createReadRoot and createWriteRoot to create the initial
-	 * mementos on a document.
-	 */
-	private XMLMemento(Document doc, Element el) {
-		factory = doc;
-		element = el;
-	}
-
-	/**
-	 * @see IMemento#createChild(String)
-	 */
-	public IMemento createChild(String type) {
-		Element child = factory.createElement(type);
-		element.appendChild(child);
-		return new XMLMemento(factory, child);
-	}
-
-	/**
-	 * @see IMemento#createChild(String, String)
-	 */
-	public IMemento createChild(String type, String id) {
-		Element child = factory.createElement(type);
-		child.setAttribute(TAG_ID, id);
-		element.appendChild(child);
-		return new XMLMemento(factory, child);
-	}
-
-	/**
-	 * Create a Document from a Reader and answer a root memento for reading 
-	 * a document.
-	 */
-	protected static XMLMemento createReadRoot(InputStream in) {
-		Document document = null;
-		try {
-			DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
-			DocumentBuilder parser = factory.newDocumentBuilder();
-			document = parser.parse(new InputSource(in));
-			Node node = document.getFirstChild();
-			if (node instanceof Element)
-				return new XMLMemento(document, (Element) node);
-		} catch (Exception e) {
-			// ignore
-		} finally {
-			try {
-				in.close();
-			} catch (Exception e) {
-				// ignore
-			}
-		}
-		return null;
-	}
-	
-	/**
-	 * Answer a root memento for writing a document.
-	 * 
-	 * @param type a type
-	 * @return a memento
-	 */
-	public static XMLMemento createWriteRoot(String type) {
-		Document document;
-		try {
-			document = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
-			Element element = document.createElement(type);
-			document.appendChild(element);
-			return new XMLMemento(document, element);            
-		} catch (ParserConfigurationException e) {
-			throw new Error(e);
-		}
-	}
-	
-	/*
-	 * @see IMemento
-	 */
-	public IMemento getChild(String type) {
-		// Get the nodes.
-		NodeList nodes = element.getChildNodes();
-		int size = nodes.getLength();
-		if (size == 0)
-			return null;
-	
-		// Find the first node which is a child of this node.
-		for (int nX = 0; nX < size; nX ++) {
-			Node node = nodes.item(nX);
-			if (node instanceof Element) {
-				Element element2 = (Element)node;
-				if (element2.getNodeName().equals(type))
-					return new XMLMemento(factory, element2);
-			}
-		}
-	
-		// A child was not found.
-		return null;
-	}
-
-	/*
-	 * @see IMemento
-	 */
-	public IMemento [] getChildren(String type) {
-		// Get the nodes.
-		NodeList nodes = element.getChildNodes();
-		int size = nodes.getLength();
-		if (size == 0)
-			return new IMemento[0];
-	
-		// Extract each node with given type.
-		ArrayList list = new ArrayList(size);
-		for (int nX = 0; nX < size; nX ++) {
-			Node node = nodes.item(nX);
-			if (node instanceof Element) {
-				Element element2 = (Element)node;
-				if (element2.getNodeName().equals(type))
-					list.add(element2);
-			}
-		}
-	
-		// Create a memento for each node.
-		size = list.size();
-		IMemento [] results = new IMemento[size];
-		for (int x = 0; x < size; x ++) {
-			results[x] = new XMLMemento(factory, (Element)list.get(x));
-		}
-		return results;
-	}
-
-	/**
-	 * Return the contents of this memento as a byte array.
-	 *
-	 * @return byte[]
-	 * @throws IOException if anything goes wrong
-	 */
-	public byte[] getContents() throws IOException {
-		ByteArrayOutputStream out = new ByteArrayOutputStream();
-		save(out);
-		return out.toByteArray();
-	}
-
-	/**
-	 * Returns an input stream for writing to the disk with a local locale.
-	 *
-	 * @return java.io.InputStream
-	 * @throws IOException if anything goes wrong
-	 */
-	public InputStream getInputStream() throws IOException {
-		ByteArrayOutputStream out = new ByteArrayOutputStream();
-		save(out);
-		return new ByteArrayInputStream(out.toByteArray());
-	}
-
-	/*
-	 * @see IMemento
-	 */
-	public Float getFloat(String key) {
-		Attr attr = element.getAttributeNode(key);
-		if (attr == null)
-			return null; 
-		String strValue = attr.getValue();
-		try {
-			return new Float(strValue);
-		} catch (NumberFormatException e) {
-			return null;
-		}
-	}
-
-	/*
-	 * @see IMemento
-	 */
-	public String getId() {
-		return element.getAttribute(TAG_ID);
-	}
-	
-	/*
-	 * @see IMemento
-	 */
-	public String getName() {
-		return element.getNodeName();
-	}
-
-	/*
-	 * @see IMemento
-	 */
-	public Integer getInteger(String key) {
-		Attr attr = element.getAttributeNode(key);
-		if (attr == null)
-			return null; 
-		String strValue = attr.getValue();
-		try {
-			return new Integer(strValue);
-		} catch (NumberFormatException e) {
-			return null;
-		}
-	}
-
-	/*
-	 * @see IMemento
-	 */
-	public String getString(String key) {
-		Attr attr = element.getAttributeNode(key);
-		if (attr == null)
-			return null; 
-		return attr.getValue();
-	}
-	
-	public List getNames() {
-		NamedNodeMap map = element.getAttributes();
-		int size = map.getLength();
-		List list = new ArrayList();
-		for (int i = 0; i < size; i++) {
-			Node node = map.item(i);
-			String name = node.getNodeName();
-			list.add(name);
-		}
-		return list;
-	}
-
-	/**
-	 * Loads a memento from the given filename.
-	 *
-	 * @param filename java.lang.String
-	 * @return org.eclipse.ui.IMemento
-	 * @exception java.io.IOException
-	 */
-	public static IMemento loadMemento(String filename) throws IOException {
-		return XMLMemento.createReadRoot(new FileInputStream(filename));
-	}
-
-	/*
-	 * @see IMemento
-	 */
-	private void putElement(Element element2) {
-		NamedNodeMap nodeMap = element2.getAttributes();
-		int size = nodeMap.getLength();
-		for (int i = 0; i < size; i++){
-			Attr attr = (Attr)nodeMap.item(i);
-			putString(attr.getName(),attr.getValue());
-		}
-		
-		NodeList nodes = element2.getChildNodes();
-		size = nodes.getLength();
-		for (int i = 0; i < size; i ++) {
-			Node node = nodes.item(i);
-			if (node instanceof Element) {
-				XMLMemento child = (XMLMemento)createChild(node.getNodeName());
-				child.putElement((Element)node);
-			}
-		}
-	}
-
-	/*
-	 * @see IMemento
-	 */
-	public void putFloat(String key, float f) {
-		element.setAttribute(key, String.valueOf(f));
-	}
-
-	/*
-	 * @see IMemento
-	 */
-	public void putInteger(String key, int n) {
-		element.setAttribute(key, String.valueOf(n));
-	}
-
-	/*
-	 * @see IMemento
-	 */
-	public void putMemento(IMemento memento) {
-		XMLMemento xmlMemento = (XMLMemento) memento;
-		putElement(xmlMemento.element);
-	}
-
-	/*
-	 * @see IMemento
-	 */
-	public void putString(String key, String value) {
-		if (value == null)
-			return;
-		element.setAttribute(key, value);
-	}
-	
-	/**
-	 * Save this Memento to a Writer.
-	 * 
-	 * @param os an output stream
-	 * @throws IOException if anything goes wrong
-	 */
-	public void save(OutputStream os) throws IOException {
-		Result result = new StreamResult(os);
-		Source source = new DOMSource(factory);
-		try {
-			Transformer transformer = TransformerFactory.newInstance().newTransformer();
-			transformer.setOutputProperty(OutputKeys.INDENT, "yes");
-			transformer.setOutputProperty(OutputKeys.METHOD, "xml");
-			transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
-			transformer.setOutputProperty("{http://xml.apache.org/xalan}indent-amount", "2");
-			transformer.transform(source, result);
-		} catch (Exception e) {
-			throw (IOException) (new IOException().initCause(e));
-		}
-	}
-
-	/**
-	 * Saves the memento to the given file.
-	 *
-	 * @param filename java.lang.String
-	 * @exception java.io.IOException
-	 */
-	public void saveToFile(String filename) throws IOException {
-		FileOutputStream w = null;
-		try {
-			w = new FileOutputStream(filename);
-			save(w);
-		} catch (IOException e) {
-			throw e;
-		} catch (Exception e) {
-			throw new IOException(e.getLocalizedMessage());
-		} finally {
-			if (w != null) {
-				try {
-					w.close();
-				} catch (Exception e) {
-					// ignore
-				}
-			}
-		}
-	}
-	
-	/*
-	 * @see IMemento#getBoolean(String)
-	 */
-	public Boolean getBoolean(String key) {
-		Attr attr = element.getAttributeNode(key);
-		if (attr == null)
-			return null;
-		String strValue = attr.getValue();
-		if ("true".equalsIgnoreCase(strValue))
-			return new Boolean(true);
-		return new Boolean(false);
-	}
-
-	/*
-	 * @see IMemento#putBoolean(String, boolean)
-	 */
-	public void putBoolean(String key, boolean value) {
-		element.setAttribute(key, value ? "true" : "false");
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/cactus/CactusLaunchable.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/cactus/CactusLaunchable.java
deleted file mode 100644
index de2f447..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/cactus/CactusLaunchable.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 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:
- *    Daniel R. Somerfield - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.server.core.internal.cactus;
-
-import java.net.URL;
-/**
- *
- */
-public class CactusLaunchable {
-	private String fProjectname;
-	private String fClassName;
-	private String fTestName;
-	private URL fCactusURL;
-
-	public CactusLaunchable(String projectName, String className, String testName, URL cactusURL) {
-		fProjectname = projectName;
-		fClassName = className;
-		fTestName = testName;
-		fCactusURL = cactusURL;
-	}
-
-	public String getTestClassName() {
-		return fClassName;
-	}
-
-	public String getTestName() {
-		return fTestName;
-	}
-
-	public String getProjectName() {
-		return fProjectname;
-	}
-
-	public URL getCactusURL() {
-		return fCactusURL;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/cactus/CactusLaunchableAdapterDelegate.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/cactus/CactusLaunchableAdapterDelegate.java
deleted file mode 100644
index 0b34149..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/cactus/CactusLaunchableAdapterDelegate.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 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:
- *    Daniel R. Somerfield - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.server.core.internal.cactus;
-
-import java.net.MalformedURLException;
-import java.net.URL;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jst.server.core.internal.JavaServerPlugin;
-import org.eclipse.wst.server.core.IModuleArtifact;
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.model.IURLProvider;
-import org.eclipse.wst.server.core.model.LaunchableAdapterDelegate;
-/**
- *
- */
-public class CactusLaunchableAdapterDelegate extends LaunchableAdapterDelegate {
-	public Object getLaunchable(IServer server, IModuleArtifact moduleArtifact) throws CoreException {
-		if (moduleArtifact instanceof WebTestableResource) {
-			WebTestableResource resource = (WebTestableResource) moduleArtifact;
-			URL url = ((IURLProvider) server.getAdapter(IURLProvider.class))
-					.getModuleRootURL(resource.getModule());
-			
-			String urlString = url.toString();
-			if (urlString.endsWith("/")) {
-				try {
-					url = new URL(urlString.substring(0, urlString.length() - 1));
-				} catch (MalformedURLException e) {
-					JavaServerPlugin.log(e);
-					return null;
-				}
-			}
-			return new CactusLaunchable(resource.getProjectName(),
-					resource.getClassName(), resource.getTestName(), url);
-		}
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/cactus/CactusModuleArtifactAdapterDelegate.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/cactus/CactusModuleArtifactAdapterDelegate.java
deleted file mode 100644
index 7e8196f..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/cactus/CactusModuleArtifactAdapterDelegate.java
+++ /dev/null
@@ -1,195 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 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:
- *    Daniel R. Somerfield - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.server.core.internal.cactus;
-
-import java.util.Arrays;
-import java.util.Iterator;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.IMethod;
-import org.eclipse.jdt.core.IType;
-import org.eclipse.jdt.core.ITypeHierarchy;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jdt.core.Signature;
-import org.eclipse.jst.server.core.internal.Trace;
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.IModuleArtifact;
-import org.eclipse.wst.server.core.ServerUtil;
-import org.eclipse.wst.server.core.model.ModuleArtifactAdapterDelegate;
-/**
- *
- */
-public class CactusModuleArtifactAdapterDelegate extends ModuleArtifactAdapterDelegate {
-	private static final String SERVLET_TEST_CASE_TYPE = "org.apache.cactus.ServletTestCase";
-
-	private static final String SUITE_METHOD = "suite";
-
-	private static final String TEST_CLASS_NAME = "junit.framework.Test";
-
-	public IModuleArtifact getModuleArtifact(Object obj) {
-		String methodName = "";
-		if (obj instanceof IMethod) {
-			IMethod method = (IMethod) obj;
-			methodName = method.getElementName();
-			obj = method.getCompilationUnit();
-		}
-		if (obj instanceof IAdaptable) {
-			IResource resource = (IResource) ((IAdaptable) obj).getAdapter(IResource.class);
-			String testClassName = getClassNameForType(resource, SERVLET_TEST_CASE_TYPE);
-			String projectName = resource.getProject().getName();
-			if (testClassName != null) {
-				return new WebTestableResource(getModule(resource.getProject()), false,
-						projectName, testClassName, methodName);
-			}
-		}
-		return null;
-	}
-
-	public static String getClassNameForType(IResource resource, String superType) {
-		if (resource == null)
-			return null;
-		try {
-			IProject project = resource.getProject();
-			IPath path = resource.getFullPath();
-			if (!project.hasNature(JavaCore.NATURE_ID) || path == null)
-				return null;
-
-			IJavaProject javaProject = (IJavaProject) project.getNature(JavaCore.NATURE_ID);
-			if (!javaProject.isOpen())
-				javaProject.open(new NullProgressMonitor());
-
-			// output location may not be on classpath
-			IPath outputPath = javaProject.getOutputLocation();
-			if (outputPath != null
-					&& "class".equals(path.getFileExtension()) && outputPath.isPrefixOf(path)) { //$NON-NLS-1$
-				int count = outputPath.segmentCount();
-				path = path.removeFirstSegments(count);
-			}
-			
-			// remove initial part of classpath
-			IClasspathEntry[] classPathEntry = javaProject.getResolvedClasspath(true);
-			if (classPathEntry != null) {
-				int size = classPathEntry.length;
-				for (int i = 0; i < size; i++) {
-					IPath classPath = classPathEntry[i].getPath();
-					if (classPath.isPrefixOf(path)) {
-						int count = classPath.segmentCount();
-						path = path.removeFirstSegments(count);
-						i += size;
-					}
-				}
-			}
-			
-			// get java element
-			IJavaElement javaElement = javaProject.findElement(path);
-			IType[] types = getTypes(javaElement);
-			if (types != null) {
-				int size2 = types.length;
-				for (int i = 0; i < size2; i++) {
-					if (hasSuperclass(types[i], superType) || hasSuiteMethod(types[i]))
-						return types[i].getFullyQualifiedName();
-				}
-			}
-			return null;
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Unexpected exception: " + e);
-			return null;
-		}
-	}
-
-	private static boolean hasSuiteMethod(IType type) throws JavaModelException {
-		IMethod[] methods = type.getMethods();
-		int size = methods.length;
-		for (int i = 0; i < size; i++) {
-			IMethod method = methods[i];
-			if (method.getParameterNames().length == 0 && method.getElementName().equals(SUITE_METHOD)) {
-				String returnType = getFullyQualifiedTypeForMangledType(method.getReturnType(), type);
-				if (TEST_CLASS_NAME.equals(returnType)) {
-					return true;
-				}
-			}
-		}
-		return false;
-	}
-
-	private static IType[] getTypes(IJavaElement element) {
-		try {
-			if (element.getElementType() != IJavaElement.COMPILATION_UNIT)
-				return null;
-			return ((ICompilationUnit) element).getAllTypes();
-		} catch (Exception e) {
-			return null;
-		}
-	}
-
-	public static boolean hasSuperclass(IType type, String superClassName) {
-		try {
-			ITypeHierarchy hierarchy = type.newSupertypeHierarchy(null);
-			IType[] superClasses = hierarchy.getAllSuperclasses(type);
-			int size = superClasses.length;
-			for (int i = 0; i < size; i++) {
-				if (superClassName.equals(superClasses[i].getFullyQualifiedName())) //$NON-NLS-1$
-					return true;
-			}
-			return false;
-		} catch (Exception e) {
-			return false;
-		}
-	}
-
-	protected static IModule getModule(IProject project) {
-		IModule deployable = null;
-		Iterator iterator = Arrays.asList(ServerUtil.getModules("jst.web")).iterator();
-		while (iterator.hasNext()) {
-			Object next = iterator.next();
-			if (next instanceof IModule) {
-				deployable = (IModule) next;
-				if (deployable.getProject().equals(project))
-					return deployable;
-			}
-		}
-		return null;
-	}
-
-	private static String getFullyQualifiedTypeForMangledType(String type,
-			IType declaringType) throws JavaModelException {
-		type = Signature.toString(type);
-		return getFullyQualifiedTypeForType(type, declaringType);
-	}
-
-	private static String getFullyQualifiedTypeForType(String type, IType declaringType)
-			throws JavaModelException {
-		String[][] resolvedTypes = declaringType.resolveType(type);
-		//TODO: Are there legit cases where this would not be the case? We might need to check
-		//for this and bomb out if the type cannot be unambigiously resolved
-		if (resolvedTypes.length != 1)
-			Trace.trace(Trace.WARNING, "The type cannot be unambigiously resolved. Need to handle this case");
-		String[] resolvedType = resolvedTypes[0];
-		StringBuffer buffer = new StringBuffer();
-		for (int i = 0; i < resolvedType.length - 1; i++) {
-			buffer.append(resolvedType[i]);
-			buffer.append('.');
-		}
-
-		buffer.append(resolvedType[resolvedType.length - 1]);
-
-		return buffer.toString();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/cactus/ServletTestCasePropertyTester.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/cactus/ServletTestCasePropertyTester.java
deleted file mode 100644
index e3b6c52..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/cactus/ServletTestCasePropertyTester.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 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:
- *    Daniel R. Somerfield - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.server.core.internal.cactus;
-
-import org.eclipse.core.expressions.PropertyTester;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.jdt.core.IClassFile;
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.IJavaElement;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.IMember;
-import org.eclipse.jdt.core.IPackageFragment;
-import org.eclipse.jdt.core.IPackageFragmentRoot;
-import org.eclipse.jdt.core.IType;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jdt.core.Signature;
-import org.eclipse.jst.server.core.internal.JavaServerPlugin;
-/**
- * 
- */
-public class ServletTestCasePropertyTester extends PropertyTester {
-	public static final String PROPERTY_IS_SERVLET_TEST_CASE = "isServletTestCase";
-	private static final String TEST_SUPERCLASS_NAME = "org.apache.cactus.ServletTestCase";
-
-	public boolean test(Object receiver, String method, Object[] args, Object expectedValue) {
-		IJavaElement javaElement = null;
-		if (receiver instanceof IAdaptable) {
-			javaElement = (IJavaElement) ((IAdaptable) receiver).getAdapter(IJavaElement.class);
-		}
-		if (javaElement != null) {
-			if (!javaElement.exists()) {
-				return false;
-			}
-		}
-		if (javaElement instanceof IJavaProject
-				|| javaElement instanceof IPackageFragmentRoot
-				|| javaElement instanceof IPackageFragment) {
-			return true;
-		}
-		if (javaElement != null) {
-			if (PROPERTY_IS_SERVLET_TEST_CASE.equals(method)) { //$NON-NLS-1$
-				return isServletTestCase(javaElement);
-			}
-		}
-		return false;
-	}
-
-	private boolean isServletTestCase(IJavaElement element) {
-		IType testType = null;
-
-		try {
-			if (element instanceof ICompilationUnit) {
-				ICompilationUnit cu = (ICompilationUnit) element;
-				testType = cu.getType(Signature.getQualifier(cu.getElementName()));
-			} else if (element instanceof IClassFile) {
-				testType = ((IClassFile) element).getType();
-			} else if (element instanceof IType) {
-				testType = (IType) element;
-			} else if (element instanceof IMember) {
-				testType = ((IMember) element).getDeclaringType();
-			}
-
-			if (testType != null && testType.exists() && isTestOrSuite(testType)) {
-				return true;
-			}
-		} catch (JavaModelException e) {
-			// TODO: what do we do here?
-			JavaServerPlugin.log(e);
-		}
-		return false;
-	}
-
-	/**
-	 * 
-	 * @param testType
-	 * @return true if the type is a test, false otherwise
-	 */
-	private boolean isTestOrSuite(IType testType) throws JavaModelException {
-		IType[] types = testType.newSupertypeHierarchy(null).getAllSuperclasses(testType);
-		for (int i = 0; i < types.length; i++) {
-			if (types[i].getFullyQualifiedName().equals(TEST_SUPERCLASS_NAME)) {
-				return true;
-			}
-		}
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/cactus/WebTestableResource.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/cactus/WebTestableResource.java
deleted file mode 100644
index c760ce8..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/cactus/WebTestableResource.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 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:
- *    Daniel R. Somerfield - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.jst.server.core.internal.cactus;
-
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.IModuleArtifact;
-
-public class WebTestableResource implements IModuleArtifact {
-	private IModule fModule;
-	private boolean fServletIsConfigured;
-	private String fClassName;
-	private String fTestName;
-	private String fProjectName;
-
-	public WebTestableResource(IModule module, boolean servletIsConfigured,
-			String projectName, String className, String testName) {
-		fModule = module;
-		fServletIsConfigured = servletIsConfigured;
-		fClassName = className;
-		fTestName = testName;
-		fProjectName = projectName;
-	}
-
-	public String getProjectName() {
-		return fProjectName;
-	}
-
-	public boolean isServletConfigured() {
-		return fServletIsConfigured;
-	}
-
-	public IModule getModule() {
-		return fModule;
-	}
-
-	public String getClassName() {
-		return fClassName;
-	}
-
-	public String getTestName() {
-		return fTestName;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/package.html b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/package.html
deleted file mode 100644
index 0dfa3c3..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/package.html
+++ /dev/null
@@ -1,66 +0,0 @@
-<html>
-<head>
-<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<link rel="stylesheet" href="../../../../..//apistyles.css" type="text/css">
-<title>WTP API overview</title>
-</head>
-<body>
-<table width="500">
-<tr>
-<td>
-<p>Support for Java and J2EE server types.</p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>The ClasspathRuntimeTargetHandler class provides a common subclass
-for runtime target handlers that need to modify a project's classpath
-when a project is targetted to a particular runtime.</p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>IGenericRuntime and its working copy provide type-specific access
-to the generic runtime type. When using a generic runtime, clients can
-access the type specific information by adapting to these types using
-<pre>IGenericRuntime gr = (IGenericRuntime) runtime.getAdapter(IGenericRuntime.class)</pre>.
-GenericRuntimeUtil contains some utility methods for handling the
-generic runtime type.</p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>IEnterpriseApplication, IEJBModule, IWebModule, IApplicationClientModule,
-and IConnectorModule are J2EE module interfaces meant to be implemented
-by module delegates that provide J2EE module support.</p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>ILooseArchive and ILooseArchiveSupport are module interfaces for modules
-that take advantage of loose archive support - allowing JARs contained within
-the module to be available in a separate Java project instead of directly
-within the module.</p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>The remainder of the classes in this package are module artifact and
-launchable types to provide access to J2EE resource types for the server tool
-framework.</p>
-</td>
-</tr>
-</table>
-</body>
-</html>
diff --git a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/package.xml b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/package.xml
deleted file mode 100644
index b4c0529..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/package.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<html>
-<head>
-	<!--  Escape to the root of your source folder  -->
-	<meta
-		name="root"
-		content="../../../../../" />
-	<title>WTP API overview</title>
-</head>
-
-<body>
-
-<p>Support for Java and J2EE server types.</p>
-
-<p>The ClasspathRuntimeTargetHandler class provides a common subclass
-for runtime target handlers that need to modify a project's classpath
-when a project is targetted to a particular runtime.</p>
-
-<p>IGenericRuntime and its working copy provide type-specific access
-to the generic runtime type. When using a generic runtime, clients can
-access the type specific information by adapting to these types using
-<pre>IGenericRuntime gr = (IGenericRuntime) runtime.getAdapter(IGenericRuntime.class)</pre>.
-GenericRuntimeUtil contains some utility methods for handling the
-generic runtime type.</p>
-
-<p>IEnterpriseApplication, IEJBModule, IWebModule, IApplicationClientModule,
-and IConnectorModule are J2EE module interfaces meant to be implemented
-by module delegates that provide J2EE module support.</p>
-
-<p>ILooseArchive and ILooseArchiveSupport are module interfaces for modules
-that take advantage of loose archive support - allowing JARs contained within
-the module to be available in a separate Java project instead of directly
-within the module.</p>
-
-<p>The remainder of the classes in this package are module artifact and
-launchable types to provide access to J2EE resource types for the server tool
-framework.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.ui/.classpath b/plugins/org.eclipse.jst.server.ui/.classpath
deleted file mode 100644
index c41a03c..0000000
--- a/plugins/org.eclipse.jst.server.ui/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="sjavaui/"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.jst.server.ui/.cvsignore b/plugins/org.eclipse.jst.server.ui/.cvsignore
deleted file mode 100644
index 01997dd..0000000
--- a/plugins/org.eclipse.jst.server.ui/.cvsignore
+++ /dev/null
@@ -1,7 +0,0 @@
-bin
-build.xml
-org.eclipse.jst.server.ui_3.0.0.jar
-sjavaui.jar
-temp.folder
-@dot
-src.zip
diff --git a/plugins/org.eclipse.jst.server.ui/.options b/plugins/org.eclipse.jst.server.ui/.options
deleted file mode 100644
index a747d69..0000000
--- a/plugins/org.eclipse.jst.server.ui/.options
+++ /dev/null
@@ -1,4 +0,0 @@
-# Debugging options for the org.eclipse.jst.server.ui plugin
-
-# Turn on general debugging
-org.eclipse.jst.server.ui/debug=true
diff --git a/plugins/org.eclipse.jst.server.ui/.project b/plugins/org.eclipse.jst.server.ui/.project
deleted file mode 100644
index abd835d..0000000
--- a/plugins/org.eclipse.jst.server.ui/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jst.server.ui</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.jst.server.ui/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.server.ui/META-INF/MANIFEST.MF
deleted file mode 100644
index f8e6675..0000000
--- a/plugins/org.eclipse.jst.server.ui/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,26 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.jst.server.ui; singleton:=true
-Bundle-Version: 1.0.2.qualifier
-Bundle-Activator: org.eclipse.jst.server.ui.internal.JavaServerUIPlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.jst.server.ui.internal;x-internal:=true,
- org.eclipse.jst.server.ui.internal.cactus;x-internal:=true
-Require-Bundle: org.eclipse.core.runtime,
- org.eclipse.core.resources,
- org.eclipse.debug.core,
- org.eclipse.debug.ui,
- org.eclipse.ui,
- org.eclipse.jdt.core,
- org.eclipse.jdt.launching,
- org.eclipse.jdt.junit,
- org.eclipse.wst.server.core,
- org.eclipse.wst.server.ui,
- org.eclipse.jst.server.core,
- org.eclipse.ui.ide,
- org.eclipse.jdt.ui,
- org.eclipse.wst.common.project.facet.core,
- org.eclipse.wst.common.project.facet.ui
-Eclipse-AutoStart: true
diff --git a/plugins/org.eclipse.jst.server.ui/about.html b/plugins/org.eclipse.jst.server.ui/about.html
deleted file mode 100644
index 6f6b96c..0000000
--- a/plugins/org.eclipse.jst.server.ui/about.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>February 24, 2005</p>	
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content.  Check the Redistributor's license that was provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.ui/build.properties b/plugins/org.eclipse.jst.server.ui/build.properties
deleted file mode 100644
index d2cc1b0..0000000
--- a/plugins/org.eclipse.jst.server.ui/build.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = plugin.xml,\
-               plugin.properties,\
-               icons/,\
-               .,\
-               META-INF/,\
-               about.html
-bin.excludes = bin/**,\
-               @dot/**,\
-               temp.folder/**
-src.includes = schema/
-source.. = sjavaui/
diff --git a/plugins/org.eclipse.jst.server.ui/icons/obj16/appclient_module.gif b/plugins/org.eclipse.jst.server.ui/icons/obj16/appclient_module.gif
deleted file mode 100644
index 4423578..0000000
--- a/plugins/org.eclipse.jst.server.ui/icons/obj16/appclient_module.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.ui/icons/obj16/ear.gif b/plugins/org.eclipse.jst.server.ui/icons/obj16/ear.gif
deleted file mode 100644
index b5630b3..0000000
--- a/plugins/org.eclipse.jst.server.ui/icons/obj16/ear.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.ui/icons/obj16/ejb_module.gif b/plugins/org.eclipse.jst.server.ui/icons/obj16/ejb_module.gif
deleted file mode 100644
index f8b5c0a..0000000
--- a/plugins/org.eclipse.jst.server.ui/icons/obj16/ejb_module.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.ui/icons/obj16/java_jar.gif b/plugins/org.eclipse.jst.server.ui/icons/obj16/java_jar.gif
deleted file mode 100644
index 6059f86..0000000
--- a/plugins/org.eclipse.jst.server.ui/icons/obj16/java_jar.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.ui/icons/obj16/jre.gif b/plugins/org.eclipse.jst.server.ui/icons/obj16/jre.gif
deleted file mode 100644
index cb55e33..0000000
--- a/plugins/org.eclipse.jst.server.ui/icons/obj16/jre.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.ui/icons/obj16/new_testcase.gif b/plugins/org.eclipse.jst.server.ui/icons/obj16/new_testcase.gif
deleted file mode 100644
index 1ff93cb..0000000
--- a/plugins/org.eclipse.jst.server.ui/icons/obj16/new_testcase.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.ui/icons/obj16/web_module.gif b/plugins/org.eclipse.jst.server.ui/icons/obj16/web_module.gif
deleted file mode 100644
index bf20f70..0000000
--- a/plugins/org.eclipse.jst.server.ui/icons/obj16/web_module.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.ui/icons/wizban/new_runtime_wiz.gif b/plugins/org.eclipse.jst.server.ui/icons/wizban/new_runtime_wiz.gif
deleted file mode 100644
index 30de91f..0000000
--- a/plugins/org.eclipse.jst.server.ui/icons/wizban/new_runtime_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.ui/icons/wizban/new_test_wiz.gif b/plugins/org.eclipse.jst.server.ui/icons/wizban/new_test_wiz.gif
deleted file mode 100644
index 4a71e95..0000000
--- a/plugins/org.eclipse.jst.server.ui/icons/wizban/new_test_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.ui/plugin.properties b/plugins/org.eclipse.jst.server.ui/plugin.properties
deleted file mode 100644
index c24db9c..0000000
--- a/plugins/org.eclipse.jst.server.ui/plugin.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-###############################################################################
-# Copyright (c) 2004, 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
-###############################################################################
-pluginName=Java Server UI Support
-providerName=Eclipse.org
-
-classpathContainer=Server Runtime
-
-cactusJUnitClient=JUnit Client
-cactusServletTestCase=Servlet Test Case
diff --git a/plugins/org.eclipse.jst.server.ui/plugin.xml b/plugins/org.eclipse.jst.server.ui/plugin.xml
deleted file mode 100644
index 11b5830..0000000
--- a/plugins/org.eclipse.jst.server.ui/plugin.xml
+++ /dev/null
@@ -1,84 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<plugin>
-  <extension point="org.eclipse.wst.server.ui.serverImages">
-     <image
-        id="org.eclipse.jst.server"
-        typeIds="org.eclipse.jst.server.core.runtimeType"
-        icon="icons/obj16/java_jar.gif"/>
-     <image
-        id="org.eclipse.jst.server"
-        typeIds="jst.web"
-        icon="icons/obj16/web_module.gif"/>
-     <image
-        id="org.eclipse.jst.server"
-        typeIds="jst.ejb"
-        icon="icons/obj16/ejb_module.gif"/>
-     <image
-        id="org.eclipse.jst.server"
-        typeIds="jst.ear"
-        icon="icons/obj16/ear.gif"/>
-     <image
-        id="org.eclipse.jst.server"
-        typeIds="jst.appclient"
-        icon="icons/obj16/appclient_module.gif"/>
-     <image
-        id="org.eclipse.jst.server"
-        typeIds="jst.connector"
-        icon="icons/obj16/java_jar.gif"/>
-     <image
-        id="org.eclipse.jst.server"
-        typeIds="jst.utility"
-        icon="icons/obj16/java_jar.gif"/>
-  </extension>
-
-  <extension point="org.eclipse.wst.server.ui.wizardFragments">
-     <fragment
-        id="org.eclipse.jst.server.core.runtimeType"
-        typeIds="org.eclipse.jst.server.core.runtimeType"
-        class="org.eclipse.jst.server.ui.internal.GenericRuntimeWizardFragment"/>
-  </extension>
-
-  <extension point="org.eclipse.wst.server.core.clients">
-     <client
-        id="org.eclipse.jst.server.cactus.client"
-        class="org.eclipse.jst.server.ui.internal.cactus.JUnitClientDelegate"
-        launchable="org.eclipse.jst.server.cactus.launchable"
-        name="%cactusJUnitClient"/>
-  </extension>
-
-  <extension point="org.eclipse.ui.newWizards">
-     <wizard
-        id="org.eclipse.jst.server.ui.internal.cactus.NewServletTestCaseWizard"
-        canFinishEarly="false"
-        category="org.eclipse.jdt.ui.java/org.eclipse.jdt.junit"
-        class="org.eclipse.jst.server.ui.internal.cactus.NewServletTestCaseWizard"
-        hasPages="true"
-        icon="icons/obj16/new_testcase.gif"
-        name="%cactusServletTestCase"/>
-  </extension>
-
-  <extension point="org.eclipse.wst.common.project.facet.core.runtimes">
-    <adapter>
-      <runtime-component id="standard.jre"/>
-      <factory class="org.eclipse.jst.server.ui.internal.StandardJreLabelProvider$Factory"/>
-      <type class="org.eclipse.wst.common.project.facet.ui.IRuntimeComponentLabelProvider"/>
-    </adapter>
-  </extension>
-
-  <extension point="org.eclipse.wst.common.project.facet.ui.images">
-    <image runtime-component-type="standard.jre"
-       path="icons/obj16/jre.gif"/>
-    <image runtime-component-type="org.eclipse.jst.server.core.runtimeType"
-       path="icons/obj16/java_jar.gif"/>
-  </extension>
-
-  <extension point="org.eclipse.jdt.ui.classpathContainerPage">
-    <classpathContainerPage
-       id="org.eclipse.jst.server.core.container"
-       name="%classpathContainer"
-       class="org.eclipse.jst.server.ui.internal.ServerClasspathContainerPage">
-    </classpathContainerPage>
-  </extension>
-</plugin>
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/ContextIds.java b/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/ContextIds.java
deleted file mode 100644
index 6ee0d35..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/ContextIds.java
+++ /dev/null
@@ -1,17 +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.server.ui.internal;
-/**
- * Context help id constants.
- */
-public interface ContextIds {
-	public static final String RUNTIME_COMPOSITE = JavaServerUIPlugin.PLUGIN_ID + ".jvrt0000";
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/GenericRuntimeComposite.java b/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/GenericRuntimeComposite.java
deleted file mode 100644
index eb72729..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/GenericRuntimeComposite.java
+++ /dev/null
@@ -1,267 +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.server.ui.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.wst.server.core.IRuntimeWorkingCopy;
-import org.eclipse.wst.server.ui.wizard.IWizardHandle;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.*;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.events.*;
-import org.eclipse.jdt.launching.IVMInstall;
-import org.eclipse.jdt.launching.IVMInstallType;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IMessageProvider;
-import org.eclipse.jface.preference.IPreferenceNode;
-import org.eclipse.jface.preference.PreferenceDialog;
-import org.eclipse.jface.preference.PreferenceManager;
-import org.eclipse.jface.window.Window;
-import org.eclipse.jst.server.core.internal.GenericRuntime;
-import org.eclipse.jst.server.core.internal.IGenericRuntimeWorkingCopy;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.ui.PlatformUI;
-/**
- * Wizard page to set the server install directory.
- */
-public class GenericRuntimeComposite extends Composite {
-	protected static final String INSTALLED_JRE_PREFERENCE_PAGE_ID = "org.eclipse.jdt.debug.ui.preferences.VMPreferencePage";
-	protected IRuntimeWorkingCopy runtimeWC;
-	protected IGenericRuntimeWorkingCopy runtime;
-	
-	protected IWizardHandle wizard;
-	
-	protected Text name;
-	protected Text installDir;
-	protected Combo combo;
-	protected List installedJREs;
-	protected String[] jreNames;
-
-	/**
-	 * GenericRuntimeComposite constructor comment.
-	 */
-	protected GenericRuntimeComposite(Composite parent, IWizardHandle wizard) {
-		super(parent, SWT.NONE);
-		this.wizard = wizard;
-		
-		wizard.setTitle(Messages.runtimeTypeTitle);
-		wizard.setDescription(Messages.runtimeTypeDescription);
-		wizard.setImageDescriptor(ImageResource.getImageDescriptor(ImageResource.IMG_WIZ_RUNTIME_TYPE));
-		
-		createControl();
-	}
-
-	protected void setRuntime(IRuntimeWorkingCopy newRuntime) {
-		if (newRuntime == null) {
-			runtimeWC = null;
-			runtime = null;
-		} else {
-			runtimeWC = newRuntime;
-			runtime = (IGenericRuntimeWorkingCopy) newRuntime.getAdapter(IGenericRuntimeWorkingCopy.class);
-		}
-		
-		init();
-		validate();
-	}
-
-	/**
-	 * Provide a wizard page to change the root directory.
-	 */
-	protected void createControl() {
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 2;
-		setLayout(layout);
-		setLayoutData(new GridData(GridData.FILL_BOTH));
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(this, ContextIds.RUNTIME_COMPOSITE);
-		
-		Label label = new Label(this, SWT.NONE);
-		label.setText(Messages.runtimeTypeName);
-		GridData data = new GridData();
-		data.horizontalSpan = 2;
-		label.setLayoutData(data);
-		
-		name = new Text(this, SWT.BORDER);
-		data = new GridData(GridData.FILL_HORIZONTAL);
-		name.setLayoutData(data);
-		name.addModifyListener(new ModifyListener() {
-			public void modifyText(ModifyEvent e) {
-				runtimeWC.setName(name.getText());
-				validate();
-			}
-		});
-	
-		label = new Label(this, SWT.NONE);
-		label.setText(Messages.runtimeTypeLocation);
-		data = new GridData();
-		data.horizontalSpan = 2;
-		label.setLayoutData(data);
-	
-		installDir = new Text(this, SWT.BORDER);
-		data = new GridData(GridData.FILL_HORIZONTAL);
-		installDir.setLayoutData(data);
-		installDir.addModifyListener(new ModifyListener() {
-			public void modifyText(ModifyEvent e) {
-				runtimeWC.setLocation(new Path(installDir.getText()));
-				validate();
-			}
-		});
-	
-		Button browse = SWTUtil.createButton(this, Messages.browse);
-		browse.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent se) {
-				DirectoryDialog dialog = new DirectoryDialog(GenericRuntimeComposite.this.getShell());
-				dialog.setMessage(Messages.runtimeTypeSelectLocation);
-				dialog.setFilterPath(installDir.getText());
-				String selectedDirectory = dialog.open();
-				if (selectedDirectory != null)
-					installDir.setText(selectedDirectory);
-			}
-		});
-		
-		updateJREs();
-		
-		// JDK location
-		label = new Label(this, SWT.NONE);
-		label.setText(Messages.runtimeTypeJRE);
-		data = new GridData();
-		data.horizontalSpan = 2;
-		label.setLayoutData(data);
-		
-		combo = new Combo(this, SWT.DROP_DOWN | SWT.READ_ONLY);
-		combo.setItems(jreNames);
-		data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		combo.setLayoutData(data);
-		
-		combo.addSelectionListener(new SelectionListener() {
-			public void widgetSelected(SelectionEvent e) {
-				int sel = combo.getSelectionIndex();
-				IVMInstall vmInstall = null;
-				if (sel > 0)
-					vmInstall = (IVMInstall) installedJREs.get(sel - 1);
-				
-				runtime.setVMInstall(vmInstall);
-				validate();
-			}
-
-			public void widgetDefaultSelected(SelectionEvent e) {
-				widgetSelected(e);
-			}
-		});
-		
-		Button button = SWTUtil.createButton(this, Messages.runtimeTypeInstalledJREs);
-		button.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				String currentVM = combo.getText();
-				if (showPreferencePage()) {
-					updateJREs();
-					combo.setItems(jreNames);
-					combo.setText(currentVM);
-					if (combo.getSelectionIndex() == -1)
-						combo.select(0);
-				}
-			}
-		});
-		
-		init();
-		validate();
-
-		Dialog.applyDialogFont(this);
-
-		name.forceFocus();
-	}
-	
-	protected void updateJREs() {
-		// get all installed JVMs
-		installedJREs = new ArrayList();
-		IVMInstallType[] vmInstallTypes = JavaRuntime.getVMInstallTypes();
-		int size = vmInstallTypes.length;
-		for (int i = 0; i < size; i++) {
-			IVMInstall[] vmInstalls = vmInstallTypes[i].getVMInstalls();
-			int size2 = vmInstalls.length;
-			for (int j = 0; j < size2; j++) {
-				installedJREs.add(vmInstalls[j]);
-			}
-		}
-		
-		// get names
-		size = installedJREs.size();
-		jreNames = new String[size+1];
-		jreNames[0] = Messages.runtimeTypeDefaultJRE;
-		for (int i = 0; i < size; i++) {
-			IVMInstall vmInstall = (IVMInstall) installedJREs.get(i);
-			jreNames[i+1] = vmInstall.getName();
-		}
-	}
-
-	protected boolean showPreferencePage() {
-		PreferenceManager manager = PlatformUI.getWorkbench().getPreferenceManager();
-		IPreferenceNode node = manager.find("org.eclipse.jdt.ui.preferences.JavaBasePreferencePage").findSubNode("org.eclipse.jdt.debug.ui.preferences.VMPreferencePage");
-		PreferenceManager manager2 = new PreferenceManager();
-		manager2.addToRoot(node);
-		final PreferenceDialog dialog = new PreferenceDialog(getShell(), manager2);
-		final boolean[] result = new boolean[] { false };
-		BusyIndicator.showWhile(getDisplay(), new Runnable() {
-			public void run() {
-				dialog.create();
-				if (dialog.open() == Window.OK)
-					result[0] = true;
-			}
-		});
-		return result[0];
-	}
-	
-	protected void init() {
-		if (installDir == null || runtime == null)
-			return;
-		
-		name.setText(runtimeWC.getName());
-		
-		if (runtimeWC.getLocation() != null)
-			installDir.setText(runtimeWC.getLocation().toOSString());
-		else
-			installDir.setText("");
-		
-		// set selection
-		if (((GenericRuntime)runtime).isUsingDefaultJRE())
-			combo.select(0);
-		else {
-			boolean found = false;
-			int size = installedJREs.size();
-			for (int i = 0; i < size; i++) {
-				IVMInstall vmInstall = (IVMInstall) installedJREs.get(i);
-				if (vmInstall.equals(runtime.getVMInstall())) {
-					combo.select(i + 1);
-					found = true;
-				}
-			}
-			if (!found)
-				combo.select(0);
-		}
-	}
-
-	protected void validate() {
-		if (runtime == null) {
-			wizard.setMessage("", IMessageProvider.ERROR);
-			return;
-		}
-
-		IStatus status = runtimeWC.validate(null);
-		if (status == null || status.isOK())
-			wizard.setMessage(null, IMessageProvider.NONE);
-		else
-			wizard.setMessage(status.getMessage(), IMessageProvider.ERROR);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/GenericRuntimeWizardFragment.java b/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/GenericRuntimeWizardFragment.java
deleted file mode 100644
index 76a9180..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/GenericRuntimeWizardFragment.java
+++ /dev/null
@@ -1,68 +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.server.ui.internal;
-
-import org.eclipse.wst.server.core.*;
-import org.eclipse.wst.server.ui.wizard.IWizardHandle;
-import org.eclipse.wst.server.ui.wizard.WizardFragment;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.swt.widgets.Composite;
-/**
- * 
- */
-public class GenericRuntimeWizardFragment extends WizardFragment {
-	protected GenericRuntimeComposite comp;
-	
-	/**
-	 * Create a new fragment.
-	 */
-	public GenericRuntimeWizardFragment() {
-		// do nothing
-	}
-
-	/**
-	 * @see WizardFragment#hasComposite()
-	 */
-	public boolean hasComposite() {
-		return true;
-	}
-
-	/**
-	 * @see WizardFragment#createComposite(Composite, IWizardHandle)
-	 */
-	public Composite createComposite(Composite parent, IWizardHandle wizard) {
-		comp = new GenericRuntimeComposite(parent, wizard);
-		return comp;
-	}
-
-	/**
-	 * @see WizardFragment#isComplete()
-	 */
-	public boolean isComplete() {
-		IRuntimeWorkingCopy runtime = (IRuntimeWorkingCopy) getTaskModel().getObject(TaskModel.TASK_RUNTIME);
-		
-		if (runtime == null)
-			return false;
-		IStatus status = runtime.validate(null);
-		return (status != null && status.isOK());
-	}
-
-	/**
-	 * @see WizardFragment#enter()
-	 */
-	public void enter() {
-		if (comp != null) {
-			IRuntimeWorkingCopy runtime = (IRuntimeWorkingCopy) getTaskModel().getObject(TaskModel.TASK_RUNTIME);
-			comp.setRuntime(runtime);
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/ImageResource.java b/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/ImageResource.java
deleted file mode 100644
index 7403446..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/ImageResource.java
+++ /dev/null
@@ -1,124 +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.server.ui.internal;
-
-import java.net.URL;
-import java.util.Map;
-import java.util.HashMap;
-import java.util.Iterator;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-/**
- * Utility class to handle image resources.
- */
-public class ImageResource {
-	// the image registry
-	private static ImageRegistry imageRegistry;
-
-	// map of image descriptors since these
-	// will be lost by the image registry
-	private static Map imageDescriptors;
-
-	// map of IElement images
-	private static Map elementImages;
-
-	// base urls for images
-	private static URL ICON_BASE_URL;
-
-	static {
-		try {
-			String pathSuffix = "icons/";
-			ICON_BASE_URL = JavaServerUIPlugin.getInstance().getBundle().getEntry(pathSuffix);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not set icon base URL", e);
-		}
-	}
-
-	private static final String URL_WIZBAN = "wizban/";
-
-	protected static final String IMG_WIZ_RUNTIME_TYPE = "wiz_runtimeType";
-	public static final String IMG_WIZ_CACTUS_TEST = "wiz_cactus_test";
-
-	/**
-	 * Cannot construct an ImageResource. Use static methods only.
-	 */
-	private ImageResource() {
-		// do nothing
-	}
-
-	/**
-	 * Dispose of element images that were created.
-	 */
-	protected static void dispose() {
-		try {
-			Trace.trace(Trace.FINEST, "Disposing of element images");
-			Iterator iterator = elementImages.values().iterator();
-			while (iterator.hasNext()) {
-				Image image = (Image) iterator.next();
-				image.dispose();
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not dispose of images");
-		}
-	}
-	
-	/**
-	 * Return the image with the given key.
-	 *
-	 * @param key java.lang.String
-	 * @return org.eclipse.swt.graphics.Image
-	 */
-	public static Image getImage(String key) {
-		if (imageRegistry == null)
-			initializeImageRegistry();
-		return imageRegistry.get(key);
-	}
-	
-	/**
-	 * Return the image descriptor with the given key.
-	 *
-	 * @param key java.lang.String
-	 * @return org.eclipse.jface.resource.ImageDescriptor
-	 */
-	public static ImageDescriptor getImageDescriptor(String key) {
-		if (imageRegistry == null)
-			initializeImageRegistry();
-		return (ImageDescriptor) imageDescriptors.get(key);
-	}
-
-	/**
-	 * Initialize the image resources.
-	 */
-	protected static void initializeImageRegistry() {
-		imageRegistry = new ImageRegistry();
-		imageDescriptors = new HashMap();
-	
-		registerImage(IMG_WIZ_RUNTIME_TYPE, URL_WIZBAN + "new_runtime_wiz.gif");
-		registerImage(IMG_WIZ_CACTUS_TEST, URL_WIZBAN + "new_test_wiz.gif");
-	}
-
-	/**
-	 * Register an image with the registry.
-	 *
-	 * @param key java.lang.String
-	 * @param partialURL java.lang.String
-	 */
-	private static void registerImage(String key, String partialURL) {
-		try {
-			ImageDescriptor id = ImageDescriptor.createFromURL(new URL(ICON_BASE_URL, partialURL));
-			imageRegistry.put(key, id);
-			imageDescriptors.put(key, id);
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Error registering image " + key + " from " + partialURL, e);
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/JavaServerUIPlugin.java b/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/JavaServerUIPlugin.java
deleted file mode 100644
index c74a5f9..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/JavaServerUIPlugin.java
+++ /dev/null
@@ -1,80 +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.server.ui.internal;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-/**
- * The main server tooling plugin class.
- */
-public class JavaServerUIPlugin extends AbstractUIPlugin {
-	/**
-	 * Java server UI plugin id
-	 */
-	public static final String PLUGIN_ID = "org.eclipse.jst.server.ui";
-
-	// singleton instance of this class
-	private static JavaServerUIPlugin singleton;
-
-	/**
-	 * Create the JavaServerUIPlugin.
-	 */
-	public JavaServerUIPlugin() {
-		super();
-		singleton = this;
-	}
-
-	/**
-	 * Returns the singleton instance of this plugin.
-	 *
-	 * @return org.eclipse.jst.server.ui.JavaServerUIPlugin
-	 */
-	public static JavaServerUIPlugin getInstance() {
-		return singleton;
-	}
-	
-	/**
-	 * Convenience method for logging.
-	 *
-	 * @param t a throwable
-	 */
-	public static void log(Throwable t) {
-		getInstance().getLog().log(new Status(IStatus.ERROR, PLUGIN_ID, IStatus.ERROR, "Internal error", t)); //$NON-NLS-1$
-	}
-
-	/**
-	 * Returns the active workbench shell
-	 * 
-	 * @return the active workbench shell
-	 */
-	public static Shell getActiveWorkbenchShell() {
-		IWorkbenchWindow workBenchWindow = getActiveWorkbenchWindow();
-		if (workBenchWindow == null)
-			return null;
-		return workBenchWindow.getShell();
-	}
-	
-	/**
-	 * Returns the active workbench window
-	 * 
-	 * @return the active workbench window
-	 */
-	protected static IWorkbenchWindow getActiveWorkbenchWindow() {
-		IWorkbench workBench= getInstance().getWorkbench();
-		if (workBench == null)
-			return null;
-		return workBench.getActiveWorkbenchWindow();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/Messages.java b/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/Messages.java
deleted file mode 100644
index a490af4..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/Messages.java
+++ /dev/null
@@ -1,48 +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.server.ui.internal;
-
-import org.eclipse.osgi.util.NLS;
-/**
- * Translated messages.
- */
-public class Messages extends NLS {
-	public static String runtimeTypeTitle;
-	public static String runtimeTypeDescription;
-	public static String runtimeTypeName;
-	public static String runtimeTypeLocation;
-	public static String runtimeTypeSelectLocation;
-	public static String runtimeTypeJRE;
-	public static String browse;
-	public static String runtimeTypeInstalledJREs;
-	public static String runtimeTypeDefaultJRE;
-	public static String errorInternalCactus;
-
-	public static String classpathContainer;
-	public static String classpathContainerDescription;
-	public static String classpathContainerRuntimeList;
-
-	public static String LaunchTestAction_message_selectConfiguration;
-	public static String LaunchTestAction_message_selectDebugConfiguration;
-	public static String LaunchTestAction_message_selectRunConfiguration;
-
-	public static String NewServletTestCaseWizard_WindowTitle;
-	public static String NewServletTestCaseWizard_ErrorMessageTitleMissingLibrary;
-	public static String NewServletTestCaseWizard_ErrorMessageMissingType;
-	public static String NewServletTestCaseWizard_ErrorMessageMissingLibrary;
-	public static String NewServletTestCaseWizard_ErrorTitleNew;
-	public static String NewServletTestCaseWizard_ErrorTitleCreateOfElementFailed;
-	public static String NewServletTestCaseWizard_ErrorMessageSeeErrorLog;
-
-	static {
-		NLS.initializeMessages(JavaServerUIPlugin.PLUGIN_ID + ".internal.Messages", Messages.class);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/Messages.properties b/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/Messages.properties
deleted file mode 100644
index ad7e4a1..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/Messages.properties
+++ /dev/null
@@ -1,38 +0,0 @@
-###############################################################################
-# Copyright (c) 2004, 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
-###############################################################################
-
-runtimeTypeTitle=Generic J2EE Runtime
-runtimeTypeDescription=Define a generic J2EE runtime. Specify a directory containing jar files to compile against.
-runtimeTypeName=Na&me:
-runtimeTypeLocation=&Location:
-browse=B&rowse...
-runtimeTypeSelectLocation=Select the location of the runtime.
-runtimeTypeJRE=&JRE:
-runtimeTypeDefaultJRE=Workbench default JRE
-runtimeTypeInstalledJREs=In&stalled JREs...
-
-classpathContainer=Server Runtime
-classpathContainerDescription=Select a server runtime to add to the classpath
-classpathContainerRuntimeList=Select a &runtime to add to the classpath:
-
-errorInternalCactus=Internal error while attempting to launch Cactus
-
-LaunchTestAction_message_selectConfiguration=Select a Test Configuration
-LaunchTestAction_message_selectDebugConfiguration=Select JUnit configuration to debug
-LaunchTestAction_message_selectRunConfiguration=Select JUnit configuration to run
-
-NewServletTestCaseWizard_WindowTitle=New JUnit Test Case
-NewServletTestCaseWizard_ErrorMessageTitleMissingLibrary=Missing library
-NewServletTestCaseWizard_ErrorMessageMissingType=Missing type
-NewServletTestCaseWizard_ErrorMessageMissingLibrary=You are missing cactus dependencies in your web project. The following libraries are required: {0}, {1}, {2}, {3} and {4}. Other versions might work but have not necessarily been tested. All libraries can be downloaded at http://jakarta.apache.org/cactus/.
-NewServletTestCaseWizard_ErrorTitleNew=New
-NewServletTestCaseWizard_ErrorTitleCreateOfElementFailed=Creation of element failed.
-NewServletTestCaseWizard_ErrorMessageSeeErrorLog=See error log for more details.
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/RuntimeLabelProvider.java b/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/RuntimeLabelProvider.java
deleted file mode 100644
index f5be1c1..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/RuntimeLabelProvider.java
+++ /dev/null
@@ -1,43 +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
- *    IBM Corporation - Support for all server types
- ******************************************************************************/
-package org.eclipse.jst.server.ui.internal;
-
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntimeComponent;
-import org.eclipse.wst.common.project.facet.ui.IRuntimeComponentLabelProvider;
-/**
- * 
- */
-public final class RuntimeLabelProvider implements IRuntimeComponentLabelProvider {
-	private final IRuntimeComponent rc;
-
-	public RuntimeLabelProvider(final IRuntimeComponent rc) {
-		this.rc = rc;
-	}
-
-	public String getLabel() {
-		return rc.getProperty("type");
-	}
-
-	public static final class Factory implements IAdapterFactory {
-		private static final Class[] ADAPTER_TYPES = { IRuntimeComponentLabelProvider.class };
-
-		public Object getAdapter(final Object adaptable, final Class adapterType) {
-			final IRuntimeComponent rc = (IRuntimeComponent) adaptable;
-			return new RuntimeLabelProvider(rc);
-		}
-
-		public Class[] getAdapterList() {
-			return ADAPTER_TYPES;
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/SWTUtil.java b/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/SWTUtil.java
deleted file mode 100644
index b263b01..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/SWTUtil.java
+++ /dev/null
@@ -1,62 +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.server.ui.internal;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.FontMetrics;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-/**
- * SWT Utility class.
- */
-public class SWTUtil {
-	private static FontMetrics fontMetrics;
-
-	protected static void initializeDialogUnits(Control testControl) {
-		// Compute and store a font metric
-		GC gc = new GC(testControl);
-		gc.setFont(JFaceResources.getDialogFont());
-		fontMetrics = gc.getFontMetrics();
-		gc.dispose();
-	}
-
-	/**
-	 * Returns a width hint for a button control.
-	 */
-	protected static int getButtonWidthHint(Button button) {
-		int widthHint = Dialog.convertHorizontalDLUsToPixels(fontMetrics, IDialogConstants.BUTTON_WIDTH);
-		return Math.max(widthHint, button.computeSize(SWT.DEFAULT, SWT.DEFAULT, true).x);
-	}
-
-	/**
-	 * Create a new button with the standard size.
-	 * 
-	 * @param comp the component to add the button to
-	 * @param label the button label
-	 * @return a button
-	 */
-	public static Button createButton(Composite comp, String label) {
-		Button b = new Button(comp, SWT.PUSH);
-		b.setText(label);
-		if (fontMetrics == null)
-			initializeDialogUnits(comp);
-		GridData data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		data.widthHint = getButtonWidthHint(b);
-		b.setLayoutData(data);
-		return b;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/ServerClasspathContainerPage.java b/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/ServerClasspathContainerPage.java
deleted file mode 100644
index 63e4dc3..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/ServerClasspathContainerPage.java
+++ /dev/null
@@ -1,127 +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.server.ui.internal;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.ui.wizards.IClasspathContainerPage;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.wizard.WizardPage;
-import org.eclipse.jst.server.core.internal.JavaServerPlugin;
-import org.eclipse.jst.server.core.internal.RuntimeClasspathContainer;
-import org.eclipse.jst.server.core.internal.RuntimeClasspathProviderWrapper;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.wst.server.core.IRuntime;
-import org.eclipse.wst.server.core.ServerCore;
-import org.eclipse.wst.server.ui.internal.viewers.RuntimeTableLabelProvider;
-
-public class ServerClasspathContainerPage extends WizardPage implements IClasspathContainerPage {
-	protected IClasspathEntry selection;
-
-	protected Map runtimeMap = new HashMap();
-
-	public ServerClasspathContainerPage() {
-		super("server.container");
-		setImageDescriptor(ImageResource.getImageDescriptor(ImageResource.IMG_WIZ_RUNTIME_TYPE));
-		setTitle(Messages.classpathContainer);
-		setDescription(Messages.classpathContainerDescription);
-		setPageComplete(false);
-		
-		IRuntime[] runtimes = ServerCore.getRuntimes();
-		int size = runtimes.length;
-		for (int i = 0; i < size; i++) {
-			RuntimeClasspathProviderWrapper rcpw = JavaServerPlugin.findRuntimeClasspathProvider(runtimes[i].getRuntimeType());
-			if (rcpw != null) {
-				IPath serverContainerPath = new Path(RuntimeClasspathContainer.SERVER_CONTAINER)
-						.append(rcpw.getId()).append(runtimes[i].getId());
-				runtimeMap.put(runtimes[i], JavaCore.newContainerEntry(serverContainerPath));
-			}
-		}
-	}
-
-	public boolean finish() {
-		return true;
-	}
-
-	public IClasspathEntry getSelection() {
-		return selection;
-	}
-
-	public void setSelection(IClasspathEntry containerEntry) {
-		selection = containerEntry;
-	}
-
-	public void createControl(Composite parent) {
-		Composite comp = new Composite(parent, SWT.NONE);
-		comp.setLayoutData(new GridData(GridData.FILL_BOTH));
-		
-		GridLayout layout = new GridLayout();
-		layout.marginWidth = 0;
-		layout.marginHeight = 0;
-		comp.setLayout(layout);
-		
-		Label label = new Label(comp, SWT.NONE);
-		label.setText(Messages.classpathContainerRuntimeList);
-		
-		Table table = new Table(comp, SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL | SWT.SINGLE | SWT.FULL_SELECTION);
-		table.setLayoutData(new GridData(GridData.FILL_BOTH));
-		
-		table.setHeaderVisible(false);
-		
-		TableViewer tableViewer = new TableViewer(table);
-		tableViewer.setContentProvider(new IStructuredContentProvider() {
-			public Object[] getElements(Object inputElement) {
-				Object[] obj = runtimeMap.keySet().toArray(); 
-				return obj;
-			}
-
-			public void dispose() {
-				// ignore
-			}
-
-			public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-				// ignore
-			}
-		});
-		tableViewer.setLabelProvider(new RuntimeTableLabelProvider());
-		tableViewer.setInput("root");
-		
-		tableViewer.addSelectionChangedListener(new ISelectionChangedListener() {
-			public void selectionChanged(SelectionChangedEvent event) {
-				try {
-					IStructuredSelection sel = (IStructuredSelection) event.getSelection();
-					selection = (IClasspathEntry) runtimeMap.get(sel.getFirstElement());
-					setPageComplete(true);
-				} catch (Exception e) {
-					selection = null;
-					setPageComplete(false);
-				}
-			}
-		});
-		
-		setControl(comp);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/StandardJreLabelProvider.java b/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/StandardJreLabelProvider.java
deleted file mode 100644
index 446ed8e..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/StandardJreLabelProvider.java
+++ /dev/null
@@ -1,49 +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
- *    IBM Corporation - Support for all server types
- ******************************************************************************/
-package org.eclipse.jst.server.ui.internal;
-
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.wst.common.project.facet.core.runtime.IRuntimeComponent;
-import org.eclipse.wst.common.project.facet.ui.IRuntimeComponentLabelProvider;
-/**
- * 
- */
-public final class StandardJreLabelProvider implements IRuntimeComponentLabelProvider {
-   private final IRuntimeComponent rc;
-
-   public StandardJreLabelProvider(final IRuntimeComponent rc) {
-		this.rc = rc;
-	}
-
-	public String getLabel() {
-		StringBuffer buf = new StringBuffer();
-		buf.append("JRE ");
-		buf.append(rc.getRuntimeComponentVersion().getVersionString());
-		buf.append(": ");
-		buf.append(rc.getProperty("name"));
-
-		return buf.toString();
-	}
-
-	public static final class Factory implements IAdapterFactory {
-		private static final Class[] ADAPTER_TYPES = { IRuntimeComponentLabelProvider.class };
-
-		public Object getAdapter(final Object adaptable, final Class adapterType) {
-			IRuntimeComponent rc = (IRuntimeComponent) adaptable;
-			return new StandardJreLabelProvider(rc);
-		}
-
-		public Class[] getAdapterList() {
-			return ADAPTER_TYPES;
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/Trace.java b/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/Trace.java
deleted file mode 100644
index 25d6791..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/Trace.java
+++ /dev/null
@@ -1,53 +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.server.ui.internal;
-/**
- * Helper class to route trace output.
- */
-public class Trace {
-	public static byte CONFIG = 0;
-	public static byte WARNING = 1;
-	public static byte SEVERE = 2;
-	public static byte FINEST = 3;
-
-	/**
-	 * Trace constructor comment.
-	 */
-	private Trace() {
-		super();
-	}
-
-	/**
-	 * Trace the given text.
-	 *
-	 * @param level a trace level
-	 * @param s a message
-	 */
-	public static void trace(byte level, String s) {
-		Trace.trace(level, s, null);
-	}
-	
-	/**
-	 * Trace the given message and exception.
-	 *
-	 * @param level a trace level
-	 * @param s a message
-	 * @param t a throwable
-	 */
-	public static void trace(byte level, String s, Throwable t) {
-		if (!JavaServerUIPlugin.getInstance().isDebugging())
-			return;
-
-		System.out.println(JavaServerUIPlugin.PLUGIN_ID + " " + s);
-		if (t != null)
-			t.printStackTrace();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/cactus/JUnitClientDelegate.java b/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/cactus/JUnitClientDelegate.java
deleted file mode 100644
index c75e92a..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/cactus/JUnitClientDelegate.java
+++ /dev/null
@@ -1,175 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 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:
- *    Daniel R. Somerfield - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.server.ui.internal.cactus;
-
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.*;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.jdt.internal.junit.launcher.JUnitBaseLaunchConfiguration;
-import org.eclipse.jdt.launching.IJavaLaunchConfigurationConstants;
-import org.eclipse.jface.window.Window;
-import org.eclipse.jst.server.core.internal.cactus.CactusLaunchable;
-import org.eclipse.jst.server.ui.internal.JavaServerUIPlugin;
-import org.eclipse.jst.server.ui.internal.Messages;
-import org.eclipse.ui.dialogs.ElementListSelectionDialog;
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.model.ClientDelegate;
-/**
- *
- */
-public class JUnitClientDelegate extends ClientDelegate {
-	public IStatus launch(IServer server, Object object, String launchMode, ILaunch launch) {
-		CactusLaunchable launchable = (CactusLaunchable) object;
-		ILaunchConfiguration config = findLaunchConfiguration(launchable, launchMode);
-		if (config == null) {
-			String testName = launchable.getTestName();
-			testName = "".equals(testName) ? launchable.getTestClassName()
-					: launchable.getTestClassName() + "." + testName + "()";
-			config = createConfiguration(launchable.getProjectName(), testName,
-					launchable.getTestClassName(), "", launchable.getTestName());
-		}
-		
-		URL url = launchable.getCactusURL();
-		String urlString = url.toString();
-		if (urlString.endsWith("/")) {
-			try {
-				url = new URL(urlString.substring(0, urlString.length() - 1));
-			} catch (MalformedURLException e) {
-				return new Status(IStatus.ERROR, JavaServerUIPlugin.PLUGIN_ID, IStatus.ERROR, Messages.errorInternalCactus, e);
-			}
-		}
-		
-		try {
-			final ILaunchConfigurationWorkingCopy copy = config.getWorkingCopy();
-			String vmArgs;
-			vmArgs = config.getAttribute(IJavaLaunchConfigurationConstants.ATTR_VM_ARGUMENTS, "");
-			copy.setAttribute(IJavaLaunchConfigurationConstants.ATTR_VM_ARGUMENTS,
-					vmArgs + " -Dcactus.contextURL=" + url.toString());
-			config = copy.doSave();
-			DebugUITools.launch(config, launchMode);
-		} catch (CoreException e) {
-			return new Status(IStatus.ERROR, JavaServerUIPlugin.PLUGIN_ID, IStatus.ERROR, Messages.errorInternalCactus, e);
-		}
-		return Status.OK_STATUS;
-	}
-
-	protected ILaunchConfiguration createConfiguration(String projectName,
-			String name, String mainType, String container, String testName) {
-		ILaunchConfiguration config = null;
-		try {
-			ILaunchConfigurationType configType = getJUnitLaunchConfigType();
-			ILaunchConfigurationWorkingCopy wc = configType.newInstance(null,
-					DebugPlugin.getDefault().getLaunchManager()
-							.generateUniqueLaunchConfigurationNameFrom(name));
-			wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_MAIN_TYPE_NAME, mainType);
-			wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_PROJECT_NAME, projectName);
-			wc.setAttribute(JUnitBaseLaunchConfiguration.ATTR_KEEPRUNNING, false);
-			wc.setAttribute(JUnitBaseLaunchConfiguration.LAUNCH_CONTAINER_ATTR, container);
-			if (testName.length() > 0)
-				wc.setAttribute(JUnitBaseLaunchConfiguration.TESTNAME_ATTR, testName);
-			config = wc.doSave();
-		} catch (CoreException e) {
-			JavaServerUIPlugin.log(e);
-		}
-		return config;
-	}
-
-	private ILaunchConfiguration findLaunchConfiguration(CactusLaunchable launchable, String mode) {
-		String testName = launchable.getTestName();
-		String testClass = launchable.getTestClassName();
-		String javaProjectName = launchable.getProjectName();
-		String container = "";
-		ILaunchConfigurationType configType = getJUnitLaunchConfigType();
-		List candidateConfigs = Collections.EMPTY_LIST;
-		try {
-			ILaunchConfiguration[] configs = DebugPlugin.getDefault()
-					.getLaunchManager().getLaunchConfigurations(configType);
-			candidateConfigs = new ArrayList(configs.length);
-			for (int i = 0; i < configs.length; i++) {
-				ILaunchConfiguration config = configs[i];
-				// TODO: we should probably extract the JUnit internal stuff and
-				// create a new CactusLaunchConfiguration
-				if ((config.getAttribute(
-						JUnitBaseLaunchConfiguration.LAUNCH_CONTAINER_ATTR, "").equals(container)) && //$NON-NLS-1$
-						(config.getAttribute(IJavaLaunchConfigurationConstants.ATTR_MAIN_TYPE_NAME,
-								"").equals(testClass)) && //$NON-NLS-1$
-						(config.getAttribute(JUnitBaseLaunchConfiguration.TESTNAME_ATTR, "").equals(testName)) && //$NON-NLS-1$
-						(config.getAttribute(IJavaLaunchConfigurationConstants.ATTR_PROJECT_NAME,
-								"").equals(javaProjectName))) { //$NON-NLS-1$
-					candidateConfigs.add(config);
-				}
-			}
-		} catch (CoreException e) {
-			JavaServerUIPlugin.log(e);
-		}
-		
-		// If there are no existing configs associated with the IType, create one.
-		// If there is exactly one config associated with the IType, return it.
-		// Otherwise, if there is more than one config associated with the IType,
-		// prompt the
-		// user to choose one.
-		int candidateCount = candidateConfigs.size();
-		if (candidateCount < 1) {
-			return null;
-		} else if (candidateCount == 1) {
-			return (ILaunchConfiguration) candidateConfigs.get(0);
-		} else {
-			// Prompt the user to choose a config. A null result means the user
-			// cancelled the dialog, in which case this method returns null,
-			// since cancelling the dialog should also cancel launching anything.
-			ILaunchConfiguration config = chooseConfiguration(candidateConfigs,
-					mode);
-			if (config != null) {
-				return config;
-			}
-		}
-		return null;
-	}
-
-	protected ILaunchConfiguration chooseConfiguration(List configList, String mode) {
-		IDebugModelPresentation labelProvider = DebugUITools
-				.newDebugModelPresentation();
-		ElementListSelectionDialog dialog = new ElementListSelectionDialog(
-				JavaServerUIPlugin.getActiveWorkbenchShell(), labelProvider);
-		dialog.setElements(configList.toArray());
-		dialog.setTitle(Messages.LaunchTestAction_message_selectConfiguration);
-		if (mode.equals(ILaunchManager.DEBUG_MODE))
-			dialog.setMessage(Messages.LaunchTestAction_message_selectDebugConfiguration);
-		else
-			dialog.setMessage(Messages.LaunchTestAction_message_selectRunConfiguration);
-		
-		dialog.setMultipleSelection(false);
-		int result = dialog.open();
-		labelProvider.dispose();
-		if (result == Window.OK)
-			return (ILaunchConfiguration) dialog.getFirstResult();
-		
-		return null;
-	}
-
-	protected ILaunchConfigurationType getJUnitLaunchConfigType() {
-		// TODO: might want to replace this with a custom launch configuration
-		ILaunchManager lm = DebugPlugin.getDefault().getLaunchManager();
-		return lm.getLaunchConfigurationType("org.eclipse.jdt.junit.launchconfig");
-	}
-
-	public boolean supports(IServer server, Object launchable, String launchMode) {
-		return launchable instanceof CactusLaunchable;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/cactus/NewServletTestCaseWizard.java b/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/cactus/NewServletTestCaseWizard.java
deleted file mode 100644
index f7fd896..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/cactus/NewServletTestCaseWizard.java
+++ /dev/null
@@ -1,208 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 BEA Systems, Inc. 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:
- *    Daniel R. Somerfield - initial API and implementation
- *******************************************************************************/
-package org.eclipse.jst.server.ui.internal.cactus;
-
-import java.io.StringWriter;
-import java.lang.reflect.InvocationTargetException;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.IPackageFragmentRoot;
-import org.eclipse.jdt.core.IType;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jdt.junit.wizards.NewTestCaseWizardPageOne;
-import org.eclipse.jdt.junit.wizards.NewTestCaseWizardPageTwo;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.operation.IRunnableWithProgress;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.wizard.Wizard;
-import org.eclipse.jst.server.ui.internal.ImageResource;
-import org.eclipse.jst.server.ui.internal.JavaServerUIPlugin;
-import org.eclipse.jst.server.ui.internal.Messages;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.*;
-import org.eclipse.ui.actions.WorkspaceModifyDelegatingOperation;
-import org.eclipse.ui.ide.IDE;
-import org.eclipse.ui.wizards.newresource.BasicNewResourceWizard;
-/**
- *
- */
-public class NewServletTestCaseWizard extends Wizard implements INewWizard {
-	private static final String SUPERCLASS_NAME = "org.apache.cactus.ServletTestCase"; //$NON-NLS-1$
-
-	protected static final String[] CLASSES_TO_CHECK = {
-		"org.apache.cactus.ServletTestCase", "junit.framework.TestCase",
-		"org.apache.commons.logging.Log", "org.aspectj.lang.JoinPoint",
-		"org.apache.commons.httpclient.HttpClient" };
-
-	protected static final String[] REQUIRED_LIBRARIES = {
-		"cactus-1.7.jar", "junit-3.8.1.jar", "aspectjrt-1.2.1.jar",
-		"commons-logging-1.0.4.jar", "commons-httpclient-2.0.2.jar" };
-
-	private IWorkbench fWorkbench;
-	private IStructuredSelection fSelection;
-	private NewTestCaseWizardPageTwo fPage2;
-	private NewTestCaseWizardPageOne fPage1;
-	
-	public NewServletTestCaseWizard() {
-		super();
-		setWindowTitle(Messages.NewServletTestCaseWizard_WindowTitle);
-		setDefaultPageImageDescriptor(ImageResource.getImageDescriptor(ImageResource.IMG_WIZ_CACTUS_TEST));
-	}
-
-	public void init(IWorkbench workbench, IStructuredSelection selection) {
-		fWorkbench = workbench;
-		fSelection = selection;
-	}
-
-	public void addPages() {
-		super.addPages();
-		fPage2 = new NewTestCaseWizardPageTwo();
-		fPage1 = new NewTestCaseWizardPageOne(fPage2) {
-			public void createControl(Composite parent) {
-				super.createControl(parent);
-				setSuperClass(SUPERCLASS_NAME, true);
-			}
-
-			protected IStatus validateIfJUnitProject() {
-				IPackageFragmentRoot root = getPackageFragmentRoot();
-				if (root == null)
-					return Status.OK_STATUS;
-
-				IJavaProject project = root.getJavaProject();
-				try {
-					for (int i = 0; i < CLASSES_TO_CHECK.length; i++) {
-						IType type = project.findType(CLASSES_TO_CHECK[i]);
-						if (type == null) {
-							MessageDialog.openError(getShell(),
-									Messages.NewServletTestCaseWizard_ErrorMessageTitleMissingLibrary,
-									NLS.bind(Messages.NewServletTestCaseWizard_ErrorMessageMissingLibrary, REQUIRED_LIBRARIES));
-							return Status.OK_STATUS;
-						}
-					}
-				} catch (JavaModelException e) {
-					JavaServerUIPlugin.log(e);
-				}
-				return Status.OK_STATUS;
-			}
-		};
-		addPage(fPage1);
-		fPage1.init(getSelection());
-		addPage(fPage2);
-
-	}
-
-	private IStructuredSelection getSelection() {
-		return fSelection;
-	}
-
-	public boolean performFinish() {
-		if (finishPage(fPage1.getRunnable())) {
-			IType newClass = fPage1.getCreatedType();
-
-			IResource resource = newClass.getCompilationUnit().getResource();
-			if (resource != null) {
-				BasicNewResourceWizard.selectAndReveal(resource, fWorkbench
-						.getActiveWorkbenchWindow());
-				openResource(resource);
-				// checkLibraryMissing();
-			}
-			return true;
-		}
-		return false;
-	}
-
-	/*private void checkLibraryMissing() {
-		IType newClass = fPage1.getCreatedType();
-		IJavaProject project = newClass.getJavaProject();
-		try {
-			IType type = project.findType(SUPERCLASS_NAME);
-			MessageDialog.openError(getShell(), NLS.bind(
-					Messages.NewServletTestCaseWizard_ErrorMessageMissingLibrary, REQUIRED_LIBRARIES),
-					Messages.NewServletTestCaseWizard_ErrorMessageMissingType);
-		} catch (JavaModelException e) {
-			JavaServerUIPlugin.log(e);
-		}
-	}*/
-
-	protected boolean finishPage(IRunnableWithProgress runnable) {
-		IRunnableWithProgress op = new WorkspaceModifyDelegatingOperation(runnable);
-		try {
-			PlatformUI.getWorkbench().getProgressService().runInUI(getContainer(), op,
-					ResourcesPlugin.getWorkspace().getRoot());
-		} catch (InvocationTargetException e) {
-			String title = Messages.NewServletTestCaseWizard_ErrorTitleNew; // NewJUnitWizard_op_error_title
-			String message = Messages.NewServletTestCaseWizard_ErrorTitleCreateOfElementFailed; // NewJUnitWizard_op_error_message
-			// ExceptionHandler.handle(e, shell, title, message);
-			displayMessageDialog(e, e.getMessage(), getShell(), title, message);
-			return false;
-		} catch (InterruptedException e) {
-			return false;
-		}
-		return true;
-	}
-
-	public static void displayMessageDialog(Throwable t, String exceptionMessage,
-			Shell shell, String title, String message) {
-		StringWriter msg = new StringWriter();
-		if (message != null) {
-			msg.write(message);
-			msg.write("\n\n"); //$NON-NLS-1$
-		}
-		if (exceptionMessage == null || exceptionMessage.length() == 0)
-			msg.write(Messages.NewServletTestCaseWizard_ErrorMessageSeeErrorLog);
-		else
-			msg.write(exceptionMessage);
-		MessageDialog.openError(shell, title, msg.toString());
-	}
-
-	protected void openResource(final IResource resource) {
-		if (resource.getType() == IResource.FILE) {
-			final IWorkbenchPage activePage = getActivePage();
-			if (activePage != null) {
-				final Display display = Display.getDefault();
-				if (display != null) {
-					display.asyncExec(new Runnable() {
-						public void run() {
-							try {
-								IDE.openEditor(activePage, (IFile) resource, true);
-							} catch (PartInitException e) {
-								JavaServerUIPlugin.log(e);
-							}
-						}
-					});
-				}
-			}
-		}
-	}
-
-	public static IWorkbenchPage getActivePage() {
-		IWorkbenchWindow activeWorkbenchWindow = getActiveWorkbenchWindow();
-		if (activeWorkbenchWindow == null)
-			return null;
-		return activeWorkbenchWindow.getActivePage();
-	}
-
-	public static IWorkbenchWindow getActiveWorkbenchWindow() {
-		IWorkbench workbench = JavaServerUIPlugin.getInstance().getWorkbench();
-		if (workbench != null)
-			return workbench.getActiveWorkbenchWindow();
-		
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/.classpath b/plugins/org.eclipse.wst.server.core/.classpath
deleted file mode 100644
index f29ae05..0000000
--- a/plugins/org.eclipse.wst.server.core/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="servercore/"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.wst.server.core/.cvsignore b/plugins/org.eclipse.wst.server.core/.cvsignore
deleted file mode 100644
index ac819a1..0000000
--- a/plugins/org.eclipse.wst.server.core/.cvsignore
+++ /dev/null
@@ -1,7 +0,0 @@
-bin
-temp.folder
-build.xml
-servercore.jar
-org.eclipse.wst.server.core_3.0.0.jar
-@dot
-src.zip
diff --git a/plugins/org.eclipse.wst.server.core/.options b/plugins/org.eclipse.wst.server.core/.options
deleted file mode 100644
index 6b73658..0000000
--- a/plugins/org.eclipse.wst.server.core/.options
+++ /dev/null
@@ -1,7 +0,0 @@
-# Debugging options for the org.eclipse.wst.server.core plugin
-
-# Turn on general debugging
-org.eclipse.wst.server.core/debug=true
-
-# Prints out values
-org.eclipse.wst.server.core/resources=false
diff --git a/plugins/org.eclipse.wst.server.core/.project b/plugins/org.eclipse.wst.server.core/.project
deleted file mode 100644
index bf1e7ef..0000000
--- a/plugins/org.eclipse.wst.server.core/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.wst.server.core</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.wst.server.core/META-INF/MANIFEST.MF b/plugins/org.eclipse.wst.server.core/META-INF/MANIFEST.MF
deleted file mode 100644
index c169581..0000000
--- a/plugins/org.eclipse.wst.server.core/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,19 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.wst.server.core; singleton:=true
-Bundle-Version: 1.0.2.qualifier
-Bundle-Activator: org.eclipse.wst.server.core.internal.ServerPlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.wst.server.core,
- org.eclipse.wst.server.core.internal;x-friends:="org.eclipse.wst.server.ui",
- org.eclipse.wst.server.core.internal.provisional;x-internal:=true,
- org.eclipse.wst.server.core.model,
- org.eclipse.wst.server.core.util
-Require-Bundle: org.eclipse.core.runtime,
- org.eclipse.core.resources,
- org.eclipse.core.expressions,
- org.eclipse.debug.core,
- org.eclipse.update.core;resolution:=optional
-Eclipse-AutoStart: true
diff --git a/plugins/org.eclipse.wst.server.core/about.html b/plugins/org.eclipse.wst.server.core/about.html
deleted file mode 100644
index 6f6b96c..0000000
--- a/plugins/org.eclipse.wst.server.core/about.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>February 24, 2005</p>	
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content.  Check the Redistributor's license that was provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/build.properties b/plugins/org.eclipse.wst.server.core/build.properties
deleted file mode 100644
index d9a7e00..0000000
--- a/plugins/org.eclipse.wst.server.core/build.properties
+++ /dev/null
@@ -1,22 +0,0 @@
-###############################################################################
-# Copyright (c) 2004 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = plugin.xml,\
-               plugin.properties,\
-               .,\
-               .options,\
-               META-INF/,\
-               about.html
-bin.excludes = bin/**,\
-               @dot/**,\
-               temp.folder/**
-src.includes = schema/,\
-               component.xml
-source.. = servercore/
diff --git a/plugins/org.eclipse.wst.server.core/component.xml b/plugins/org.eclipse.wst.server.core/component.xml
deleted file mode 100644
index 4f43974..0000000
--- a/plugins/org.eclipse.wst.server.core/component.xml
+++ /dev/null
@@ -1,76 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<component xmlns="http://eclipse.org/wtp/releng/tools/component-model" name="org.eclipse.wst.server">
-  <component-depends unrestricted="true"/>
-  <plugin id="org.eclipse.wst.server.core" fragment="false"/>
-  <package name="org.eclipse.wst.server.core">
-    <type name="IModule" implement="false" subclass="false" instantiate="false"/>
-    <type name="IModuleArtifact" implement="false" subclass="false" instantiate="false"/>
-    <type name="IModuleType" implement="false" subclass="false" instantiate="false"/>
-<!--    <type name="IProjectProperties" implement="false" subclass="false" instantiate="false"/>-->
-    <type name="IPublishListener" subclass="false" instantiate="false"/>
-    <type name="IRuntime" implement="false" subclass="false" instantiate="false"/>
-    <type name="IRuntimeLifecycleListener" subclass="false" instantiate="false"/>
-<!--    <type name="IRuntimeTargetHandler" implement="false" subclass="false" instantiate="false"/>-->
-    <type name="IRuntimeType" implement="false" subclass="false" instantiate="false"/>
-    <type name="IRuntimeWorkingCopy" implement="false" subclass="false" instantiate="false"/>
-    <type name="IServer" implement="false" subclass="false" instantiate="false"/>
-    <type name="IServerAttributes" implement="false" subclass="false" instantiate="false"/>
-    <type name="IServerLifecycleListener" subclass="false" instantiate="false"/>
-    <type name="IServerListener" subclass="false" instantiate="false"/>
-    <type name="IServerType" implement="false" subclass="false" instantiate="false"/>
-    <type name="IServerWorkingCopy" implement="false" subclass="false" instantiate="false"/>
-    <type name="ServerCore" implement="false" subclass="false" instantiate="false"/>
-    <type name="ServerEvent" implement="false" subclass="false" instantiate="false"/>
-    <type name="ServerPort"/>
-    <type name="ServerUtil" implement="false" subclass="false" instantiate="false"/>
-    <type name="TaskModel" implement="false"/>
-  </package>
-  <package name="org.eclipse.wst.server.core.model">
-    <type name="IURLProvider" subclass="false"/>
-    <type name="ModuleFactoryDelegate"/>
-    <type name="RuntimeDelegate"/>
-    <type name="RuntimeLocatorDelegate"/>
-<!--    <type name="RuntimeTargetHandlerDelegate"/> -->
-    <type name="IModuleFile"/>
-    <type name="IModuleFolder"/>
-    <type name="IModuleResource"/>
-    <type name="IModuleResourceDelta"/>
-    <type name="ModuleArtifactAdapterDelegate"/>
-    <type name="LaunchableAdapterDelegate"/>
-    <type name="ClientDelegate"/>
-    <type name="ModuleDelegate"/>
-    <type name="PublishTaskDelegate"/>
-    <type name="PublishOperation"/>
-    <type name="ServerBehaviourDelegate"/>
-    <type name="ServerDelegate"/>
-    <type name="InternalInitializer" implement="false" subclass="false" instantiate="false" reference="false"/>
-  </package>
-  <package name="org.eclipse.wst.server.core.util">
-    <type name="HttpLaunchable"/>
-    <type name="IStaticWeb"/>
-    <type name="NullModuleArtifact"/>
-    <type name="PublishAdapter"/>
-    <type name="ProjectModule"/>
-    <type name="ProjectModuleFactoryDelegate"/>
-    <type name="RuntimeLifecycleAdapter"/>
-    <type name="ServerLifecycleAdapter"/>
-    <type name="SocketUtil"/>
-    <type name="WebResource"/>
-  </package>
-
-  <plugin id="org.eclipse.wst.server.ui" fragment="false"/>
-  <package name="org.eclipse.wst.server.ui">
-    <type name="ServerLaunchConfigurationTab"/>
-    <type name="ServerUIUtil" implement="false" subclass="false" instantiate="false"/>
-    <type name="ServerUICore" implement="false" subclass="false" instantiate="false"/>
-  </package>
-  <package name="org.eclipse.wst.server.ui.editor">
-    <type name="ServerEditorPart"/>
-    <type name="ServerEditorSection"/>
-    <type name="IServerEditorPartInput"/>
-  </package>
-  <package name="org.eclipse.wst.server.ui.wizard">
-    <type name="IWizardHandle"/>
-    <type name="WizardFragment"/>
-  </package>
-</component>
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/plugin.properties b/plugins/org.eclipse.wst.server.core/plugin.properties
deleted file mode 100644
index 1c059b8..0000000
--- a/plugins/org.eclipse.wst.server.core/plugin.properties
+++ /dev/null
@@ -1,30 +0,0 @@
-###############################################################################
-# Copyright (c) 2004, 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
-###############################################################################
-pluginName=Server Core
-providerName=Eclipse.org
-
-extensionPointServerStartup=Server Startup
-extensionPointModuleTypes=Module Types
-extensionPointRuntimeTypes=Runtime Types
-extensionPointRuntimeTargetHandlers=Runtime Target Handlers
-extensionPointRuntimeLocators=Runtime Locators
-extensionPointServerTypes=Server Types
-extensionPointServerLocators=Server Locators
-extensionPointModuleFactories=Module Factories
-extensionPointModuleArtifactAdapters=Module Artifact Adapters
-extensionPointLaunchableAdapters=Launchable Adapters
-extensionPointClients=Clients
-extensionPointPublishTasks=Publish Tasks
-extensionPointServerMonitors=Server Monitors
-extensionPointInstallableServers=Installable Servers
-extensionPointInstallableRuntimes=Installable Runtimes
-
-moduleTypeUnknown=Unknown module
diff --git a/plugins/org.eclipse.wst.server.core/plugin.xml b/plugins/org.eclipse.wst.server.core/plugin.xml
deleted file mode 100644
index 8843c09..0000000
--- a/plugins/org.eclipse.wst.server.core/plugin.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<plugin>
-  <extension-point id="moduleTypes" name="%extensionPointModuleTypes" schema="schema/moduleTypes.exsd"/>
-  <extension-point id="runtimeTypes" name="%extensionPointRuntimeTypes" schema="schema/runtimeTypes.exsd"/>
-  <extension-point id="runtimeTargetHandlers" name="%extensionPointRuntimeTargetHandlers" schema="schema/runtimeTargetHandlers.exsd"/>
-  <extension-point id="runtimeLocators" name="%extensionPointRuntimeLocators" schema="schema/runtimeLocators.exsd"/>
-  <extension-point id="serverTypes" name="%extensionPointServerTypes" schema="schema/serverTypes.exsd"/>
-  <extension-point id="serverLocators" name="%extensionPointServerLocators" schema="schema/internalServerLocators.exsd"/>
-  <extension-point id="moduleFactories" name="%extensionPointModuleFactories" schema="schema/moduleFactories.exsd"/>
-  <extension-point id="moduleArtifactAdapters" name="%extensionPointModuleArtifactAdapters" schema="schema/moduleArtifactAdapters.exsd"/>
-  <extension-point id="launchableAdapters" name="%extensionPointLaunchableAdapters" schema="schema/launchableAdapters.exsd"/>
-  <extension-point id="clients" name="%extensionPointClients" schema="schema/clients.exsd"/>
-  <extension-point id="publishTasks" name="%extensionPointPublishTasks" schema="schema/publishTasks.exsd"/>
-  <extension-point id="internalServerMonitors" name="%extensionPointServerMonitors" schema="schema/serverMonitors.exsd"/>
-  <extension-point id="internalStartup" name="%extensionPointServerStartup" schema="schema/startup.exsd"/>
-  <extension-point id="installableServers" name="%extensionPointInstallableServers" schema="schema/installableServers.exsd"/>
-  <extension-point id="installableRuntimes" name="%extensionPointInstallableRuntimes" schema="schema/installableRuntimes.exsd"/>
-  
-  <extension point="org.eclipse.wst.server.core.moduleTypes">
-    <moduleType
-       id="*"
-       name="%moduleTypeUnknown"/>
-    <moduleType
-       id="wst.web"
-       name="%moduleTypeJ2EEUtilityName"/>
-  </extension>
-</plugin>
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/schema/clients.exsd b/plugins/org.eclipse.wst.server.core/schema/clients.exsd
deleted file mode 100644
index 99517fc..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/clients.exsd
+++ /dev/null
@@ -1,163 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.wst.server.core">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.wst.server.core" id="clients" name="Clients"/>

-      </appInfo>

-      <documentation>

-         This extension point provides a way to launch a client for a specific type of resource that is being run on a server.

-      </documentation>

-   </annotation>

-

-   <include schemaLocation="schema://org.eclipse.core.expressions/schema/expressionLanguage.exsd"/>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="client" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="client">

-      <annotation>

-         <appInfo>

-            <meta.element labelAttribute="name"/>

-         </appInfo>

-      </annotation>

-      <complexType>

-         <sequence>

-            <element ref="enablement"/>

-         </sequence>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a unique identifier for this extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="class" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies the fully qualified name of the Java class that extend &lt;samp&gt;ClientDelegate&lt;/samp&gt;.

-Clieint instances of this type will delegate to instances of this class to launch.

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.wst.server.core.model.ClientDelegate"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  a translatable name used to identify the client

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="description" type="string">

-            <annotation>

-               <documentation>

-                  a translatable description of this client

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="launchable" type="string">

-            <annotation>

-               <documentation>

-                  the fully qualified classname of the launchable object that this client supports

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="priority" type="string">

-            <annotation>

-               <documentation>

-                  an optional priority atrribute which specifies a relative ordering of artifact adapters. Adapters with a higher number are always used first. To override another adapter, simply provide a higher priority value that the other adapter. The priority is 0 if no priority is specified

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         1.0

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a client extension point:

-

-&lt;pre&gt;

-   &lt;extension 

-         point=&quot;org.eclipse.wst.server.core.clients&quot;&gt;

-      &lt;client

-            id=&quot;com.example.clients&quot;

-            name=&quot;%clientName&quot;

-            description=&quot;%clientDescription&quot;

-            class=&quot;com.example.ExampleClient&quot;/&gt;

-   &lt;/extension&gt;

-&lt;/pre&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that extends &lt;code&gt;org.eclipse.wst.server.core.model.ClientDelegate&lt;/code&gt; and contains a public 0-arg constructor.

-      </documentation>

-   </annotation>

-   

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;

-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 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/plugins/org.eclipse.wst.server.core/schema/installableRuntimes.exsd b/plugins/org.eclipse.wst.server.core/schema/installableRuntimes.exsd
deleted file mode 100644
index 3caa881..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/installableRuntimes.exsd
+++ /dev/null
@@ -1,159 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.wst.server.core">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.wst.server.core" id="installableRuntimes" name="Installable Runtimes"/>
-      </appInfo>
-      <documentation>
-         This extension point is used to install new runtimes from remote update manager sites.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="installableRuntime" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="installableRuntime">
-      <annotation>
-         <appInfo>
-            <meta.element labelAttribute="name"/>
-         </appInfo>
-      </annotation>
-      <complexType>
-         <sequence>
-            <element ref="installableRuntime"/>
-         </sequence>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a unique identifier for this extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="featureId" type="string" use="required">
-            <annotation>
-               <documentation>
-                  the id of the feature containing the runtime bundle
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="featureVersion" type="string" use="required">
-            <annotation>
-               <documentation>
-                  the version of the feature containing the runtime bundle
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="featureSite" type="string" use="required">
-            <annotation>
-               <documentation>
-                  the feature (update manager) site URL
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="bundleId" type="string" use="required">
-            <annotation>
-               <documentation>
-                  the id of the bundle in which the runtime zip is in
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="path" type="string" use="required">
-            <annotation>
-               <documentation>
-                  the relative path of the runtime zip inside the bundle
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         &lt;b&gt;This extension point is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.&lt;/b&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         The following is an example of an installable runtime extension point:
-
-&lt;pre&gt;
-   &lt;extension 
-         point=&quot;org.eclipse.wst.server.core.installableRuntimes&quot;&gt;
-      &lt;installableRuntime
-            id=&quot;com.myruntime.id&quot;
-            featureVersion=&quot;1.0.0&quot;
-            featureId=&quot;com.myfeature&quot;
-            featureSite=&quot;xyz&quot;
-            bundleId=&quot;com.ibm.mybundle&quot;
-            path=&quot;/zips/myRuntime.zip&quot;/&gt;
-   &lt;/extension&gt;
-&lt;/pre&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         Copyright (c) 2005 IBM Corporation and others.&lt;br&gt;
-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 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.wst.server.core/schema/installableServers.exsd b/plugins/org.eclipse.wst.server.core/schema/installableServers.exsd
deleted file mode 100644
index aa48b2f..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/installableServers.exsd
+++ /dev/null
@@ -1,181 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.wst.server.core">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.wst.server.core" id="installableServers" name="Installable Servers"/>
-      </appInfo>
-      <documentation>
-         This extension point is used to install new server adapters from remote update manager sites.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="installableServer" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="installableServer">
-      <annotation>
-         <appInfo>
-            <meta.element labelAttribute="name"/>
-         </appInfo>
-      </annotation>
-      <complexType>
-         <sequence>
-            <element ref="installableServer"/>
-         </sequence>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a unique identifier for this extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a translatable name used to identify the runtime type
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="description" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a translatable description of the runtime type
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="vendor" type="string">
-            <annotation>
-               <documentation>
-                  a translatable vendor name
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="version" type="string">
-            <annotation>
-               <documentation>
-                  a translatable version number
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="featureId" type="string" use="required">
-            <annotation>
-               <documentation>
-                  the id of the feature containing the server adapter bundle
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="featureVersion" type="string" use="required">
-            <annotation>
-               <documentation>
-                  the version of the feature containing the server adapter bundle
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="featureSite" type="string" use="required">
-            <annotation>
-               <documentation>
-                  the feature (update manager) site URL
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         &lt;b&gt;This extension point is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.&lt;/b&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         The following is an example of an installable server extension point:
-
-&lt;pre&gt;
-   &lt;extension 
-         point=&quot;org.eclipse.wst.server.core.installableServers&quot;&gt;
-      &lt;installableServer
-            id=&quot;com.myserver.id&quot;
-            name=&quot;My runtime name&quot;
-            description=&quot;My runtime description&quot;
-            vendor=&quot;xyz&quot;
-            version=&quot;1.0&quot;
-            featureVersion=&quot;1.0.0&quot;
-            featureId=&quot;com.myfeature&quot;
-            featureSite=&quot;xyz&quot;/&gt;
-   &lt;/extension&gt;
-&lt;/pre&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         Copyright (c) 2005 IBM Corporation and others.&lt;br&gt;
-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 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.wst.server.core/schema/internalServerLocators.exsd b/plugins/org.eclipse.wst.server.core/schema/internalServerLocators.exsd
deleted file mode 100644
index 729e8ca..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/internalServerLocators.exsd
+++ /dev/null
@@ -1,135 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.wst.server.core">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.wst.server.core" id="serverLocators" name="Server Locators"/>
-      </appInfo>
-      <documentation>
-         This extension point is used to locate new servers on the local or remote machines.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="serverLocator" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="serverLocator">
-      <annotation>
-         <appInfo>
-            <meta.element labelAttribute="name"/>
-         </appInfo>
-      </annotation>
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a unique identifier for this extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies the fully qualified name of the Java class that implements &lt;samp&gt;ServerLocatorDelegate&lt;/samp&gt;.
-Server locator instances of this type will delegate to instances of this class.
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="java"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="supportsRemoteHosts" type="string" use="required">
-            <annotation>
-               <documentation>
-                  local and/or remote
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="typeIds" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         1.0
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         The following is an example of a server locator extension point:
-
-&lt;pre&gt;
-   &lt;extension 
-         point=&quot;org.eclipse.wst.server.core.serverLocators&quot;&gt;
-      &lt;serverLocator
-            id=&quot;com.example.locator&quot;
-            name=&quot;%serverLocatorName&quot;
-            description=&quot;%serverLocatorDescription&quot;
-            class=&quot;com.example.ExampleServerLocator&quot;/&gt;
-   &lt;/extension&gt;
-&lt;/pre&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that implements the interface &lt;b&gt;org.eclipse.wst.server.core.internal.provisional.ServerLocatorDelegate&lt;/b&gt;.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;
-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 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.wst.server.core/schema/launchableAdapters.exsd b/plugins/org.eclipse.wst.server.core/schema/launchableAdapters.exsd
deleted file mode 100644
index d2f9701..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/launchableAdapters.exsd
+++ /dev/null
@@ -1,137 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.wst.server.core">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.wst.server.core" id="launchableAdapters" name="Launchable Adapters"/>

-      </appInfo>

-      <documentation>

-         This extension point provides a way for a server to support the Run on Server scenario.

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="launchableAdapter" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="launchableAdapter">

-      <annotation>

-         <appInfo>

-            <meta.element labelAttribute="name"/>

-         </appInfo>

-      </annotation>

-      <complexType>

-         <sequence>

-         </sequence>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a unique identifier for this extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="class" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies the fully qualified name of the Java class that extends &lt;samp&gt;LaunchableAdapterDelegate&lt;/samp&gt;.

-Launchable adapter instances of this type will delegate to instances of this class.

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.wst.server.core.model.LaunchableAdapterDelegate"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="typeIds" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         1.0

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a launchable adapter extension point:

-

-&lt;pre&gt;

-   &lt;extension 

-         point=&quot;org.eclipse.wst.server.core.launchableAdapters&quot;&gt;

-      &lt;launchableAdapter

-              id=&quot;com.example.launchableAdapter&quot;

-              class=&quot;com.example.ExampleLaunchableAdapterDelegate&quot;/&gt;

-   &lt;/extension&gt;

-&lt;/pre&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that extends &lt;code&gt;org.eclipse.wst.server.core.model.LaunchableAdapterDelegate&lt;/code&gt; and contains a public 0-arg constructor.

-      </documentation>

-   </annotation>

-   

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;

-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 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/plugins/org.eclipse.wst.server.core/schema/moduleArtifactAdapters.exsd b/plugins/org.eclipse.wst.server.core/schema/moduleArtifactAdapters.exsd
deleted file mode 100644
index 0a63f1d..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/moduleArtifactAdapters.exsd
+++ /dev/null
@@ -1,134 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.wst.server.ui">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.wst.server.ui" id="moduleArtifactAdapters" name="Module Artifact Adapters"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <include schemaLocation="schema://org.eclipse.core.expressions/schema/expressionLanguage.exsd"/>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="moduleArtifactAdapter" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="moduleArtifactAdapter">

-      <annotation>

-         <appInfo>

-            <meta.element labelAttribute="name"/>

-         </appInfo>

-      </annotation>

-      <complexType>

-         <sequence>

-            <element ref="enablement"/>

-         </sequence>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a unique identifier for this extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="class" type="string">

-            <annotation>

-               <documentation>

-                  specifies the fully qualified name of the Java class that implements &lt;samp&gt;org.eclipse.wst.server.core.model.ModuleArtifactAdapterDelegate&lt;/samp&gt;.

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.wst.server.core.model.ModuleArtifactAdapterDelegate"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="priority" type="string">

-            <annotation>

-               <documentation>

-                  an optional priority atrribute which specifies a relative ordering of artifact adapters. Adapters with a higher number are always used first. To override another adapter, simply provide a higher priority value that the other adapter. The priority is 0 if no priority is specified

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         &lt;b&gt;This extension point is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.&lt;/b&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a module object adapter extension point:

-

-&lt;pre&gt;

-

-&lt;/pre&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that extends &lt;code&gt;org.eclipse.wst.server.core.model.ModuleArtifactAdapterDelegate&lt;/code&gt; and contains a public 0-arg constructor.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;

-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 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/plugins/org.eclipse.wst.server.core/schema/moduleFactories.exsd b/plugins/org.eclipse.wst.server.core/schema/moduleFactories.exsd
deleted file mode 100644
index 7181577..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/moduleFactories.exsd
+++ /dev/null
@@ -1,159 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.wst.server.core">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.wst.server.core" id="moduleFactories" name="Module Factories"/>

-      </appInfo>

-      <documentation>

-         This extension point is used to provide a factory for modules that can be used by servers.

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="moduleFactory" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="moduleFactory">

-      <annotation>

-         <appInfo>

-            <meta.element labelAttribute="name"/>

-         </appInfo>

-      </annotation>

-      <complexType>

-         <sequence>

-            <element ref="moduleType" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a unique identifier for this extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="class" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies the fully qualified name of the Java class that extends &lt;samp&gt;ModuleFactoryDelegate&lt;/samp&gt;.

-Module factory instances of this type will delegate to instances of this class.

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.wst.server.core.model.ModuleFactoryDelegate"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="projects" type="boolean">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="order" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="moduleType">

-      <complexType>

-         <attribute name="types" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="versions" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         1.0

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a module factory extension point:

-

-&lt;pre&gt;

-

-&lt;/pre&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that extends &lt;code&gt;org.eclipse.wst.server.core.model.ModuleFactoryDelegate&lt;/code&gt; and contains a public 0-arg constructor.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;

-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 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/plugins/org.eclipse.wst.server.core/schema/moduleTypes.exsd b/plugins/org.eclipse.wst.server.core/schema/moduleTypes.exsd
deleted file mode 100644
index d1659de..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/moduleTypes.exsd
+++ /dev/null
@@ -1,130 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.wst.server.core">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.wst.server.core" id="moduleTypes" name="Module Types"/>

-      </appInfo>

-      <documentation>

-         This extension point is used to provide a new module type.

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="moduleType" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="moduleType">

-      <annotation>

-         <appInfo>

-            <meta.element labelAttribute="name"/>

-         </appInfo>

-      </annotation>

-      <complexType>

-         <sequence>

-         </sequence>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a unique identifier for this extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a translatable name used to identify the module type

-               </documentation>

-               <appInfo>

-                  <meta.attribute translatable="true"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         1.0

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a module type extension point:

-

-&lt;pre&gt;

-   &lt;extension 

-         point=&quot;org.eclipse.wst.server.core.moduleTypes&quot;&gt;

-      &lt;moduleType

-            id=&quot;com.example&quot;

-            name=&quot;%moduleTypeName&quot;

-            description=&quot;%moduleTypeDescription&quot;/&gt;

-   &lt;/extension&gt;

-&lt;/pre&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-   

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;

-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 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/plugins/org.eclipse.wst.server.core/schema/publishTasks.exsd b/plugins/org.eclipse.wst.server.core/schema/publishTasks.exsd
deleted file mode 100644
index 1730958..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/publishTasks.exsd
+++ /dev/null
@@ -1,132 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.wst.server.core">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.wst.server.core" id="publishTasks" name="Publish Tasks"/>
-      </appInfo>
-      <documentation>
-         This extension point is used to provide a task that is run while publishing to a server.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="publishTask" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="publishTask">
-      <annotation>
-         <appInfo>
-            <meta.element labelAttribute="name"/>
-         </appInfo>
-      </annotation>
-      <complexType>
-         <sequence>
-         </sequence>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a unique identifier for this extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies the fully qualified name of the Java class that implements &lt;samp&gt;org.eclipse.wst.server.core.model.PublishTaskDelegate&lt;/samp&gt;.
-Publish task instances of this type will delegate to instances of this class.
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="java" basedOn="org.eclipse.wst.server.core.model.PublishTaskDelegate"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="typeIds" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a comma separated list of server type ids that this task may apply to. Used for memory &amp; performance reasons
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         1.0
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         The following is an example of a publish task extension point:
-
-&lt;pre&gt;
-
-&lt;/pre&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that implements the interface &lt;code&gt;org.eclipse.wst.server.core.model.PublishTaskDelegate&lt;/code&gt;.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;
-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 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.wst.server.core/schema/runtimeLocators.exsd b/plugins/org.eclipse.wst.server.core/schema/runtimeLocators.exsd
deleted file mode 100644
index 5f4561b..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/runtimeLocators.exsd
+++ /dev/null
@@ -1,137 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.wst.server.core">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.wst.server.core" id="runtimeLocators" name="Runtime Locators"/>

-      </appInfo>

-      <documentation>

-         This extension point is used to locate new runtimes on the local machine.

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="runtimeLocator" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="runtimeLocator">

-      <annotation>

-         <appInfo>

-            <meta.element labelAttribute="name"/>

-         </appInfo>

-      </annotation>

-      <complexType>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a unique identifier for this extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="class" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies the fully qualified name of the Java class that extends &lt;samp&gt;RuntimeLocatorDelegate&lt;/samp&gt;.

-Runtime locator instances of this type will delegate to instances of this class.

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.wst.server.core.model.RuntimeLocatorDelegate"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="typeIds" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         1.0

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a runtime locator extension point:

-

-&lt;pre&gt;

-   &lt;extension 

-         point=&quot;org.eclipse.wst.server.core.runtimeLocators&quot;&gt;

-      &lt;runtimeLocator

-            id=&quot;com.example.locator&quot;

-            name=&quot;%runtimeLocatorName&quot;

-            description=&quot;%runtimeLocatorDescription&quot;

-            class=&quot;com.example.ExampleRuntimeLocator&quot;/&gt;

-   &lt;/extension&gt;

-&lt;/pre&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that extends &lt;code&gt;org.eclipse.wst.server.core.model.RuntimeLocatorDelegate&lt;/code&gt; and contains a public 0-arg constructor.

-      </documentation>

-   </annotation>

-   

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;

-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 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/plugins/org.eclipse.wst.server.core/schema/runtimeTargetHandlers.exsd b/plugins/org.eclipse.wst.server.core/schema/runtimeTargetHandlers.exsd
deleted file mode 100644
index b910392..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/runtimeTargetHandlers.exsd
+++ /dev/null
@@ -1,145 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.wst.server.core">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.wst.server.core" id="runtimeTypes" name="Runtime Types"/>

-      </appInfo>

-      <documentation>

-         This extension point is used to provide a new runtime target handler. Runtime target handlers are called whenever a runtime target is added or removed from a project. They can be used to switch Java classpaths, setup default resources, etc.

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="runtimeTargetHandler" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="runtimeTargetHandler">

-      <annotation>

-         <appInfo>

-            <meta.element labelAttribute="name"/>

-         </appInfo>

-      </annotation>

-      <complexType>

-         <sequence>

-         </sequence>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a unique identifier for this extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="runtimeTypeIds" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a comma separated list of runtime type ids that this handler may support. Used for memory &amp; performance reasons

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="class" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies the fully qualified name of the Java class that extends &lt;samp&gt;RuntimeTargetHandlerDelegate&lt;/samp&gt;.

-Runtime target handler instances of this type will delegate to instances of this class.

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.wst.server.core.model.RuntimeTargetHandlerDelegate"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="order" type="string">

-            <annotation>

-               <documentation>

-                  an integer order used to sort handlers relative to each other

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         1.0

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a runtime target handler extension point:

-

-&lt;pre&gt;

-   &lt;extension 

-         point=&quot;org.eclipse.wst.server.core.runtimeTargetHandlers&quot;&gt;

-      &lt;runtimeTargetHandler

-            id=&quot;com.example.runtimeTargetHandler&quot;

-            runtimeTypeIds=&quot;com.example.runtime, com.example2.*&quot;

-            class=&quot;com.example.ExampleRuntimeTargetHandler&quot;/&gt;

-    &lt;/extension&gt;

-&lt;/pre&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that extends &lt;code&gt;org.eclipse.wst.server.core.model.RuntimeTargetHandlerDelegate&lt;/code&gt; and contains a public 0-arg constructor.

-      </documentation>

-   </annotation>

-   

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;

-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 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/plugins/org.eclipse.wst.server.core/schema/runtimeTypes.exsd b/plugins/org.eclipse.wst.server.core/schema/runtimeTypes.exsd
deleted file mode 100644
index d10ed02..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/runtimeTypes.exsd
+++ /dev/null
@@ -1,199 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.wst.server.core">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.wst.server.core" id="runtimeTypes" name="Runtime Types"/>

-      </appInfo>

-      <documentation>

-         This extension point is used to provide a new runtime type.

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="runtimeType" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="runtimeType">

-      <annotation>

-         <appInfo>

-            <meta.element labelAttribute="name"/>

-         </appInfo>

-      </annotation>

-      <complexType>

-         <sequence>

-            <element ref="moduleType" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a unique identifier for this extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a translatable name used to identify the runtime type

-               </documentation>

-               <appInfo>

-                  <meta.attribute translatable="true"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="description" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a translatable description of the runtime type

-               </documentation>

-               <appInfo>

-                  <meta.attribute translatable="true"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="vendor" type="string">

-            <annotation>

-               <documentation>

-                  a translatable vendor name

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="version" type="string">

-            <annotation>

-               <documentation>

-                  a translatable version number

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="vendorId" type="string">

-            <annotation>

-               <documentation>

-                  an id used to identify the vendor

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="class" type="string">

-            <annotation>

-               <documentation>

-                  specifies the fully qualified name of the Java class that extends &lt;samp&gt;RuntimeDelegate&lt;/samp&gt;.

-Runtime instances of this type will delegate to instances of this class. Delegates must also have a public 0-arg constructor.

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="moduleType">

-      <complexType>

-         <attribute name="types" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a comma separated list of the module types that this runtime supports

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="versions" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a comma separated list of the module versions that this runtime supports

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         1.0

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a runtime type extension point:

-

-&lt;pre&gt;

-   &lt;extension 

-         point=&quot;org.eclipse.wst.server.core.runtimeTypes&quot;&gt;

-      &lt;runtimeType

-            id=&quot;com.example.runtime&quot;

-            name=&quot;%runtimeTypeName&quot;

-            description=&quot;%runtimeTypeDescription&quot;

-            vendor=&quot;%runtimeTypeVendor&quot;

-            version=&quot;1.0&quot;

-            class=&quot;com.example.ExampleRuntimeDelegate&quot;&gt;

-         &lt;moduleType

-               types=&quot;j2ee.web&quot;

-               versions=&quot;1.2, 1.3, 1.4&quot;/&gt;

-      &lt;/runtimeType&gt;

-   &lt;/extension&gt;

-&lt;/pre&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that extends &lt;code&gt;org.eclipse.wst.server.core.model.RuntimeDelegate&lt;/code&gt; and contains a public 0-arg constructor.

-      </documentation>

-   </annotation>

-   

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;

-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 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/plugins/org.eclipse.wst.server.core/schema/serverMonitors.exsd b/plugins/org.eclipse.wst.server.core/schema/serverMonitors.exsd
deleted file mode 100644
index f0f49b4..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/serverMonitors.exsd
+++ /dev/null
@@ -1,146 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.wst.server.core">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.wst.server.core" id="internalServerMonitor" name="Server Monitor"/>

-      </appInfo>

-      <documentation>

-         This extension point is used to provide a new monitor for servers.

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="monitor" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="monitor">

-      <annotation>

-         <appInfo>

-            <meta.element labelAttribute="name"/>

-         </appInfo>

-      </annotation>

-      <complexType>

-         <sequence>

-         </sequence>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a unique identifier for this extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  a translatable name used to identify this monitor

-               </documentation>

-               <appInfo>

-                  <meta.attribute translatable="true"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="description" type="string">

-            <annotation>

-               <documentation>

-                  a translatable description of this monitor

-               </documentation>

-               <appInfo>

-                  <meta.attribute translatable="true"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="class" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies the fully qualified name of the Java class that implements &lt;samp&gt;org.eclipse.wst.server.core.internal.ServerMonitorDelegate&lt;/samp&gt;

-

-This extension point is internal and should not be used by any other plugins.

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.wst.server.core.internal.ServerMonitorDelegate"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         1.0

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a server monitor extension point:

-

-&lt;pre&gt;

-

-&lt;/pre&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that implements the interface &lt;code&gt;org.eclipse.wst.server.core.internal.ServerMonitorDelegate&lt;/code&gt;.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;

-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 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/plugins/org.eclipse.wst.server.core/schema/serverTypes.exsd b/plugins/org.eclipse.wst.server.core/schema/serverTypes.exsd
deleted file mode 100644
index 1d14b8f..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/serverTypes.exsd
+++ /dev/null
@@ -1,237 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.wst.server.core">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.wst.server.core" id="serverTypes" name="Server Types"/>

-      </appInfo>

-      <documentation>

-         This extension point is used to provide support for a new server type.

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="serverType"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="serverType">

-      <complexType>

-         <sequence>

-         </sequence>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  unique identifier for the server type

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a translatable name used to identify this server type

-               </documentation>

-               <appInfo>

-                  <meta.attribute translatable="true"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="description" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a translatable description of this server type

-               </documentation>

-               <appInfo>

-                  <meta.attribute translatable="true"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="class" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies the fully qualified name of the Java class that extends &lt;samp&gt;org.eclipse.wst.server.core.model.ServerDelegate&lt;/samp&gt;.

-Server instances of this type will delegate to instances of this class. Delegates must also have a public 0-arg constructor.

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.wst.server.core.model.ServerDelegate"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="behaviourClass" type="string">

-            <annotation>

-               <documentation>

-                  specifies the fully qualified name of the Java class that implements &lt;samp&gt;org.eclipse.wst.server.core.model.ServerBehaviourDelegate&lt;/samp&gt;.

-Server instances of this type will delegate to instances of this class. Delegates must also have a public 0-arg constructor.

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.wst.server.core.model.ServerBehaviourDelegate"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="hasConfiguration" type="boolean">

-            <annotation>

-               <documentation>

-                  true if this server has server configuration files

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="runtimeTypeId" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="launchConfigId" type="string">

-            <annotation>

-               <documentation>

-                  the launch configuration id for the launch configuration that is able to start this server

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="supportsRemoteHosts" type="string">

-            <annotation>

-               <documentation>

-                  true if this server type can work with remote host names, false if this server type can only work on localhost. if unspecified, false is assumed

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="runtime" type="string">

-            <annotation>

-               <documentation>

-                  &quot;true&quot; if this server requires a runtime, &quot;false&quot; otherwise

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="launchModes" type="string">

-            <annotation>

-               <documentation>

-                  the launch modes that this server supports

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="initialState" type="string">

-            <annotation>

-               <documentation>

-                  the intial state of the server, either &quot;started&quot;, or &quot;stopped&quot;. if this attribute is not specified, the server state will be &quot;unknown&quot;

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="startTimeout" type="string">

-            <annotation>

-               <documentation>

-                  the timeout value that the tool will wait for the server to be started. The default is 2 minutes

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="stopTimeout" type="string">

-            <annotation>

-               <documentation>

-                  the timeout value that the tool will wait for the server to be stopped. The default is 2 minutes

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="startBeforePublish" type="string">

-            <annotation>

-               <documentation>

-                  boolean value &quot;true&quot; or &quot;false&quot; to specify whether the server needs to be started for publishing to occur. If &quot;true&quot;, the server will be started on every call to publish() before executing the publish code

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         1.0

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a server type extension point:

-

-&lt;pre&gt;

-   &lt;extension 

-         point=&quot;org.eclipse.wst.server.core.serverTypes&quot;&gt;

-      &lt;serverType

-            id=&quot;com.example.serverType&quot;

-            name=&quot;%serverTypeName&quot;

-            description=&quot;%serverTypeDescription&quot;

-            supportsRemoteHosts=&quot;true&quot;

-            runtime=&quot;true&quot;

-            initialState=&quot;stopped&quot;

-            hasConfiguration=&quot;true&quot;

-            launchConfigId=&quot;com.example.launchConfigurationType&quot;

-            runtimeTypeId=&quot;com.example.runtime&quot;

-            class=&quot;com.example.ExampleServerDelegate&quot;

-            behaviourClass=&quot;com.example.ExampleServerBehaviourDelegate&quot;/&gt;

-   &lt;/extension&gt;

-&lt;/pre&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that extends the abstract class &lt;code&gt;org.eclipse.wst.server.core.model.ServerDelegate&lt;/code&gt; and has a public 0-arg constructor.

-

-Value of the attribute &lt;b&gt;behaviourClass&lt;/b&gt; must be a fully qualified name of a Java class that extends the abstract class &lt;code&gt;org.eclipse.wst.server.core.model.ServerBehaviourDelegate&lt;/code&gt; and has a public 0-arg constructor.

-      </documentation>

-   </annotation>

-   

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;

-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 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/plugins/org.eclipse.wst.server.core/schema/startup.exsd b/plugins/org.eclipse.wst.server.core/schema/startup.exsd
deleted file mode 100644
index 25bbd3c..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/startup.exsd
+++ /dev/null
@@ -1,131 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.wst.server.core">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.wst.server.core" id="internalStartup" name="Startup"/>

-      </appInfo>

-      <documentation>

-         This extension point provides a way to invoke code during the server core plugin startup. Use sparingly.

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="startup" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="startup">

-      <annotation>

-         <appInfo>

-            <meta.element labelAttribute="name"/>

-         </appInfo>

-      </annotation>

-      <complexType>

-         <sequence>

-         </sequence>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a unique identifier for this extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="class" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies the fully qualified name of the Java class that extends &lt;samp&gt;org.eclipse.wst.server.core.internal.IStartup&lt;/samp&gt;.

-

-This extension point is internal and should not be used by any other plugins.

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.wst.server.core.internal.IStartup"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         &lt;b&gt;This extension point is internal and should not be used by any other plugins.&lt;/b&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a startup extension point:

-

-&lt;pre&gt;

-   &lt;extension 

-         point=&quot;org.eclipse.wst.server.core.startup&quot;&gt;

-      &lt;startup

-            id=&quot;com.example.startup&quot;

-            class=&quot;com.example.ExampleStartup&quot;/&gt;

-   &lt;/extension&gt;

-&lt;/pre&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that extends &lt;code&gt;org.eclipse.wst.server.core.model.IStartup&lt;/code&gt; and contains a public 0-arg constructor.

-      </documentation>

-   </annotation>

-   

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;

-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 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IModule.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IModule.java
deleted file mode 100644
index 91fc261..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IModule.java
+++ /dev/null
@@ -1,129 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 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.wst.server.core;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-/**
- * A module is a unit of "content" that can be published to a
- * server.
- * <p>
- * All modules have a module type, which is fixed for the
- * lifetime of the module. The set of module types (or
- * "kinds") is open-ended.
- * </p>
- * <p>
- * All modules are created by module factories using the moduleFactories
- * extension point.
- * </p>
- * <p>
- * The content of a module is a collection of file and folder
- * resources in the workspace.
- * </p>
- * <p>
- * In principle, a module exists independent of any
- * particular server. The same module instance can be associated
- * with multiple server instances at the same time. That is
- * why you cannot ask the module which server it's associated
- * with.
- * </p>
- * <p>
- * [issue: Equality/identify for modules?]
- * </p>
- * <p>This interface is not intended to be implemented by clients.</p>
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * 
- * @since 1.0
- */
-public interface IModule extends IAdaptable {
-	/**
-	 * Returns the id of this module.
-	 * Each module has a distinct id, used to distinguish this
-	 * module from all other modules in the workspace (and
-	 * within a server). Ids are intended to be used internally
-	 * as keys; they are not intended to be shown to end users.
-	 * 
-	 * @return the module id
-	 */
-	public String getId();
-
-	/**
-	 * Returns the displayable name for this module.
-	 * <p>
-	 * Note that this name is appropriate for the current locale.
-	 * </p>
-	 *
-	 * @return a displayable name for this module
-	 */
-	public String getName();
-
-	/**
-	 * Returns the type of this module.
-	 * 
-	 * @return the module type
-	 */
-	public IModuleType getModuleType();
-
-	/**
-	 * Returns the workbench project that this module is contained in,
-	 * or null if the module is outside of the workspace.
-	 * 
-	 * @return a project
-	 */
-	public IProject getProject();
-
-	/**
-	 * Returns an object which is an instance of the given class
-	 * associated with this object. Returns <code>null</code> if
-	 * no such object can be found, or if the delegate is not
-	 * loaded.
-	 * <p>
-	 * This method will not check the delegate classes for adapting
-	 * unless they are already loaded. No plugin loading will occur
-	 * when calling this method. It is suitable for popup menus and
-	 * other UI artifacts where performance is a concern.
-	 * </p>
-	 *
-	 * @param adapter the adapter class to look up
-	 * @return a object castable to the given class, 
-	 *    or <code>null</code> if this object does not
-	 *    have an adapter for the given class
-	 * @see IAdaptable#getAdapter(Class)
-	 * @see #loadAdapter(Class, IProgressMonitor)
-	 */
-	public Object getAdapter(Class adapter);
-
-	/**
-	 * Returns an object which is an instance of the given class
-	 * associated with this object. Returns <code>null</code> only if
-	 * no such object can be found after loading and initializing
-	 * delegates.
-	 * <p>
-	 * This method will force a load and initialization of all delegate
-	 * classes and check them for adapting.
-	 * </p>
-	 *
-	 * @param adapter the adapter class to look up
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return a object castable to the given class, 
-	 *    or <code>null</code> if this object does not
-	 *    have an adapter for the given class
-	 * @see #getAdapter(Class)
-	 */
-	public Object loadAdapter(Class adapter, IProgressMonitor monitor);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IModuleArtifact.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IModuleArtifact.java
deleted file mode 100644
index 9391398..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IModuleArtifact.java
+++ /dev/null
@@ -1,31 +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.wst.server.core;
-/**
- * A module artifact is a resource within a module, which can be launched
- * on the server. Examples of module artifacts are servlets, HTML pages,
- * or EJB beans.
- * <p>
- * Objects that provide an adapter of this type will be considered by the
- * contextual Run on Server launch support. 
- * </p>
- * 
- * @see org.eclipse.wst.server.core.model.ModuleArtifactAdapterDelegate
- * @since 1.0
- */
-public interface IModuleArtifact {
-	/**
-	 * Returns the module that this artifact is a part of.
-	 * 
-	 * @return the module that this artifact is contained in
-	 */
-	public IModule getModule();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IModuleType.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IModuleType.java
deleted file mode 100644
index 98800b8..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IModuleType.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 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.wst.server.core;
-/**
- * Represents the type of a module.
- * <p>
- * This interface is not intended to be implemented by clients.
- * </p>
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * 
- * @since 1.0
- */
-public interface IModuleType {
-	/**
-	 * Returns the module type id.
-	 * <p>
-	 * The module type id is a "." separated string uniquely identifying the
-	 * type of module. Like a java package name, it should scope the type from
-	 * most general to specific. For instance, "jst.web".
-	 * </p>
-	 * 
-	 * @return the module type id
-	 */
-	public String getId();
-
-	/**
-	 * Returns the displayable name for this module type.
-	 * <p>
-	 * Note that this name is appropriate for the current locale.
-	 * </p>
-	 *
-	 * @return a displayable name for this module type
-	 */
-	public String getName();
-
-	/**
-	 * Returns the version (specification level) of this module type,
-	 * e.g. "1.0" or "1.3.2a".
-	 * <p>
-	 * The version will normally be a series of numbers separated by
-	 * ".", but it could be different depending on the type of module.
-	 * For module types where a version does not make sense (e.g.
-	 * a static Web module), <code>null</code> is returned.
-	 * </p>
-	 * 
-	 * @return the specification version of this module type, or
-	 *    <code>null</code> if there is no version 
-	 */
-	public String getVersion();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IProjectProperties.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IProjectProperties.java
deleted file mode 100644
index d8dbeed..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IProjectProperties.java
+++ /dev/null
@@ -1,36 +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.wst.server.core;
-/**
- * This interface holds information on the properties of a given project.
- *
- * <p>This interface is not intended to be implemented by clients.</p>
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * 
- * @deprecated Project facet support should now be used instead of this API. @see
- *    org.eclipse.wst.common.project.facet.core.IFacetedProject#getRuntime()
- */
-public interface IProjectProperties {
-	/**
-	 * Returns the current runtime target for this project.
-	 * 
-	 * @return the current runtime target, or <code>null</code> if the project has
-	 *    no runtime target
-	 * @deprecated Project facet support should now be used instead of this API. @see
-	 *    org.eclipse.wst.common.project.facet.core.IFacetedProject#getRuntime()
-	 */
-	public IRuntime getRuntimeTarget();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IPublishListener.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IPublishListener.java
deleted file mode 100644
index 51b20a6..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IPublishListener.java
+++ /dev/null
@@ -1,45 +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.wst.server.core;
-
-import org.eclipse.core.runtime.IStatus;
-/**
- * A publish listener is used to listen for publishing events from a server.
- * The events are typically received in the following order:
- * 
- * publishStarted() - The publish operation is starting
- *   publishModuleStarted() - This section is fired for each module in the server
- *   publishModuleFinished() - This module is finished publishing
- *   publishModuleStarted() - The next module is publishing
- *   ...
- * publishFinished() - The publish operation is finished
- * <p>
- * Publish listeners are added to a server via IServer.addPublishListener().
- * </p>
- * @see IServer
- * @since 1.0
- */
-public interface IPublishListener {
-	/**
-	 * Fired to notify that publishing has begun.
-	 *
-	 * @param server the server that publishing started on
-	 */
-	public void publishStarted(IServer server);
-
-	/**
-	 * Publishing has finished. Returns the overall status.
-	 *
-	 * @param server the server that publishing finished on
-	 * @param status indicating what (if anything) went wrong
-	 */
-	public void publishFinished(IServer server, IStatus status);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntime.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntime.java
deleted file mode 100644
index d187c8c..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntime.java
+++ /dev/null
@@ -1,212 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 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.wst.server.core;
-
-import org.eclipse.core.runtime.*;
-/**
- * Represents a runtime instance. Every runtime is an instance of a
- * particular, fixed runtime type.
- * <p>
- * Servers have a runtime. The server runtime corresponds to the
- * installed code base for the server. The main role played by the server
- * runtime is in identifying code libraries to compile or build against.
- * In the case of local servers, the server runtime may play a secondary role
- * of being used to launch the server for testing. Having the server runtimes
- * identified as an entity separate from the server itself facilitates sharing
- * server runtimes between several servers.
- * </p>
- * <p>
- * IRuntime implements IAdaptable to allow users to obtain a runtime-type-specific
- * class. By casting the runtime extension to the type prescribed in the API
- * documentation for that particular runtime type, the client can access
- * runtime-type-specific properties and methods. getAdapter() may involve plugin
- * loading, and should not be called from popup menus, etc.
- * </p>
- * <p>
- * The server framework maintains a global list of all known runtime instances
- * ({@link ServerCore#getRuntimes()}).
- * </p>
- * <p>
- * All runtimes have a unique id. Two runtimes (or more likely a runtime and it's
- * working copy) with the same id are equal, and two runtimes with different ids
- * are never equal.
- * </p>
- * <p>
- * Two runtimes are identical if and only if they have the same id.
- * </p>
- * <p>This interface is not intended to be implemented by clients.</p>
- * 
- * @see IRuntimeWorkingCopy
- * @since 1.0
- */
-public interface IRuntime extends IAdaptable {
-	/**
-	 * Returns the displayable name for this runtime.
-	 * <p>
-	 * Note that this name is appropriate for the current locale.
-	 * </p>
-	 *
-	 * @return a displayable name
-	 */
-	public String getName();
-
-	/**
-	 * Returns the id of this runtime instance.
-	 * Each runtime (of a given type) has a distinct id, fixed for
-	 * its lifetime. Ids are intended to be used internally as keys;
-	 * they are not intended to be shown to end users.
-	 * <p>
-	 * For the id of the runtime type, use {@link IRuntimeType#getId()}
-	 * </p>
-	 * 
-	 * @return the runtime id
-	 */
-	public String getId();
-
-	/**
-	 * Deletes the persistent representation of this runtime.
-	 * 
-	 * @throws CoreException if there was any error received while deleting the runtime
-	 *    or if this method is called on a working copy
-	 */
-	public void delete() throws CoreException;
-
-	/**
-	 * Returns whether this runtime is marked read only.
-	 * When a runtime is read only, working copies can be created but
-	 * they cannot be saved.
-	 *
-	 * @return <code>true</code> if this runtime is marked as read only,
-	 *    and <code>false</code> otherwise
-	 */
-	public boolean isReadOnly();
-
-	/**
-	 * Returns true if this is a working copy.
-	 * 
-	 * @return <code>true</code> if this runtime is a working copy
-	 *    (can be cast to IRuntimeWorkingCopy), and
-	 *    <code>false</code> otherwise
-	 */
-	public boolean isWorkingCopy();
-	
-	/**
-	 * Returns an object which is an instance of the given class
-	 * associated with this object. Returns <code>null</code> if
-	 * no such object can be found, or if the delegate is not
-	 * loaded.
-	 * <p>
-	 * This method will not check the delegate classes for adapting
-	 * unless they are already loaded. No plugin loading will occur
-	 * when calling this method. It is suitable for popup menus and
-	 * other UI artifacts where performance is a concern.
-	 * </p>
-	 *
-	 * @param adapter the adapter class to look up
-	 * @return a object castable to the given class, 
-	 *    or <code>null</code> if this object does not
-	 *    have an adapter for the given class
-	 * @see IAdaptable#getAdapter(Class)
-	 * @see #loadAdapter(Class, IProgressMonitor)
-	 */
-	public Object getAdapter(Class adapter);
-	
-	/**
-	 * Returns an object which is an instance of the given class
-	 * associated with this object. Returns <code>null</code> only if
-	 * no such object can be found after loading and initializing
-	 * delegates.
-	 * <p>
-	 * This method will force a load and initialization of all delegate
-	 * classes and check them for adapting.
-	 * </p>
-	 *
-	 * @param adapter the adapter class to look up
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return a object castable to the given class, 
-	 *    or <code>null</code> if this object does not
-	 *    have an adapter for the given class
-	 * @see #getAdapter(Class)
-	 */
-	public Object loadAdapter(Class adapter, IProgressMonitor monitor);
-
-	/**
-	 * Returns the type of this runtime instance.
-	 * 
-	 * @return the runtime type
-	 */
-	public IRuntimeType getRuntimeType();
-
-	/**
-	 * Returns a runtime working copy for modifying this runtime instance.
-	 * If this instance is already a working copy, it is returned.
-	 * If this instance is not a working copy, a new runtime working copy
-	 * is created with the same id and attributes.
-	 * Clients are responsible for saving or releasing the working copy when
-	 * they are done with it.
-	 * <p>
-	 * The runtime working copy is related to this runtime instance
-	 * in the following ways:
-	 * <pre>
-	 * this.getWorkingCopy().getId() == this.getId()
-	 * this.getWorkingCopy().getOriginal() == this
-	 * </pre>
-	 * </p>
-	 * <p>
-	 * [issue: IRuntimeWorkingCopy extends IRuntime. 
-	 * Runtime.getWorkingCopy() create a new working copy;
-	 * RuntimeWorkingCopy.getWorkingCopy() returns this.
-	 * This may be convenient in code that is ignorant of
-	 * whether they are dealing with a working copy or not.
-	 * However, it is hard for clients to manage working copies
-	 * with this design.
-	 * </p>
-	 * 
-	 * @return a new working copy
-	 */
-	public IRuntimeWorkingCopy createWorkingCopy();
-
-	/**
-	 * Returns the absolute path in the local file system to the root of the runtime,
-	 * typically the installation directory.
-	 * 
-	 * @return the location of this runtime, or <code>null</code> if none
-	 */
-	public IPath getLocation();
-
-	/**
-	 * Returns whether this runtime is a stub (used for compilation only)
-	 * or a full runtime.
-	 * 
-	 * @return <code>true</code> if this runtime is a stub, and
-	 *    <code>false</code> otherwise
-	 */
-	public boolean isStub();
-
-	/**
-	 * Validates this runtime instance. This method returns an error if the runtime
-	 * is pointing to a null or invalid location (e.g. not pointing to the correct
-	 * installation directory), or if the runtime-type-specific properties are missing
-	 * or invalid.
-	 * <p>
-	 * This method is not on the working copy so that the runtime can be validated at
-	 * any time.
-	 * </p>
-	 *
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return a status object with code <code>IStatus.OK</code> if this
-	 *   runtime is valid, otherwise a status object indicating what is
-	 *   wrong with it
-	 */
-	public IStatus validate(IProgressMonitor monitor);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntimeLifecycleListener.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntimeLifecycleListener.java
deleted file mode 100644
index e3067c8..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntimeLifecycleListener.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 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.wst.server.core;
-/**
- * Listener interface for changes to runtimes.
- * <p>
- * This interface is fired whenever a runtime is added, modified, or removed.
- * All events are fired post-change, so that all server tools API called as a
- * result of the event will return the updated results. (for example, on
- * runtimeAdded the new server will be in the global list of runtimes
- * ({@link ServerCore#getRuntimes()}), and on runtimeRemoved the runtime will
- * not be in the list.
- * </p>
- * 
- * @see ServerCore
- * @see IRuntime
- * @since 1.0
- */
-public interface IRuntimeLifecycleListener {
-	/**
-	 * A new runtime has been created.
-	 *
-	 * @param runtime the new runtime
-	 */
-	public void runtimeAdded(IRuntime runtime);
-
-	/**
-	 * An existing runtime has been updated or modified.
-	 *
-	 * @param runtime the modified runtime
-	 */
-	public void runtimeChanged(IRuntime runtime);
-
-	/**
-	 * A existing runtime has been removed.
-	 *
-	 * @param runtime the removed runtime
-	 */
-	public void runtimeRemoved(IRuntime runtime);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntimeTargetHandler.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntimeTargetHandler.java
deleted file mode 100644
index 01712ff..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntimeTargetHandler.java
+++ /dev/null
@@ -1,51 +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.wst.server.core;
-
-import org.eclipse.core.runtime.IAdaptable;
-/**
- * A runtime target handler is used to apply some properties to a project
- * this is being targeted to a given runtime. For instance, the handler
- * might update the classpath of a Java project to include the runtime's
- * classes, add validation for the given runtime, or restrict the type of
- * resources that can be created.
- * 
- * <p>This interface is not intended to be implemented by clients.</p>
- * <p>
- * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to 
- * change significantly before reaching stability. It is being made available at this early stage to solicit feedback 
- * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken 
- * (repeatedly) as the API evolves.
- * </p>
- * 
- * @deprecated use project facets instead of runtime targets
- */
-public interface IRuntimeTargetHandler extends IAdaptable {
-	/**
-	 * Returns the id of this runtime target handler.
-	 * Each known runtime target handler has a distinct id. 
-	 * Ids are intended to be used internally as keys; they are not
-	 * intended to be shown to end users.
-	 * 
-	 * @return the runtime target handler id
-	 */
-	public String getId();
-
-	/**
-	 * Returns <code>true</code> if this runtime target handler supports
-	 * (can work with) the given runtime.
-	 * 
-	 * @param runtimeType a runtime type
-	 * @return <code>true</code> if the handler can accept the given runtime type,
-	 *    and <code>false</code> otherwise
-	 */
-	public boolean supportsRuntimeType(IRuntimeType runtimeType);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntimeType.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntimeType.java
deleted file mode 100644
index 346cf34..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntimeType.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 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.wst.server.core;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-/**
- * Represents a (server) runtime type from which runtime instances can be
- * created.
- * <p>
- * The server core framework supports
- * an open-ended set of runtime types, which are contributed via
- * the <code>runtimeTypes</code> extension point in the server core
- * plug-in. Runtime type objects carry no state (all information is
- * read-only and is supplied by the server runtime type declaration).
- * The global list of known runtime types is available via
- * {@link ServerCore#getRuntimeTypes()}.
- * </p>
- * <p>
- * This interface is not intended to be implemented by clients.
- * </p>
- * <p>
- * [issue: What value do runtimes add?
- * It's main role is for setting up the Java build classpath
- * for projects holding modules that must be Java compiled.
- * If the notion of module is to transcend the vagaries of particular
- * types of server, and, indeed, be published to multiple servers
- * simultaneously, then matters of build classpath had better not
- * be tied to the particular servers involved.]
- * </p>
- * <p>
- * Two runtime types are identical if and only if they have the same id.
- * </p>
- * 
- * @since 1.0
- */
-public interface IRuntimeType {
-	/**
-	 * Returns the id of this runtime type.
-	 * Each known server runtime type has a distinct id. 
-	 * Ids are intended to be used internally as keys; they are not
-	 * intended to be shown to end users.
-	 * 
-	 * @return the runtime type id
-	 */
-	public String getId();
-
-	/**
-	 * Returns the displayable name for this runtime type.
-	 * <p>
-	 * Note that this name is appropriate for the current locale.
-	 * </p>
-	 *
-	 * @return a displayable name for this runtime type
-	 */
-	public String getName();
-
-	/**
-	 * Returns the displayable description for this runtime type.
-	 * <p>
-	 * Note that this description is appropriate for the current locale.
-	 * </p>
-	 *
-	 * @return a displayable description for this runtime type
-	 */
-	public String getDescription();
-	
-	/**
-	 * Returns the displayable vendor name for this runtime type. If the
-	 * runtime type did not specific a vendor, an empty string is returned.
-	 * <p>
-	 * Note that this description is appropriate for the current locale.
-	 * </p>
-	 *
-	 * @return a displayable vendor name for this runtime type
-	 */
-	public String getVendor();
-	
-	/**
-	 * Returns the displayable version name for this runtime type. If the
-	 * runtime type did not specific a vendor, an empty string is returned.
-	 * <p>
-	 * Note that this description is appropriate for the current locale.
-	 * </p>
-	 *
-	 * @return a displayable version name for this runtime type
-	 */
-	public String getVersion();
-
-	/**
-	 * Returns an array of module types that this runtime type can support.
-	 * <p>
-	 * A new array is returned on each call, so clients may store or modify the result.
-	 * </p>
-	 * 
-	 * @return the array of module types {@link IModuleType}
-	 */
-	public IModuleType[] getModuleTypes();
-
-	/**
-	 * Returns whether this runtime type can be instantiated.
-	 * <p>
-	 * [issue: It's unclear what this method is for.
-	 * The implementation checks whether the "class"
-	 * and "workingCopyClass" attributes (both optional) were specified.
-	 * What would be the point of a runtime type that didn't
-	 * have both of these attributes and could not be "created"?]
-	 * </p>
-	 * 
-	 * @return <code>true</code> if this type of runtime can be
-	 *    instantiated, and <code>false</code> if it cannot
-	 * @see #createRuntime(String, IProgressMonitor)
-	 */
-	public boolean canCreate();
-
-	/**
-	 * Creates a working copy instance of this runtime type.
-	 * After setting various properties of the working copy,
-	 * the client should call {@link IRuntimeWorkingCopy#save(boolean, IProgressMonitor)}
-	 * to bring the runtime instance into existence.
-	 * <p>
-	 * Default values are set by calling the instance's delegate.
-	 * Clients should assume that the location and other properties are
-	 * not set and must be explicitly set by the client.
-	 * </p>
-	 * 
-	 * @param id the id to assign to the runtime instance; a generated
-	 *    id is used if id is <code>null</code> or an empty string
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return a new runtime working copy with the given id
-	 * @throws CoreException if an exception occurs while creating this runtime
-	 *    or setting it's default values
-	 */
-	public IRuntimeWorkingCopy createRuntime(String id, IProgressMonitor monitor) throws CoreException;
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntimeWorkingCopy.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntimeWorkingCopy.java
deleted file mode 100644
index 66e8de3..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntimeWorkingCopy.java
+++ /dev/null
@@ -1,172 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 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.wst.server.core;
-
-import java.beans.PropertyChangeListener;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-/**
- * A working copy runtime object used for formulating changes
- * to a runtime instance ({@link IRuntime}). Changes made on a
- * working copy do not occur (and are not persisted) until a
- * save() is performed. 
- * <p>
- * This interface is not intended to be implemented by clients.
- * </p>
- * 
- * @see IRuntime
- * @since 1.0
- */
-public interface IRuntimeWorkingCopy extends IRuntime {
-	/**
-	 * Status code (value 1) returned from the save() method when the save
-	 * failed with force set to <code>false</code> because the runtime has
-	 * been modified and saved since this working copy was created.
-	 * 
-	 * @see #save(boolean, IProgressMonitor)
-	 */
-	public static final int SAVE_CONFLICT = 1;
-	
-	/**
-	 * Property change name (value "name") used when the name of the runtime
-	 * changes.
-	 * 
-	 * @see #addPropertyChangeListener(PropertyChangeListener)
-	 * @see #removePropertyChangeListener(PropertyChangeListener)
-	 */
-	public static final String PROPERTY_NAME = "name";
-	
-	/**
-	 * Property change name (value "location") used when the location of the
-	 * runtime changes.
-	 * 
-	 * @see #addPropertyChangeListener(PropertyChangeListener)
-	 * @see #removePropertyChangeListener(PropertyChangeListener)
-	 */
-	public static final String PROPERTY_LOCATION = "location";
-
-	/**
-	 * Sets the displayable name for this runtime.
-	 * <p>
-	 * The name should be appropriate for the current locale.
-	 * </p>
-	 *
-	 * @param name a displayable name
-	 * @see IRuntime#getName()
-	 */
-	public void setName(String name);
-	
-	/**
-	 * Sets or unsets whether this runtime is marked as read only.
-	 * When a runtime is read only, working copies can be created but
-	 * they cannot be saved.
-	 *
-	 * @param readOnly <code>true</code> to set this runtime to be marked
-	 *    read only, and <code>false</code> to unset
-	 */
-	public void setReadOnly(boolean readOnly);
-	
-	/**
-	 * Returns whether this working copy has unsaved changes.
-	 * 
-	 * @return <code>true</code> if this working copy has unsaved
-	 *    changes, and <code>false</code> otherwise
-	 */
-	public boolean isDirty();
-
-	/**
-	 * Adds a property change listener to this runtime.
-	 * <p>
-	 * Once registered, a listener starts receiving notification of 
-	 * property changes to this runtime. The listener continues to receive
-	 * notifications until it is removed.
-	 * Has no effect if an identical listener is already registered.
-	 * </p>
-	 *
-	 * @param listener a property change listener
-	 * @see #removePropertyChangeListener(PropertyChangeListener)
-	 */
-	public void addPropertyChangeListener(PropertyChangeListener listener);
-
-	/**
-	 * Removes a property change listener from this runtime.
-	 * Has no effect if the listener is not registered.
-	 *
-	 * @param listener a property change listener
-	 * @see #addPropertyChangeListener(PropertyChangeListener)
-	 */
-	public void removePropertyChangeListener(PropertyChangeListener listener);
-
-	/**
-	 * Returns the runtime instance that this working copy is
-	 * associated with.
-	 * <p>
-	 * For a runtime working copy created by a call to
-	 * {@link IRuntime#createWorkingCopy()},
-	 * <code>this.getOriginal()</code> returns the original
-	 * runtime object. For a runtime working copy just created by
-	 * a call to {@link IRuntimeType#createRuntime(String, IProgressMonitor)},
-	 * <code>this.getOriginal()</code> returns <code>null</code>.
-	 * </p>
-	 * 
-	 * @return the associated runtime instance, or <code>null</code> if none
-	 */
-	public IRuntime getOriginal();
-
-	/**
-	 * Sets the absolute path in the local file system to the root of the runtime,
-	 * typically the installation directory. 
-	 * 
-	 * @param path the location of this runtime, or <code>null</code> if none
-	 * @see IRuntime#getLocation()
-	 */
-	public void setLocation(IPath path);
-
-	/**
-	 * Returns whether this runtime is a stub (used for compilation only)
-	 * or a full runtime.
-	 * 
-	 * @param stub <code>true</code> if this runtime is a stub, and
-	 *    <code>false</code> otherwise
-	 */
-	public void setStub(boolean stub);
-
-	/**
-	 * Commits the changes made in this working copy. If there is
-	 * no extant runtime instance with a matching id and runtime
-	 * type, this will create a runtime instance with attributes
-	 * taken from this working copy, and return that object.
-	 * <p>
-	 * If there an existing runtime instance with a matching id and
-	 * runtime type, this will change the runtime instance accordingly.
-	 * The returned runtime will be the same runtime this is returned
-	 * from getOriginal(), after the changes have been applied.
-	 * Otherwise, this method will return a newly created runtime.
-	 * </p>
-	 * Runtimes can be saved even when they have invalid properties. It
-	 * is the clients responsibility to call validate() or check the
-	 * properties before saving.
-	 * <p>
-	 * [issue: What is lifecycle for RuntimeWorkingCopyDelegate
-	 * associated with this working copy?]
-	 * </p>
-	 * 
-	 * @param force <code>true</code> to force the save, or <code>false</code>
-	 *    otherwise
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return a new runtime instance
-	 * @throws CoreException if the save could not be completed
-	 * @see #SAVE_CONFLICT
-	 */
-	public IRuntime save(boolean force, IProgressMonitor monitor) throws CoreException;
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServer.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServer.java
deleted file mode 100644
index 071df81..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServer.java
+++ /dev/null
@@ -1,664 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2004, 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.wst.server.core;
-
-import org.eclipse.core.runtime.*;
-/**
- * Represents a server instance. Every server is an instance of a
- * particular, fixed server type.
- * <p>
- * Not surprisingly, the notion of <b>server</b> is central in the web tools
- * server infrastructure. In this context, understand that a server is
- * a web server of some ilk. It could be a simple web server lacking Java
- * support, or an J2EE based server, or perhaps even some kind of database
- * server. A more exact definition is not required for the purposes of this API.
- * From a tool-centric point of view, a server
- * is something that the developer is writing "content" for.
- * The unit of content is termed a module.
- * In a sense, the server exists, but lacks useful content. The
- * development task is to provide that content. The content can include
- * anything from simple, static HTML web pages to complex, highly dynamic
- * web applications.
- * In the course of writing and debugging this content,
- * the developer will want to test their content on a web server, to see how it
- * gets served up. For this they will need to launch a server process running on
- * some host machine (often the local host on which the IDE is running), or
- * attach to a server that's already running on a remote (or local) host. 
- * The newly developed content sitting in the developer's workspace needs to
- * end up in a location and format that the running server can use for its
- * serving purposes.
- * </p>
- * <p>
- * In this picture, an <code>IServer</code> object is a proxy for the real web
- * server. Through this proxy, a client can configure the server, and start,
- * stop, and restart it.
- * </p>
- * <p>
- * The server framework maintains a global list of all known server instances
- * ({@link ServerCore#getServers()}).
- * </p>
- * <p>
- * [rough notes:
- * Server has a state.
- * Server can be started, stopped, and restarted.
- * To modify server attributes, get a working copy, modify it, and then save it
- * to commit the changes.
- * Server attributes. Serialization.
- * Chained working copies for runtime, server configuration.
- * Server has a set of root modules.
- * Modules have state wrt a server.
- * Restarting modules.
- * ]
- * </p>
- * <p>
- * Two servers are identical if and only if they have the same id.
- * </p>
- * 
- * <p>This interface is not intended to be implemented by clients.</p>
- * 
- * @since 1.0
- */
-public interface IServer extends IServerAttributes {
-	/**
-	 * An operation listener is used to receive notification back about a
-	 * specific server operation, such as starting or stopping a server.
-	 * 
-	 * @since 1.0
-	 */
-	public interface IOperationListener {
-		/**
-		 * Called once when the operation is complete.
-		 * 
-		 * @param result a status object with code <code>IStatus.OK</code> if
-		 *    the operation completed successfully, otherwise a status object
-		 *    indicating why it didn't
-		 */
-		public void done(IStatus result);
-	}
-
-	/**
-	 * Server state constant (value 0) indicating that the
-	 * server is in an unknown state.
-	 * 
-	 * @see #getServerState()
-	 * @see #getModuleState(IModule[])
-	 */
-	public static final int STATE_UNKNOWN = 0;
-
-	/**
-	 * Server state constant (value 1) indicating that the
-	 * server is starting, but not yet ready to serve content.
-	 * 
-	 * @see #getServerState()
-	 * @see #getModuleState(IModule[])
-	 */
-	public static final int STATE_STARTING = 1;
-
-	/**
-	 * Server state constant (value 2) indicating that the
-	 * server is ready to serve content.
-	 * 
-	 * @see #getServerState()
-	 * @see #getModuleState(IModule[])
-	 */
-	public static final int STATE_STARTED = 2;
-
-	/**
-	 * Server state constant (value 3) indicating that the
-	 * server is shutting down.
-	 * 
-	 * @see #getServerState()
-	 * @see #getModuleState(IModule[])
-	 */
-	public static final int STATE_STOPPING = 3;
-
-	/**
-	 * Server state constant (value 4) indicating that the
-	 * server is stopped.
-	 * 
-	 * @see #getServerState()
-	 * @see #getModuleState(IModule[])
-	 */
-	public static final int STATE_STOPPED = 4;
-
-	/**
-	 * Publish state constant (value 0) indicating that it's
-	 * in an unknown state.
-	 * 
-	 * @see #getServerPublishState()
-	 * @see #getModulePublishState(IModule[])
-	 */
-	public static final int PUBLISH_STATE_UNKNOWN = 0;
-
-	/**
-	 * Publish state constant (value 1) indicating that there
-	 * is no publish required.
-	 * 
-	 * @see #getServerPublishState()
-	 * @see #getModulePublishState(IModule[])
-	 */
-	public static final int PUBLISH_STATE_NONE = 1;
-
-	/**
-	 * Publish state constant (value 2) indicating that an
-	 * incremental publish is required.
-	 * 
-	 * @see #getServerPublishState()
-	 * @see #getModulePublishState(IModule[])
-	 */
-	public static final int PUBLISH_STATE_INCREMENTAL = 2;
-
-	/**
-	 * Publish state constant (value 3) indicating that a
-	 * full publish is required.
-	 * 
-	 * @see #getServerPublishState()
-	 * @see #getModulePublishState(IModule[])
-	 */
-	public static final int PUBLISH_STATE_FULL = 3;
-
-	/**
-	 * Publish kind constant (value 1) indicating an incremental publish request.
-	 * 
-	 * @see #publish(int, IProgressMonitor)
-	 */
-	public static final int PUBLISH_INCREMENTAL = 1;
-
-	/**
-	 * Publish kind constant (value 2) indicating a full publish request.
-	 * 
-	 * @see #publish(int, IProgressMonitor)
-	 */
-	public static final int PUBLISH_FULL = 2;
-
-	/**
-	 * Publish kind constant (value 3) indicating an automatic publish request.
-	 * 
-	 * @see #publish(int, IProgressMonitor)
-	 */
-	public static final int PUBLISH_AUTO = 3;
-
-	/**
-	 * Publish kind constant (value 4) indicating a publish clean request
-	 * 
-	 * @see #publish(int, IProgressMonitor)
-	 */
-	public static final int PUBLISH_CLEAN = 4;
-
-	/**
-	 * Returns the current state of this server.
-	 * <p>
-	 * Note that this operation is guaranteed to be fast
-	 * (it does not actually communicate with any actual
-	 * server).
-	 * </p>
-	 *
-	 * @return one of the server state (<code>STATE_XXX</code>)
-	 * constants declared on {@link IServer}
-	 */
-	public int getServerState();
-
-	/**
-	 * Returns the ILaunchManager mode that the server is in. This method will
-	 * return null if the server is not running.
-	 * 
-	 * @return the mode in which a server is running, one of the mode constants
-	 *    defined by {@link org.eclipse.debug.core.ILaunchManager}, or
-	 *    <code>null</code> if the server is stopped.
-	 */
-	public String getMode();
-
-	/**
-	 * Returns the server's sync state.
-	 *
-	 * @return one of the PUBLISH_XXX state flags
-	 */
-	public int getServerPublishState();
-
-	/**
-	 * Adds the given server state listener to this server.
-	 * Once registered, a listener starts receiving notification of 
-	 * state changes to this server. The listener continues to receive
-	 * notifications until it is removed.
-	 * Has no effect if an identical listener is already registered.
-	 *
-	 * @param listener the server listener
-	 * @see #removeServerListener(IServerListener)
-	 */
-	public void addServerListener(IServerListener listener);
-
-	/**
-	 * Adds the given server state listener to this server.
-	 * Once registered, a listener starts receiving notification of 
-	 * state changes to this server. The listener continues to receive
-	 * notifications until it is removed.
-	 * Has no effect if an identical listener is already registered.
-	 *
-	 * @param listener the server listener
-	 * @param eventMask the bit-wise OR of all event types of interest to the
-	 * listener
-	 * @see #removeServerListener(IServerListener)
-	 */
-	public void addServerListener(IServerListener listener, int eventMask);
-
-	/**
-	 * Removes the given server state listener from this server. Has no
-	 * effect if the listener is not registered.
-	 * 
-	 * @param listener the listener
-	 * @see #addServerListener(IServerListener)
-	 */
-	public void removeServerListener(IServerListener listener);
-
-	/**
-	 * Adds a publish listener to this server.
-	 * Has no effect if an identical listener is already registered.
-	 *
-	 * @param listener the publish listener
-	 * @see #removePublishListener(IPublishListener)
-	 */
-	public void addPublishListener(IPublishListener listener);
-
-	/**
-	 * Removes a publish listener from this server.
-	 * Has no effect if the listener is not registered.
-	 *
-	 * @param listener the publish listener
-	 * @see #addPublishListener(IPublishListener)
-	 */
-	public void removePublishListener(IPublishListener listener);
-
-	/**
-	 * Returns whether this server is in a state that it can
-	 * be published to.
-	 *
-	 * @return a status object with code <code>IStatus.OK</code> if the server can
-	 *   be published to, otherwise a status object indicating what is wrong
-	 */
-	public IStatus canPublish();
-
-	/**
-	 * Publish to the server using the progress monitor. The result of the
-	 * publish operation is returned as an IStatus.
-	 * <p>
-	 * This method should not be called from the UI thread. Publishing is long-
-	 * running and may trigger resource change events or builds. Although this
-	 * framework is safe, there is no guarantee that other bundles are UI-safe
-	 * and the risk of UI deadlock is high. 
-	 * </p>
-	 * 
-	 * @param kind the kind of publish being requested. Valid values are
-	 *    <ul>
-	 *    <li><code>PUBLSIH_FULL</code>- indicates a full publish.</li>
-	 *    <li><code>PUBLISH_INCREMENTAL</code>- indicates a incremental publish.
-	 *    <li><code>PUBLISH_CLEAN</code>- indicates a clean request. Clean throws
-	 *      out all state and cleans up the module on the server before doing a
-	 *      full publish.
-	 *    </ul>
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return status indicating what (if anything) went wrong
-	 */
-	public IStatus publish(int kind, IProgressMonitor monitor);
-
-	/**
-	 * Returns whether this server is in a state that it can
-	 * be started in the given mode.
-	 *
-	 * @param launchMode a mode in which a server can be launched,
-	 *    one of the mode constants defined by
-	 *    {@link org.eclipse.debug.core.ILaunchManager}
-	 * @return a status object with code <code>IStatus.OK</code> if the server can
-	 *    be started, otherwise a status object indicating why it can't
-	 */
-	public IStatus canStart(String launchMode);
-
-	/**
-	 * Asynchronously starts this server in the given launch mode.
-	 * <p>
-	 * If canStart(launchMode) is false, this method will throw an
-	 * exception.
-	 * </p>
-	 * <p>
-	 * If the caller wants to listen for failure or success of the
-	 * server starting, it can add a server listener or use the
-	 * version of this method that takes a status listener as a
-	 * parameter.
-	 * </p>
-	 *
-	 * @param launchMode a mode in which a server can be launched,
-	 *    one of the mode constants defined by
-	 *    {@link org.eclipse.debug.core.ILaunchManager}
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @exception CoreException if an error occurs while trying to start the server
-	 */
-	public void start(String launchMode, IProgressMonitor monitor) throws CoreException;
-	
-	/**
-	 * Asynchronously starts this server in the given launch mode.
-	 * <p>
-	 * If canStart(launchMode) is false, this method will throw an
-	 * exception.
-	 * </p>
-	 * <p>
-	 * The operation listener can be used to add a listener for notification
-	 * of this specific server launch. The listener will be called with a
-	 * single successful status (severity OK) when the server has
-	 * finished starting, or a single failure (severity ERROR) if
-	 * there was an error starting the server.
-	 * </p>
-	 * 
-	 * @param launchMode a mode in which a server can be launched,
-	 *    one of the mode constants defined by
-	 *    {@link org.eclipse.debug.core.ILaunchManager}
-	 * @param listener an operation listener to receive notification when this
-	 *    operation is done, or <code>null</code> if notification is not
-	 *    required
-	 */
-	public void start(String launchMode, IOperationListener listener);
-
-	/**
-	 * Starts this server in the given launch mode and waits until the server
-	 * has finished starting.
-	 * <p>
-	 * This convenience method uses {@link #start(String, IProgressMonitor)}
-	 * to start the server, and an internal thread and listener to detect
-	 * when the server has finished starting.
-	 * </p>
-	 *
-	 * @param launchMode a mode in which a server can be launched,
-	 *    one of the mode constants defined by
-	 *    {@link org.eclipse.debug.core.ILaunchManager}
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @deprecated this method is deprecated. use start(String,
-	 *    IProgressMonitor, IOperationListener) instead
-	 * @exception CoreException if an error occurs while trying to start the server
-	 */
-	public void synchronousStart(String launchMode, IProgressMonitor monitor) throws CoreException;
-
-	/**
-	 * Returns whether this server is in a state that it can
-	 * be restarted in the given mode. Note that only servers
-	 * that are currently running can be restarted.
-	 *
-	 * @param mode a mode in which a server can be launched,
-	 *    one of the mode constants defined by
-	 *    {@link org.eclipse.debug.core.ILaunchManager}
-	 * @return a status object with code <code>IStatus.OK</code> if the server can
-	 *    be restarted, otherwise a status object indicating why it can't
-	 */
-	public IStatus canRestart(String mode);
-
-	/**
-	 * Returns whether this server is out of sync and needs to be
-	 * restarted. This method will return false when the
-	 * server is not running.
-	 * <p>
-	 * [issue: Need to explain what is it that can get out of
-	 * "out of sync" here, and how this can happen.]
-	 * </p>
-	 * 
-	 * @return <code>true</code> if this server is out of sync and needs to be
-	 * restarted, and <code>false</code> otherwise (e.g., if the contents have
-	 * not been modified and the server process is still in sync); the
-	 * result is unspecified if the server is not currently running
-	 */
-	public boolean getServerRestartState();
-
-	/**
-	 * Asynchronously restarts this server. This operation does
-	 * nothing if this server cannot be stopped ({@link #canRestart(String)}
-	 * returns <code>false</code>.
-	 * This method cannot be used to start the server from a stopped state.
-	 * <p>
-	 * If the caller wants to listen for failure or success of the
-	 * server restarting, it can add a server listener or use the
-	 * version of this method that takes a status listener as a
-	 * parameter.
-	 * </p>
-	 *
-	 * @param launchMode a mode in which a server can be launched,
-	 *    one of the mode constants defined by
-	 *    {@link org.eclipse.debug.core.ILaunchManager}
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 */
-	public void restart(String launchMode, IProgressMonitor monitor);
-
-	/**
-	 * Asynchronously restarts this server. This operation does
-	 * nothing if this server cannot be stopped ({@link #canRestart(String)}
-	 * returns <code>false</code>.
-	 * This method cannot be used to start the server from a stopped state.
-	 * <p>
-	 * The operation listener can be used to add a listener for notification
-	 * of this specific server restart. The listener will be called with a
-	 * single successful status (severity OK) when the server has
-	 * finished restarting, or a single failure (severity ERROR) if
-	 * there was an error restarting the server.
-	 * </p>
-	 *
-	 * @param launchMode a mode in which a server can be launched,
-	 *    one of the mode constants defined by
-	 *    {@link org.eclipse.debug.core.ILaunchManager}
-	 * @param listener an operation listener to receive notification when this
-	 *    operation is done, or <code>null</code> if notification is not
-	 *    required
-	 */
-	public void restart(String launchMode, IOperationListener listener);
-
-	/**
-	 * Synchronously restarts this server. This operation does
-	 * nothing if this server cannot be stopped ({@link #canRestart(String)}
-	 * returns <code>false</code>.
-	 * <p>
-	 * [issue: There is no way to communicate failure to the
-	 * client. Given that this operation can go awry, there probably
-	 * should be a mechanism that allows failing asynch operations
-	 * to be diagnosed.]
-	 * </p>
-	 *
-	 * @param launchMode a mode in which a server can be launched,
-	 *    one of the mode constants defined by
-	 *    {@link org.eclipse.debug.core.ILaunchManager}
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @throws CoreException if there was an error
-	 * @deprecated this method is deprecated. use restart(String,
-	 *    IProgressMonitor, IOperationListener) instead
-	 */
-	public void synchronousRestart(String launchMode, IProgressMonitor monitor) throws CoreException;
-
-	/**
-	 * Returns whether this server is in a state that it can
-	 * be stopped.
-	 * Servers can be stopped if they are not already stopped and if
-	 * they belong to a state-set that can be stopped.
-	 *
-	 * @return a status object with code <code>IStatus.OK</code> if the server can
-	 *   be stopped, otherwise a status object indicating why it can't
-	 */
-	public IStatus canStop();
-
-	/**
-	 * Asynchronously stops this server. This operation does
-	 * nothing if this server cannot be stopped ({@link #canStop()}
-	 * returns <code>false</code>.
-	 * <p>
-	 * If force is <code>false</code>, it will attempt to stop the server
-	 * normally/gracefully. If force is <code>true</code>, then the server
-	 * process will be terminated any way that it can.
-	 * </p>
-	 * <p>
-	 * If the caller wants to listen for success or failure of the
-	 * server stopping, it can add a server listener or use the
-	 * version of this method that takes a status listener as a
-	 * parameter.
-	 * </p>
-	 * 
-	 * @param force <code>true</code> to kill the server, or <code>false</code>
-	 *    to stop normally
-	 */
-	public void stop(boolean force);
-
-	/**
-	 * Asynchronously stops this server. This operation does
-	 * nothing if this server cannot be stopped ({@link #canStop()}
-	 * returns <code>false</code>.
-	 * <p>
-	 * If force is <code>false</code>, it will attempt to stop the server
-	 * normally/gracefully. If force is <code>true</code>, then the server
-	 * process will be terminated any way that it can.
-	 * </p>
-	 * <p>
-	 * The operation listener can be used to add a listener for notification
-	 * of this specific server stop. The listener will be called with a
-	 * single successful status (severity OK) when the server has
-	 * finished stopping, or a single failure (severity ERROR) if
-	 * there was an error stopping the server.
-	 * </p>
-	 * 
-	 * @param force <code>true</code> to kill the server, or <code>false</code>
-	 *    to stop normally
-	 * @param listener an operation listener to receive notification when this
-	 *    operation is done, or <code>null</code> if notification is not
-	 *    required
-	 */
-	public void stop(boolean force, IOperationListener listener);
-
-	/**
-	 * Stops this server and waits until the server has completely stopped.
-	 * <p>
-	 * This convenience method uses {@link #stop(boolean)}
-	 * to stop the server, and an internal thread and listener to detect
-	 * when the server has complied.
-	 * </p>
-	 * 
-	 * @param force <code>true</code> to kill the server, or <code>false</code>
-	 *    to stop normally
-	 * @deprecated this method is deprecated. use stop(boolean,
-	 *    IOperationListener) instead
-	 */
-	public void synchronousStop(boolean force);
-
-	/**
-	 * Returns the current state of the given module on this server.
-	 * Returns <code>STATE_UNKNOWN</code> if the module
-	 * is not among the ones associated with this server.
-	 * 
-	 * @param module the module
-	 * @return one of the state (<code>STATE_XXX</code>) constants declared
-	 *    on {@link IServer}
-	 */
-	public int getModuleState(IModule[] module);
-
-	/**
-	 * Returns the module's sync state.
-	 * 
-	 * @param module the module
-	 * @return one of the PUBLISH_XXX state flags
-	 */
-	public int getModulePublishState(IModule[] module);
-
-	/**
-	 * Check if the given module is in sync on the server. It should
-	 * return true if the module should be restarted (is out of
-	 * sync) or false if the module does not need to be restarted.
-	 *
-	 * @param module the module
-	 * @return boolean
-	 */
-	public boolean getModuleRestartState(IModule[] module);
-
-	/**
-	 * Returns whether the given module can be restarted.
-	 * <p>
-	 * This method has a progress monitor because it may involve plugin
-	 * and class loading. No communication to the server will occur.
-	 * </p>
-	 * 
-	 * @param module the module
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return a status object with code <code>IStatus.OK</code> if the module can
-	 *    be restarted, otherwise a status object indicating why it can't
-	 */
-	public IStatus canControlModule(IModule[] module, IProgressMonitor monitor);
-
-	/**
-	 * Asynchronously starts this server in the given launch mode.
-	 * <p>
-	 * If canStart(launchMode) is false, this method will throw an
-	 * exception.
-	 * </p>
-	 * <p>
-	 * The operation listener can be used to add a listener for notification
-	 * of this specific module start. The listener will be called with a
-	 * single successful status (severity OK) when the module has
-	 * finished starting, or a single failure (severity ERROR) if
-	 * there was an error starting the module.
-	 * </p>
-	 *
-	 *@param module the module to be started
-	 * @param listener an operation listener to receive notification when this
-	 *    operation is done, or <code>null</code> if notification is not
-	 *    required
-	 */
-	public void startModule(IModule[] module, IOperationListener listener);
-
-	/**
-	 * Asynchronously stops the given module. This operation does
-	 * nothing if this module cannot be stopped.
-	 * <p>
-	 * The operation listener can be used to add a listener for notification
-	 * of this specific module stop. The listener will be called with a
-	 * single successful status (severity OK) when the module has
-	 * finished stopping, or a single failure (severity ERROR) if
-	 * there was an error stopping the module.
-	 * </p>
-	 * 
-	 * @param module the module to be stopped
-	 * @param listener an operation listener to receive notification when this
-	 *    operation is done, or <code>null</code> if notification is not
-	 *    required
-	 */
-	public void stopModule(IModule[] module, IOperationListener listener);
-
-	/**
-	 * Asynchronously restarts the given module on the server.
-	 * <p>
-	 * The implementation should update the module sync state and fire
-	 * an event for the module. If the module does not exist on the server,
-	 * an exception will be thrown.
-	 * </p>
-	 * <p>
-	 * [issue: Since this method is ascynchronous, is there
-	 * any need for the progress monitor?]
-	 * </p>
-	 * <p>
-	 * [issue: IServer.synchronousModuleRestart throws CoreException
-	 * if anything goes wrong.]
-	 * </p>
-	 * <p>
-	 * [issue: If the module was just published to the server
-	 * and had never been started, would is be ok to "start"
-	 * the module using this method?]
-	 * </p>
-	 * 
-	 * @param module the module to be started
-	 * @param listener an operation listener to receive notification when this
-	 *    operation is done, or <code>null</code> if notification is not
-	 *    required
-	 */
-	public void restartModule(IModule[] module, IOperationListener listener);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServerAttributes.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServerAttributes.java
deleted file mode 100644
index 2b2aeb8..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServerAttributes.java
+++ /dev/null
@@ -1,348 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2004, 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.wst.server.core;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.runtime.*;
-/**
- * Represents a server instance. Every server is an instance of a
- * particular, fixed server type.
- * <p>
- * Not surprisingly, the notion of <b>server</b> is central in the web tools
- * server infrastructure. In this context, understand that a server is
- * a web server of some ilk. It could be a simple web server lacking Java
- * support, or an J2EE based server, or perhaps even some kind of database
- * server. A more exact definition is not required for the purposes of this API.
- * From a tool-centric point of view, a server
- * is something that the developer is writing "content" for.
- * The unit of content is termed a module.
- * In a sense, the server exists, but lacks useful content. The
- * development task is to provide that content. The content can include
- * anything from simple, static HTML web pages to complex, highly dynamic
- * web applications.
- * In the course of writing and debugging this content,
- * the developer will want to test their content on a web server, to see how it
- * gets served up. For this they will need to launch a server process running on
- * some host machine (often the local host on which the IDE is running), or
- * attach to a server that's already running on a remote (or local) host. 
- * The newly developed content sitting in the developer's workspace needs to
- * end up in a location and format that the running server can use for its
- * serving purposes.
- * </p>
- * <p>
- * In this picture, an <code>IServer</code> object is a proxy for the real web
- * server. Through this proxy, a client can configure the server, and start,
- * stop, and restart it.
- * </p>
- * <p>
- * IServerAttributes implements IAdaptable to allow users to obtain a
- * server-type-specific class. By casting the runtime extension to the type
- * prescribed in the API documentation for that particular server type, the
- * client can access server-type-specific properties and methods.
- * getAdapter() may involve plugin loading, and should not be called from
- * popup menus, etc.
- * </p>
- * <p>
- * The server framework maintains a global list of all known server instances
- * ({@link ServerCore#getServers()}).
- * </p>
- * <p>
- * [rough notes:
- * Server has a state.
- * Server can be started, stopped, and restarted.
- * To modify server attributes, get a working copy, modify it, and then save it
- * to commit the changes.
- * Server attributes. Serialization.
- * Chained working copies for runtime, server configuration.
- * Server has a set of root modules.
- * Modules have state wrt a server.
- * Restarting modules.]
- * </p>
- * <p>
- * Two servers are identical if and only if they have the same id.
- * </p>
- * 
- * <p>This interface is not intended to be implemented by clients.</p>
- * 
- * @since 1.0
- */
-public interface IServerAttributes extends IAdaptable {
-	/**
-	 * Returns the displayable name for this server.
-	 * <p>
-	 * Note that this name is appropriate for the current locale.
-	 * </p>
-	 *
-	 * @return a displayable name
-	 */
-	public String getName();
-	
-	/**
-	 * Returns the id of this server.
-	 * Each server (of a given type) has a distinct id, fixed for
-	 * its lifetime. Ids are intended to be used internally as keys;
-	 * they are not intended to be shown to end users.
-	 * 
-	 * @return the server id
-	 */
-	public String getId();
-
-	/**
-	 * Deletes the persistent representation of this server.
-	 * 
-	 * @throws CoreException if there was any error received while deleting the server
-	 *    or if this method is called on a working copy
-	 */
-	public void delete() throws CoreException;
-
-	/**
-	 * Returns whether this server is marked read only.
-	 * When a server is read only, working copies can be created but
-	 * they cannot be saved.
-	 *
-	 * @return <code>true</code> if this server is marked as read only,
-	 *    and <code>false</code> otherwise
-	 */
-	public boolean isReadOnly();
-
-	/**
-	 * Returns true if this is a working copy.
-	 * 
-	 * @return <code>true</code> if this server is a working copy,
-	 *    and <code>false</code> otherwise
-	 */
-	public boolean isWorkingCopy();
-
-	/**
-	 * Returns an object which is an instance of the given class
-	 * associated with this object. Returns <code>null</code> if
-	 * no such object can be found, or if the delegate is not
-	 * loaded.
-	 * <p>
-	 * This method will not check the delegate classes for adapting
-	 * unless they are already loaded. No plugin loading will occur
-	 * when calling this method. It is suitable for popup menus and
-	 * other UI artifacts where performance is a concern.
-	 * </p>
-	 * 
-	 * @param adapter the adapter class to look up
-	 * @return a object castable to the given class, 
-	 *    or <code>null</code> if this object does not
-	 *    have an adapter for the given class
-	 * @see IAdaptable#getAdapter(Class)
-	 * @see #loadAdapter(Class, IProgressMonitor)
-	 */
-	public Object getAdapter(Class adapter);
-
-	/**
-	 * Returns an object which is an instance of the given class
-	 * associated with this object. Returns <code>null</code> only if
-	 * no such object can be found after loading and initializing
-	 * delegates.
-	 * <p>
-	 * This method will force a load and initialization of all delegate
-	 * classes and check them for adapting.
-	 * </p>
-	 * 
-	 * @param adapter the adapter class to look up
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return a object castable to the given class, 
-	 *    or <code>null</code> if this object does not
-	 *    have an adapter for the given class
-	 * @see #getAdapter(Class)
-	 */
-	public Object loadAdapter(Class adapter, IProgressMonitor monitor);
-
-	/**
-	 * Returns the host for the server.
-	 * The format of the host can be either a qualified or unqualified hostname,
-	 * or an IP address and must conform to RFC 2732.
-	 * 
-	 * @return a host string conforming to RFC 2732
-	 * @see java.net.URL#getHost()
-	 */
-	public String getHost();
-
-	/**
-	 * Returns the runtime associated with this server.
-	 * <p>
-	 * Note: The runtime of a server working copy may or may not
-	 * be a working copy. For a server instance that is not a
-	 * working copy, the runtime instance is not a working copy
-	 * either.
-	 * </p>
-	 * <p>
-	 * [issue: According to serverType extension point, 
-	 * runtimeTypeId is a mandatory attribute. It seems odd
-	 * then to have server runtime instance being an
-	 * optional property of server instance. What does it mean
-	 * for a server to not have a runtime?]
-	 * </p>
-	 * 
-	 * @return the runtime, or <code>null</code> if none
-	 */
-	public IRuntime getRuntime();
-	
-	/**
-	 * Returns the type of this server.
-	 * 
-	 * @return the server type
-	 * @see IServerType
-	 */
-	public IServerType getServerType();
-	
-	/**
-	 * Returns the server configuration associated with this server.
-	 * <p>
-	 * Note: The server configuration of a server working copy may
-	 * or may not be a working copy. For a server instance that is
-	 * not a working copy, the server configuration instance is not
-	 * a working copy either.
-	 * </p>
-	 * <p>
-	 * [issue: According to serverType extension point, 
-	 * configurationTypeId is an optional attribute. If a server type
-	 * has no server configuration type, then it seems reasonable to 
-	 * expect this method to return null for all instances of that server
-	 * type. But what about a server type that explicitly specifies
-	 * a server configuration type. Does that mean that all server
-	 * instances of that server type must have a server configuration
-	 * instance of that server configuration type, and that this method
-	 * never returns null in those cases?]
-	 * </p>
-	 * 
-	 * @return the server configuration, or <code>null</code> if none
-	 */
-	public IFolder getServerConfiguration();
-
-	/**
-	 * Returns a server working copy for modifying this server instance.
-	 * If this instance is already a working copy, it is returned.
-	 * If this instance is not a working copy, a new server working copy
-	 * is created with the same id and attributes.
-	 * Clients are responsible for saving or releasing the working copy when
-	 * they are done with it.
-	 * <p>
-	 * The server working copy is related to this server instance
-	 * in the following ways:
-	 * <pre>
-	 * this.getWorkingCopy().getId() == this.getId()
-	 * this.getWorkingCopy().getFile() == this.getFile()
-	 * this.getWorkingCopy().getOriginal() == this
-	 * this.getWorkingCopy().getRuntime() == this.getRuntime()
-	 * this.getWorkingCopy().getServerConfiguration() == this.getServerConfiguration()
-	 * </pre>
-	 * </p>
-	 * <p>
-	 * [issue: IServerWorkingCopy extends IServer. 
-	 * Server.getWorkingCopy() create a new working copy;
-	 * ServerWorkingCopy.getWorkingCopy() returns this.
-	 * This may be convenient in code that is ignorant of
-	 * whether they are dealing with a working copy or not.
-	 * However, it is hard for clients to manage working copies
-	 * with this design.]
-	 * </p>
-	 * 
-	 * @return a new working copy
-	 */
-	public IServerWorkingCopy createWorkingCopy();
-
-	/**
-	 * Returns an array of user modules that are currently configured on
-	 * the server. When the server is published, these are the projects
-	 * that will be configured on the server. This method may not return
-	 * the list of projects that are currently on the server if a module
-	 * has been added since the last publish.
-	 * <p>
-	 * This method returns the root modules, which are not parented within
-	 * another modules. Each of these may contain child modules, which are
-	 * also deployed to this server.
-	 * </p>
-	 * 
-	 * @return a possibly-empty array of modules
-	 */
-	public IModule[] getModules();
-
-	/**
-	 * Returns whether the specified module modifications could be made to this
-	 * server at this time.
-	 * <p>
-	 * This method may decide based on the type of module
-	 * or refuse simply due to reaching a maximum number of
-	 * modules or other criteria.
-	 * </p>
-	 * <p>
-	 * [issue: This seems odd to have a pre-flight method.
-	 * I should expect that the client can propose making
-	 * any set of module changes they desire (via a server
-	 * working copy). If the server doesn't like it, the operation
-	 * should fail.]
-	 * </p>
-	 *
-	 * @param add a possibly-empty list of modules to add
-	 * @param remove a possibly-empty list of modules to remove
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return <code>true</code> if the proposed modifications
-	 * look feasible, and <code>false</code> otherwise
-	 */
-	public IStatus canModifyModules(IModule[] add, IModule[] remove, IProgressMonitor monitor);
-
-	/**
-	 * Returns the child module(s) of this module. If this
-	 * module contains other modules, it should list those
-	 * modules. If not, it should return an empty list.
-	 *
-	 * <p>This method should only return the direct children.
-	 * To obtain the full module tree, this method may be
-	 * recursively called on the children.</p>
-	 *
-	 * @param module a module
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return an array of direct module children
-	 */
-	public IModule[] getChildModules(IModule module[], IProgressMonitor monitor);
-
-	/**
-	 * Returns the parent module(s) of this module. When determining if a given
-	 * project can run on a server, this method will be used to find the actual
-	 * module(s) that may be run on the server. For instance, a Web module may
-	 * return a list of EAR modules that it is contained in if the server only
-	 * supports configuring EAR modules.
-	 *
-	 * <p>If the module type is not supported, this method will return null.
-	 * If the type is normally supported but there is a configuration
-	 * problem or missing parent, etc., this method will fire a CoreException
-	 * that may then be presented to the user.</p>
-	 *
-	 * <p>If it does return valid parent(s), this method will always return
-	 * the topmost parent module(s), even if there are a few levels
-	 * (a heirarchy) of modules.</p>
-	 *
-	 * @param module a module
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return an array of possible root modules
-	 * @throws CoreException if there is a problem
-	 */
-	public IModule[] getRootModules(IModule module, IProgressMonitor monitor) throws CoreException;
-
-	/**
-	 * Returns an array of ServerPorts that this server has.
-	 * 
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return a possibly empty array of servers ports
-	 */
-	public ServerPort[] getServerPorts(IProgressMonitor monitor);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServerLifecycleListener.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServerLifecycleListener.java
deleted file mode 100644
index d2c20b8..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServerLifecycleListener.java
+++ /dev/null
@@ -1,48 +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.wst.server.core;
-/**
- * Listener interface for changes to servers.
- * <p>
- * This interface is fired whenever a server is added, modified, or removed.
- * All events are fired post-change, so that all server tools API called as a
- * result of the event will return the updated results. (for example, on
- * serverAdded the new server will be in the global list of servers
- * ({@link ServerCore#getServers()}), and on serverRemoved the server will
- * not be in the list.
- * </p>
- * 
- * @see ServerCore
- * @see IServer
- * @since 1.0
- */
-public interface IServerLifecycleListener {
-	/**
-	 * A new server has been created.
-	 *
-	 * @param server the new server
-	 */
-	public void serverAdded(IServer server);
-
-	/**
-	 * An existing server has been updated or modified.
-	 *
-	 * @param server the modified server
-	 */
-	public void serverChanged(IServer server);
-
-	/**
-	 * A existing server has been removed.
-	 *
-	 * @param server the removed server
-	 */
-	public void serverRemoved(IServer server);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServerListener.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServerListener.java
deleted file mode 100644
index 3840581..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServerListener.java
+++ /dev/null
@@ -1,34 +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.wst.server.core;
-/**
- * This interface is used by the server to broadcast a change of state.
- * Usually, the change of state will be caused by some user action,
- * (e.g. requesting to start a server) however, it is equally fine for
- * a server to broadcast a change of state through no direct user action.
- * (e.g. stopping because the server crashed) This information can be
- * used to inform the user of the change or update the UI.
- *
- * <p>Note: The server listener event MUST NOT directly be used to modify
- * the server's or module's state via one of the server's method. For example, 
- * a server stopped event cannot directly trigger a start(). Doing this may 
- * cause the thread to hang.</p>
- *   
- * @since 1.0
- */
-public interface IServerListener {
-	/**
-	 * A server or module has been changed as specified in the event.
-	 * 
-	 * @param event a server event that contains information on the change
-	 */
-	public void serverChanged(ServerEvent event); 
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServerType.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServerType.java
deleted file mode 100644
index 30a2d6e..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServerType.java
+++ /dev/null
@@ -1,226 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 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.wst.server.core;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-/**
- * Represents a server type from which server instances can be created.
- * <p>
- * The server core framework supports
- * an open-ended set of server types, which are contributed via
- * the <code>serverTypes</code> extension point in the server core
- * plug-in. Server type objects carry no state (all information is
- * read-only and is supplied by the server type declaration).
- * The global list of known server types is available via
- * {@link ServerCore#getServerTypes()}. 
- * </p>
- * <p>
- * This interface is not intended to be implemented by clients.
- * </p>
- * <p>
- * Two server types are identical if and only if they have the same id.
- * </p>
- * 
- * @since 1.0
- */
-public interface IServerType {
-	/**
-	 * Returns the id of this server type.
-	 * Each known server type has a distinct id. 
-	 * Ids are intended to be used internally as keys; they are not
-	 * intended to be shown to end users.
-	 * 
-	 * @return the server type id
-	 */
-	public String getId();
-
-	/**
-	 * Returns the displayable name for this server type.
-	 * <p>
-	 * Note that this name is appropriate for the current locale.
-	 * </p>
-	 *
-	 * @return a displayable name for this server type
-	 */
-	public String getName();
-
-	/**
-	 * Returns the displayable description for this server type.
-	 * <p>
-	 * Note that this description is appropriate for the current locale.
-	 * </p>
-	 *
-	 * @return a displayable description for this server type
-	 */
-	public String getDescription();
-
-	/**
-	 * Returns the type of server runtime that this type
-	 * of server requires.
-	 * <p>
-	 * [issue: "runtimeTypeId" is mandatory according the
-	 * serverTypes schema. This suggests that all types
-	 * of servers have a server runtime. But there is also
-	 * a boolean "runtime" attribute indicating whether the
-	 * server requires a runtime. I supect that server type
-	 * has an optional server runtime, in which case you
-	 * can make "runtimeTypeId" optional and dispense with
-	 * "runtime".]
-	 * </p>
-	 * <p>
-	 * [issue: Does it really make sense for
-	 * runtimeTypes and serverTypes be separate extension
-	 * points? Would it not be sufficient to have the party declaring
-	 * the server type also declare the server runtime type?
-	 * Having runtimeType as a separate extension point
-	 * only makes sense if it would be possible in principle to 
-	 * declare a server runtime type that could actually be
-	 * used on serveral server types. If server runtimes
-	 * always end up being server-type specific, it would be better
-	 * to combine them.]
-	 * </p>
-	 * <p>
-	 * [issue: What should happen when a server type mentions
-	 * the id of a server runtime type that is not known
-	 * to the system?]
-	 * </p>
-	 * 
-	 * @return a server runtime type
-	 */
-	public IRuntimeType getRuntimeType();
-	
-	/**
-	 * Returns whether this type of server requires a server
-	 * runtime.
-	 * <p>
-	 * [issue: See issues on getRuntimeType(). I suspect this
-	 * method is unnecessary, and that 
-	 * this.getRuntimeType() != null will do.]
-	 * </p>
-	 * 
-	 * @return <code>true</code> if this type of server requires
-	 * a server runtime, and <code>false</code> if it does not
-	 * @see #getRuntimeType()
-	 */
-	public boolean hasRuntime();
-	
-	/**
-	 * Returns whether this type of server supports the given launch mode.
-	 * <p>
-	 * [issue: It also seems odd that this is part of the server type
-	 * declaration. This means that any server type has to commit
-	 * so early on which modes it supports.]
-	 * </p>
-	 * 
-	 * @param launchMode a mode in which a server can be launched,
-	 *    one of the mode constants defined by
-	 *    {@link org.eclipse.debug.core.ILaunchManager}
-	 * @return whether this type of server supports the given mode
-	 */
-	public boolean supportsLaunchMode(String launchMode);
-
-	/**
-	 * Returns whether this type of server requires a server
-	 * configuration.
-	 * <p>
-	 * [issue: It's not clear how this method differs from 
-	 * this.getServerConfigurationType() != null]
-	 * </p>
-	 * 
-	 * @return <code>true</code> if this type of server requires
-	 *    a server configuration, and <code>false</code> if it does not
-	 */
-	public boolean hasServerConfiguration();
-
-	/**
-	 * Returns <code>true</code> if this type of server can run on a remote host.
-	 * Returns <code>false</code> if the server type can only be run on "localhost"
-	 * (the local machine).
-	 * 
-	 * @return <code>true</code> if this type of server can run on
-	 *    a remote host, and <code>false</code> if it cannot
-	 */
-	public boolean supportsRemoteHosts();
-
-	/**
-	 * Creates an working copy instance of this server type.
-	 * After setting various properties of the working copy,
-	 * the client should call {@link IServerWorkingCopy#save(boolean, IProgressMonitor)}
-	 * to bring the server instance into existence.
-	 * <p>
-	 * [issue: Why is a runtime passed in? 
-	 * IServerWorkingCopy.setRuntime(runtime) could be called on
-	 * the result to accomplish the same thing.]
-	 * </p>
-	 * <p>
-	 * [issue: The implementation of this method never creates a server
-	 * config working copy, whereas the other one does!?]
-	 * Consider combining the method with the other.]
-	 * </p>
-	 * <p>
-	 * The server returned from this method will have it's host set to
-	 * "localhost". Other defaults will be set by calling the server
-	 * delegate's setDefaults() method.
-	 * </p>
-	 * 
-	 * @param id the id to assign to the server instance; a generated
-	 *    id is used if id is <code>null</code> or an empty string
-	 * @param file the file in the workspace where the server instance
-	 *    is to be serialized, or <code>null</code> if the information is
-	 *    instead to be persisted with the workspace but not with any
-	 *    particular workspace resource
-	 * @param runtime the runtime to associate with the server instance,
-	 *    or <code>null</code> if none
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return a new server working copy with the given id
-	 * @throws CoreException if an exception occurs while creating this runtime
-	 *    or setting it's default values
-	 */
-	public IServerWorkingCopy createServer(String id, IFile file, IRuntime runtime, IProgressMonitor monitor) throws CoreException;
-
-	/**
-	 * Creates a working copy instance of this server type.
-	 * After setting various properties of the working copy,
-	 * the client should call {@link IServerWorkingCopy#save(boolean, IProgressMonitor)}
-	 * to bring the server instance into existence.
-	 * <p>
-	 * [issue: Since this method just creates a working copy,
-	 * it's not clear the operation is long-running and in need
-	 * of a progress monitor.]
-	 * </p>
-	 * <p>
-	 * The server returned from this method will have it's host set to
-	 * "localhost". Other defaults will be set by calling the server
-	 * delegate's setDefaults() method.
-	 * </p>
-	 * <p>
-	 * [issue: The implementation of this method creates a server
-	 * config working copy, whereas the other one does not!?
-	 * Consider combining the method with the other.]
-	 * </p>
-	 * 
-	 * @param id the id to assign to the server instance; a generated
-	 *    id is used if id is <code>null</code> or an empty string
-	 * @param file the file in the workspace where the server instance
-	 *    is to be serialized, or <code>null</code> if the information is
-	 *    instead to be persisted with the workspace but not with any
-	 *    particular workspace resource
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return a new server working copy with the given id
-	 * @throws CoreException if an exception occurs while creating this runtime
-	 *    or setting it's default values
-	 */
-	public IServerWorkingCopy createServer(String id, IFile file, IProgressMonitor monitor) throws CoreException;
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServerWorkingCopy.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServerWorkingCopy.java
deleted file mode 100644
index 8446512..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServerWorkingCopy.java
+++ /dev/null
@@ -1,283 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2004, 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.wst.server.core;
-
-import java.beans.PropertyChangeListener;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-/**
- * A working copy server object used for formulating changes
- * to a server instance ({@link IServer}).
- *
- * <p>This interface is not intended to be implemented by clients.</p>
- * 
- * @since 1.0
- */
-public interface IServerWorkingCopy extends IServerAttributes {
-	/**
-	 * Status code (value 1) returned from the save() method when the save
-	 * failed with force set to <code>false</code> because the runtime has
-	 * been modified and saved since this working copy was created.
-	 * 
-	 * @see #save(boolean, IProgressMonitor)
-	 */
-	public static final int SAVE_CONFLICT = 1;
-
-	/**
-	 * Sets the displayable name for this server.
-	 * <p>
-	 * The name should be appropriate for the current locale.
-	 * </p>
-	 *
-	 * @param name a displayable name
-	 * @see IServerAttributes#getName()
-	 */
-	public void setName(String name);
-	
-	/**
-	 * Sets or unsets whether this server is marked as read only.
-	 * When a server is read only, working copies can be created but
-	 * they cannot be saved.
-	 *
-	 * @param readOnly <code>true</code> to set this server to be marked
-	 *    read only, and <code>false</code> to unset
-	 */
-	public void setReadOnly(boolean readOnly);
-	
-	/**
-	 * Returns whether this working copy has unsaved changes.
-	 * 
-	 * @return <code>true</code> if this working copy has unsaved
-	 *    changes, and <code>false</code> otherwise
-	 */
-	public boolean isDirty();
-
-	/**
-	 * Adds a property change listener to this server.
-	 * <p>
-	 * Once registered, a listener starts receiving notification of 
-	 * property changes to this server. The listener continues to receive
-	 * notifications until it is removed.
-	 * Has no effect if an identical listener is already registered.
-	 * </p>
-	 *
-	 * @param listener a property change listener
-	 * @see #removePropertyChangeListener(PropertyChangeListener)
-	 */
-	public void addPropertyChangeListener(PropertyChangeListener listener);
-
-	/**
-	 * Removes a property change listener from this server.
-	 * Has no effect if the listener is not registered.
-	 *
-	 * @param listener a property change listener
-	 * @see #addPropertyChangeListener(PropertyChangeListener)
-	 */
-	public void removePropertyChangeListener(PropertyChangeListener listener);
-
-	/**
-	 * Sets the server configuration associated with this server working copy.
-	 * <p>
-	 * Note: The server configuration of a server working copy may
-	 * or may not be a working copy.
-	 * </p>
-	 * <p>
-	 * [issue: According to serverType extension point, 
-	 * configurationTypeId is an optional attribute. What happens if the
-	 * server configuration passed is null but the server must have a
-	 * server configuration? What happens of the server configuration
-	 * has the wrong type? Do the errors get detected and reported now, or
-	 * upon save()?]
-	 * </p>
-	 * 
-	 * @param configuration the server configuration, or <code>null</code> if none
-	 */
-	public void setServerConfiguration(IFolder configuration);
-	
-	/**
-	 * Returns the server instance that this working copy is
-	 * associated with.
-	 * <p>
-	 * For a server working copy created by a call to
-	 * {@link IServer#createWorkingCopy()},
-	 * <code>this.getOriginal()</code> returns the original
-	 * server object. For a server working copy just created by
-	 * a call to {@link IServerType#createServer(String, org.eclipse.core.resources.IFile, IProgressMonitor)},
-	 * <code>this.getOriginal()</code> returns <code>null</code>.
-	 * </p>
-	 * 
-	 * @return the associated server instance, or <code>null</code> if none
-	 */
-	public IServer getOriginal();
-
-	/**
-	 * Commits the changes made in this working copy. If there is
-	 * no extant server instance with a matching id and server
-	 * type, this will create a server instance with attributes
-	 * taken from this working copy. If there an existing server
-	 * instance with a matching id and server type, this will
-	 * change the server instance accordingly.
-	 * <p>
-	 * If there an existing server instance with a matching id and
-	 * server type, this will change the server instance accordingly.
-	 * The returned server will be the same server this is returned
-	 * from getOriginal(), after the changes have been applied.
-	 * Otherwise, this method will return a newly created server.
-	 * </p>
-	 * <p>
-	 * Servers can be saved even when they have invalid properties. It
-	 * is the clients responsibility to validate or check the
-	 * properties before saving.
-	 * </p>
-	 * <p>
-	 * This method does not apply changes to the server. A publish()
-	 * must be completed to push out after the save to push out any
-	 * changes to the server.
-	 * </p>
-	 * <p>
-	 * [issue: What is lifecycle for ServerWorkingCopyDelegate
-	 * associated with this working copy?]
-	 * </p>
-	 * <p>
-	 * [issue: Since it does not make sense to commit a server
-	 * working copy without first committing any associated
-	 * runtime and server config working copies, the semantics
-	 * of saveAll should be part and parcel of the
-	 * normal save, and the saveAll method eliminated.]
-	 * </p>
-	 * 
-	 * @param force <code>true</code> to force the save, or <code>false</code>
-	 *    otherwise
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return a new server instance
-	 * @throws CoreException [missing]
-	 * @see #SAVE_CONFLICT
-	 */
-	public IServer save(boolean force, IProgressMonitor monitor) throws CoreException;
-
-	/**
-	 * Commits the changes made in this server working copy after
-	 * first committing any associated server configuration or
-	 * server runtime working copies.
-	 * <p>
-	 * This convenience method is equivalent to:
-	 * <pre>
-	 * IRuntime rt = this.getRuntime();
-	 * if (rt != null && rt.isWorkingCopy()) {
-	 *    ((IRuntimeWorkingCopy) rt).save(monitor);
-	 * }
-	 * IServerConfiguration cf = this.getServerConfiguration();
-	 * if (cf != null && cf.isWorkingCopy()) {
-	 *    ((IServerConfigurationWorkingCopy) cf).save(monitor);
-	 * }
-	 * return save(monitor);
-	 * </pre>
-	 * </p>
-	 * <p>
-	 * [issue: Since it does not make sense to commit a server
-	 * working copy without first committing any associated
-	 * runtime and server config working copies, the semantics
-	 * of this operation should be part and parcel of the
-	 * normal save, and the saveAll method eliminated.]
-	 * </p>
-	 * 
-	 * @param force <code>true</code> to force the save, or <code>false</code>
-	 *    otherwise
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return a new server instance
-	 * @throws CoreException [missing]
-	 * @see #SAVE_CONFLICT
-	 */
-	public IServer saveAll(boolean force, IProgressMonitor monitor) throws CoreException;
-
-	/**
-	 * Sets the runtime associated with this server working copy.
-	 * <p>
-	 * Note: The runtime of a server working copy may
-	 * or may not be a working copy.
-	 * </p>
-	 * <p>
-	 * [issue: According to serverType extension point, 
-	 * runtimeTypeId is a mandatory attribute. But IServer.getRuntime()
-	 * is allowed to return null, suggesting that it is optional for instances.
-	 * What happens if the runtime passed is null but the server must
-	 * have a runtime? What happens if the runtime has the wrong
-	 * type? Do the errors get detected and reported now, or upon save()?]
-	 * </p>
-	 * 
-	 * @param runtime the runtime, or <code>null</code> if none
-	 */
-	public void setRuntime(IRuntime runtime);
-
-	/**
-	 * Changes the host for the server.
-	 * The format of the host can be either a qualified or unqualified hostname,
-	 * or an IP address and must conform to RFC 2732.
-	 * 
-	 * <p>
-	 * [issue: This is a questionable operation if there is a running
-	 * server associated with the original. When a host name
-	 * change is committed, the server instance loses contact with
-	 * the running server because of the host name change.]
-	 * </p>
-	 * 
-	 * @param host a host string conforming to RFC 2732
-	 * @see IServer#getHost()
-	 * @see java.net.URL#getHost()
-	 */
-	public void setHost(String host);
-
-	/**
-	 * Modifies the list of modules associated with the server.
-	 * The modules included in the <code>add</code> list
-	 * must exist in the workspace and must not already be associated
-	 * with the server.
-	 * The modules included in the <code>remove</code> list
-	 * must be associated with the server, but may or may not exist
-	 * in the workspace.
-	 * <p>
-	 * This method will not communicate with the server. After saving,
-	 * publish() can be used to sync up with the server.
-	 * </p>
-	 * <p>
-	 * [issue: How to formulate what it means
-	 * to say "the module must exist in the workspace"?]
-	 * </p>
-	 * <p>
-	 * [issue: The spec should be more lax. Attempting to add
-	 * a module that's already include should be quietly ignore;
-	 * ditto removing a module that's not on this list. This
-	 * simplifies the handling of various other wacko cases 
-	 * such as duplication within and between the add and remove
-	 * lists.]
-	 * </p>
-	 * <p>
-	 * [issue: The spec had also said: "...canModifyModules()
-	 * should have returned true. The configuration must assume
-	 * any default settings and add the module without any UI."]
-	 * </p>
-	 * <p>
-	 * [issue: What error checking should be performed by this
-	 * operation, and what needs to be performed by save() if
-	 * the client tries to commit these hypothetisized changes?]
-	 * </p>
-	 *
-	 * @param add a possibly-empty list of modules to add
-	 * @param remove a possibly-empty list of modules to remove
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @throws CoreException [missing]
-	 */
-	public void modifyModules(IModule[] add, IModule[] remove, IProgressMonitor monitor) throws CoreException;
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerCore.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerCore.java
deleted file mode 100644
index 9811202..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerCore.java
+++ /dev/null
@@ -1,508 +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.wst.server.core;
-
-import java.util.*;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.*;
-import org.eclipse.wst.server.core.internal.*;
-/**
- * Main class for server core API.
- * <p>
- * This class provides API to access most of the types in the server
- * framework, including server runtimes and servers. Methods **
- * The methods on this class are thread safe.
- * </p>
- * <p>
- * This class provides all its functionality through static members.
- * It is not intended to be subclassed or instantiated.
- * </p>
- * 
- * @since 1.0
- */
-public class ServerCore {
-	private static final String EXTENSION_SERVER_TYPE = "serverTypes";
-	private static final String EXTENSION_RUNTIME_TYPE = "runtimeTypes";
-
-	//	cached copy of all runtime types
-	private static List runtimeTypes;
-
-	//	cached copy of all server and configuration types
-	private static List serverTypes;
-
-	private static IRegistryChangeListener registryListener;
-
-	static {
-		executeStartups();
-	}
-
-	private static class RegistryChangeListener implements IRegistryChangeListener {
-		public void registryChanged(IRegistryChangeEvent event) {
-			IExtensionDelta[] deltas = event.getExtensionDeltas(ServerPlugin.PLUGIN_ID, EXTENSION_RUNTIME_TYPE);
-			if (deltas != null) {
-				for (int i = 0; i < deltas.length; i++) {
-					handleRuntimeTypeDelta(deltas[i]);
-				}
-			}
-			
-			deltas = event.getExtensionDeltas(ServerPlugin.PLUGIN_ID, EXTENSION_SERVER_TYPE);
-			if (deltas != null) {
-				for (int i = 0; i < deltas.length; i++) {
-					handleServerTypeDelta(deltas[i]);
-				}
-			}
-		}
-	}
-
-	/**
-	 * Cannot create ServerCore - use static methods.
-	 */
-	private ServerCore() {
-		// can't create
-	}
-
-	/**
-	 * Returns the resource manager.
-	 *
-	 * @return org.eclipse.wst.server.core.internal.ResourceManager
-	 */
-	private final static ResourceManager getResourceManager() {
-		return ResourceManager.getInstance();
-	}
-
-	/**
-	 * Returns the preference information for the project. The project may not
-	 * be null.
-	 *
-	 * @param project a project
-	 * @return the properties of the project
-	 * @deprecated Project facet support should now be used instead of this API. @see
-	 *    org.eclipse.wst.common.project.facet.core.IFacetedProject#getRuntime()
-	 */
-	public static IProjectProperties getProjectProperties(IProject project) {
-		if (project == null)
-			throw new IllegalArgumentException();
-		return new IProjectProperties() {
-			public IRuntime getRuntimeTarget() {
-				return null;
-			}
-		};
-	}
-
-	/**
-	 * Returns an array of all known runtime types.
-	 * <p>
-	 * A new array is returned on each call, so clients may store or modify the result.
-	 * </p>
-	 * 
-	 * @return the array of runtime types {@link IRuntimeType}
-	 */
-	public static IRuntimeType[] getRuntimeTypes() {
-		if (runtimeTypes == null)
-			loadRuntimeTypes();
-		
-		IRuntimeType[] rt = new IRuntimeType[runtimeTypes.size()];
-		runtimeTypes.toArray(rt);
-		return rt;
-	}
-
-	/**
-	 * Returns the runtime type with the given id, or <code>null</code>
-	 * if none. This convenience method searches the list of known
-	 * runtime types ({@link #getRuntimeTypes()}) for the one with a matching
-	 * runtime type id ({@link IRuntimeType#getId()}). The id may not be null.
-	 *
-	 * @param id the runtime type id
-	 * @return the runtime type, or <code>null</code> if there is no runtime type
-	 * with the given id
-	 */
-	public static IRuntimeType findRuntimeType(String id) {
-		if (id == null)
-			throw new IllegalArgumentException();
-
-		if (runtimeTypes == null)
-			loadRuntimeTypes();
-		
-		Iterator iterator = runtimeTypes.iterator();
-		while (iterator.hasNext()) {
-			IRuntimeType runtimeType = (IRuntimeType) iterator.next();
-			if (id.equals(runtimeType.getId()))
-				return runtimeType;
-		}
-		return null;
-	}
-
-	/**
-	 * Returns an array of all known runtime target handler instances.
-	 * <p>
-	 * A new array is returned on each call, so clients may store or modify the result.
-	 * </p>
-	 * 
-	 * @return a possibly-empty array of runtime target handler instances
-	 *    {@link IRuntimeTargetHandler}
-	 */
-	public static IRuntimeTargetHandler[] getRuntimeTargetHandlers() {
-		throw new RuntimeException("Attempt to use deprecated code");
-	}
-
-	/**
-	 * Returns the runtime target handler with the given id, or <code>null</code>
-	 * if none. This convenience method searches the list of known runtime
-	 * target handlers ({@link #getRuntimeTargetHandlers()}) for the one with
-	 * a matching runtime target handler id ({@link IRuntimeTargetHandler#getId()}).
-	 * The id may not be null.
-	 *
-	 * @param id the runtime target handler id
-	 * @return the runtime target handler instance, or <code>null</code> if
-	 *   there is no runtime target handler with the given id
-	 */
-	public static IRuntimeTargetHandler findRuntimeTargetHandler(String id) {
-		throw new RuntimeException("Attempt to use deprecated code");
-	}
-
-	/**
-	 * Returns an array of all known server types.
-	 * <p>
-	 * A new array is returned on each call, so clients may store or modify the result.
-	 * </p>
-	 * 
-	 * @return the array of server types {@link IServerType}
-	 */
-	public static IServerType[] getServerTypes() {
-		if (serverTypes == null)
-			loadServerTypes();
-		
-		IServerType[] st = new IServerType[serverTypes.size()];
-		serverTypes.toArray(st);
-		return st;
-	}
-
-	/**
-	 * Returns the server type with the given id, or <code>null</code>
-	 * if none. This convenience method searches the list of known
-	 * server types ({@link #getServerTypes()}) for the one with a matching
-	 * server type id ({@link IServerType#getId()}). The id may not be null.
-	 *
-	 * @param id the server type id
-	 * @return the server type, or <code>null</code> if there is no server type
-	 * with the given id
-	 */
-	public static IServerType findServerType(String id) {
-		if (id == null)
-			throw new IllegalArgumentException();
-
-		if (serverTypes == null)
-			loadServerTypes();
-		
-		Iterator iterator = serverTypes.iterator();
-		while (iterator.hasNext()) {
-			IServerType serverType = (IServerType) iterator.next();
-			if (id.equals(serverType.getId()))
-				return serverType;
-		}
-		return null;
-	}
-
-	/**
-	 * Execute the server startup extension points.
-	 */
-	private static synchronized void executeStartups() {
-		Trace.trace(Trace.EXTENSION_POINT, "->- Loading .startup extension point ->-");
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IConfigurationElement[] cf = registry.getConfigurationElementsFor(ServerPlugin.PLUGIN_ID, "internalStartup");
-
-		int size = cf.length;
-		for (int i = 0; i < size; i++) {
-			try {
-				IStartup startup = (IStartup) cf[i].createExecutableExtension("class");
-				try {
-					startup.startup();
-				} catch (Exception ex) {
-					Trace.trace(Trace.SEVERE, "Startup failed" + startup.toString(), ex);
-				}
-				Trace.trace(Trace.EXTENSION_POINT, "  Loaded startup: " + cf[i].getAttribute("id"));
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "  Could not load startup: " + cf[i].getAttribute("id"), t);
-			}
-		}
-		
-		Trace.trace(Trace.EXTENSION_POINT, "-<- Done loading .startup extension point -<-");
-	}
-
-	/**
-	 * Load the runtime types.
-	 */
-	private static synchronized void loadRuntimeTypes() {
-		if (runtimeTypes != null)
-			return;
-		Trace.trace(Trace.EXTENSION_POINT, "->- Loading .runtimeTypes extension point ->-");
-		
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IConfigurationElement[] cf = registry.getConfigurationElementsFor(ServerPlugin.PLUGIN_ID, EXTENSION_RUNTIME_TYPE);
-		runtimeTypes = new ArrayList(cf.length);
-		addRuntimeTypes(cf);
-		addRegistryListener();
-		
-		Trace.trace(Trace.EXTENSION_POINT, "-<- Done loading .runtimeTypes extension point -<-");
-	}
-
-	/**
-	 * Load the runtime types.
-	 */
-	private static synchronized void addRuntimeTypes(IConfigurationElement[] cf) {
-		for (int i = 0; i < cf.length; i++) {
-			try {
-				RuntimeType runtimeType = new RuntimeType(cf[i]);
-				runtimeTypes.add(runtimeType);
-				Trace.trace(Trace.EXTENSION_POINT, "  Loaded runtimeType: " + cf[i].getAttribute("id"));
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "  Could not load runtimeType: " + cf[i].getAttribute("id"), t);
-			}
-		}
-	}
-
-	/**
-	 * Load the server types.
-	 */
-	private static synchronized void loadServerTypes() {
-		if (serverTypes != null)
-			return;
-		
-		Trace.trace(Trace.EXTENSION_POINT, "->- Loading .serverTypes extension point ->-");
-		
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IConfigurationElement[] cf = registry.getConfigurationElementsFor(ServerPlugin.PLUGIN_ID, EXTENSION_SERVER_TYPE);
-		serverTypes = new ArrayList(cf.length);
-		addServerTypes(cf);
-		addRegistryListener();
-		
-		Trace.trace(Trace.EXTENSION_POINT, "-<- Done loading .serverTypes extension point -<-");
-	}
-
-	/**
-	 * Load the server types.
-	 */
-	private static synchronized void addServerTypes(IConfigurationElement[] cf) {
-		for (int i = 0; i < cf.length; i++) {
-			try {
-				ServerType serverType = new ServerType(cf[i]);
-				serverTypes.add(serverType);
-				Trace.trace(Trace.EXTENSION_POINT, "  Loaded serverType: " + cf[i].getAttribute("id"));
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "  Could not load serverType: " + cf[i].getAttribute("id"), t);
-			}
-		}
-	}
-
-	/**
-	 * Returns the runtime with the given id, or <code>null</code>
-	 * if none. This convenience method searches the list of known
-	 * runtimes ({@link #getRuntimes()}) for the one with a matching
-	 * runtime id ({@link IRuntime#getId()}). The id may not be null.
-	 *
-	 * @param id the runtime id
-	 * @return the runtime instance, or <code>null</code> if there is no runtime
-	 * with the given id
-	 */
-	public static IRuntime findRuntime(String id) {
-		return getResourceManager().getRuntime(id);
-	}
-
-	/**
-	 * Returns an array of all known runtime instances. The list will not contain any
-	 * working copies.
-	 * <p>
-	 * A new array is returned on each call, so clients may store or modify the result.
-	 * </p>
-	 * 
-	 * @return a possibly-empty array of runtime instances {@link IRuntime}
-	 */
-	public static IRuntime[] getRuntimes() {
-		return getResourceManager().getRuntimes();
-	}
-
-	/**
-	 * Returns the server with the given id, or <code>null</code>
-	 * if none. This convenience method searches the list of known
-	 * servers ({@link #getServers()}) for the one with a matching
-	 * server id ({@link IServer#getId()}). The id must not be null.
-	 *
-	 * @param id the server id
-	 * @return the server instance, or <code>null</code> if there is no server
-	 * with the given id
-	 */
-	public static IServer findServer(String id) {
-		return getResourceManager().getServer(id);
-	}
-
-	/**
-	 * Returns an array of all known server instances. The array will not include any
-	 * working copies.
-	 * <p>
-	 * A new array is returned on each call, so clients may store or modify the result.
-	 * </p>
-	 * 
-	 * @return a possibly-empty array of server instances {@link IServer}
-	 */
-	public static IServer[] getServers() {
-		return getResourceManager().getServers();
-	}
-
-	/**
-	 * Adds a new runtime lifecycle listener.
-	 * Has no effect if an identical listener is already registered.
-	 *
-	 * @param listener a runtime lifecycle listener
-	 * @see #removeRuntimeLifecycleListener(IRuntimeLifecycleListener)
-	 */
-	public static void addRuntimeLifecycleListener(IRuntimeLifecycleListener listener) {
-		getResourceManager().addRuntimeLifecycleListener(listener);
-	}
-
-	/**
-	 * Removes a runtime lifecycle listener.
-	 * Has no effect if the listener is not registered.
-	 *
-	 * @param listener a runtime lifecycle listener
-	 * @see #addRuntimeLifecycleListener(IRuntimeLifecycleListener)
-	 */
-	public static void removeRuntimeLifecycleListener(IRuntimeLifecycleListener listener) {
-		getResourceManager().removeRuntimeLifecycleListener(listener);
-	}
-
-	/**
-	 * Adds a new server lifecycle listener.
-	 * Has no effect if an identical listener is already registered.
-	 *
-	 * @param listener a server lifecycle listener
-	 * @see #removeServerLifecycleListener(IServerLifecycleListener)
-	 */
-	public static void addServerLifecycleListener(IServerLifecycleListener listener) {
-		getResourceManager().addServerLifecycleListener(listener);
-	}
-
-	/**
-	 * Removes a server lifecycle listener.
-	 * Has no effect if the listener is not registered.
-	 *
-	 * @param listener a server lifecycle listener
-	 * #addServerLifecycleListener(IServerLifecycleListener)
-	 */
-	public static void removeServerLifecycleListener(IServerLifecycleListener listener) {
-		getResourceManager().removeServerLifecycleListener(listener);
-	}
-
-	/**
-	 * Returns the preferred runtime server for the given module. This method
-	 * returns null if the server was never chosen or does not currently exist. (if the
-	 * server is recreated or was in a closed project, etc. this method will return
-	 * the original value if it becomes available again)
-	 *
-	 * @param module a module
-	 * @return the current default server, or <code>null</code> if there is no
-	 *    default server
-	 */
-	public static IServer getDefaultServer(IModule module) {
-		return ModuleProperties.getInstance().getDefaultServer(module);
-	}
-
-	/**
-	 * Sets the preferred runtime server for the given module. Set the server to
-	 * null to clear the setting. If there is a problem saving the file, a CoreException
-	 * will be thrown.
-	 * 
-	 * @param module the module to set the default for
-	 * @param server the server to set the default server, or <code>null</code>
-	 *    to unset the default
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @throws CoreException if there is a problem setting the default server
-	 */
-	public static void setDefaultServer(IModule module, IServer server, IProgressMonitor monitor) throws CoreException {
-		ModuleProperties.getInstance().setDefaultServer(module, server, monitor);
-	}
-
-	/**
-	 * Handles a change to the server type extension point due to bundles getting added
-	 * or removed dynamically at runtime.
-	 * 
-	 * @param delta an extension delta
-	 */
-	protected static void handleServerTypeDelta(IExtensionDelta delta) {
-		if (serverTypes == null) // not loaded yet
-			return;
-		
-		IConfigurationElement[] cf = delta.getExtension().getConfigurationElements();
-		
-		if (delta.getKind() == IExtensionDelta.ADDED) {
-			addServerTypes(cf);
-		} else {
-			int size = serverTypes.size();
-			ServerType[] st = new ServerType[size];
-			serverTypes.toArray(st);
-			int size2 = cf.length;
-			
-			for (int i = 0; i < size; i++) {
-				for (int j = 0; j < size2; j++) {
-					if (st[i].getId().equals(cf[j].getAttribute("id"))) {
-						st[i].dispose();
-						serverTypes.remove(st[i]);
-					}
-				}
-			}
-		}
-		getResourceManager().resolveServers();
-	}
-
-	/**
-	 * Handles a change to the runtime type extension point due to bundles getting added
-	 * or removed dynamically at runtime.
-	 * 
-	 * @param delta an extension delta
-	 */
-	protected static void handleRuntimeTypeDelta(IExtensionDelta delta) {
-		if (runtimeTypes == null) // not loaded yet
-			return;
-		
-		IConfigurationElement[] cf = delta.getExtension().getConfigurationElements();
-		
-		if (delta.getKind() == IExtensionDelta.ADDED) {
-			addRuntimeTypes(cf);
-		} else {
-			int size = runtimeTypes.size();
-			RuntimeType[] rt = new RuntimeType[size];
-			runtimeTypes.toArray(rt);
-			int size2 = cf.length;
-			
-			for (int i = 0; i < size; i++) {
-				for (int j = 0; j < size2; j++) {
-					if (rt[i].getId().equals(cf[j].getAttribute("id"))) {
-						rt[i].dispose();
-						runtimeTypes.remove(rt[i]);
-					}
-				}
-			}
-		}
-		getResourceManager().resolveRuntimes();
-		getResourceManager().resolveServers();
-	}
-
-	private static void addRegistryListener() {
-		if (registryListener != null)
-			return;
-		
-		registryListener = new RegistryChangeListener();
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		registry.addRegistryChangeListener(registryListener, ServerPlugin.PLUGIN_ID);
-		ServerPlugin.setRegistryListener(registryListener);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerEvent.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerEvent.java
deleted file mode 100644
index ad6c85c..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerEvent.java
+++ /dev/null
@@ -1,223 +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.wst.server.core;
-/**
- * An event fired when a server change or module changes.
- * 
- * @since 1.0
- */
-public class ServerEvent {
-	private IServer server;
-	private int kind;
-	private IModule[] moduleTree;
-	private int state;
-	private int publishState;
-	private boolean restartState;
-	
-	/**
-	 * For notification when the state has changed.
-	 * <p>
-	 * This kind is mutually exclusive with <code>PUBLISH_STATE_CHANGE</code> and 
-	 * <code>RESTART_STATE_CHANGE</code>.
-	 * </p>
-	 * 
-	 * @see #getKind()
-	 */
-	public static final int STATE_CHANGE = 0x0001;
-	
-	/**
-	 * Fired when published is needed or no longer needs to be published, 
-	 * or it's state has changed.
-	 * <p>
-	 * This kind is mutually exclusive with <code>STATE_CHANGE</code> and 
-	 * <code>RESTART_STATE_CHANGE</code>.
-	 * </p>
-	 * 
-	 * @see #getKind()
-	 */
-	public static final int PUBLISH_STATE_CHANGE = 0x0002;
-	
-	/**
-	 * For notification when the server isRestartNeeded() property changes.
-	 * <p>
-	 * This kind is mutually exclusive with <code>STATE_CHANGE</code> and 
-	 * <code>PUBLISH_STATE_CHANGE</code>.
-	 * </p>
-	 * 
-	 * @see #getKind()
-	 */
-	public static final int RESTART_STATE_CHANGE = 0x0004;
-	
-	/**
-	 * For event on server changes. This kind is mutually exclusive with <code>MODULE_CHANGE</code>.
-	 * 
-	 * @see #getKind()
-	 */
-	public static final int SERVER_CHANGE = 0x0010;
-	
-	/**
-	 * For event on module changes. This kind is mutually exclusive with <code>SERVER_CHANGE</code>.
-	 * 
-	 * @see #getKind()
-	 */
-	public static final int MODULE_CHANGE = 0x0020;
-
-	/**
-	 * Create a new server event for server change events.
-	 * 
-	 * @param kind the kind of the change. (<code>XXX_CHANGE</code>). If the kind does not 
-	 *    include the <code>SERVER_CHANGE</code> kind, the SERVER_CHANGE will be added automatically.  
-	 *    constants declared on {@link ServerEvent}
-	 * @param server the server that the server event takes place
-	 * @param state the server state after the change (<code>STATE_XXX</code>)
-	 *    constants declared on {@link IServer}
-	 * @param publishingState the server publishing state after the 
-	 *    change (<code>PUBLISH_STATE_XXX</code>)
-	 *    constants declared on {@link IServer}
-	 * @param restartState get the server restart state after the server is restart 
-	 *    needed property change event
-	 */
-	public ServerEvent(int kind, IServer server, int state, int publishingState, boolean restartState) {
-		this.kind = kind |= SERVER_CHANGE;
-		this.server = server;
-		this.state = state;
-		this.publishState = publishingState;
-		this.restartState = restartState;
-		
-		if (server == null)
-			throw new IllegalArgumentException("Server parameter must not be null");
-		if ((kind & MODULE_CHANGE) != 0)
-			throw new IllegalArgumentException("Kind parameter invalid");
-		
-		checkKind();
-	}
-
-	/**
-	 * Create a new ServerEvent for module change events.
-	 * 
-	 * @param kind the kind of the change. (<code>XXX_CHANGE</code>). If the kind does not 
-	 *    include the <code>MODULE_CHANGE</code> kind, the MODULE_CHANGE will be added automatically.  
-	 *    constants declared on {@link ServerEvent}
-	 * @param server the server that the module event takes place
-	 * @param module the module that has changed
-	 * @param state the module state after the change (<code>STATE_XXX</code>)
-	 *    constants declared on {@link IServer}
-	 * @param publishingState the module publishing state after the 
-	 *    change (<code>PUBLISH_STATE_XXX</code>)
-	 *    constants declared on {@link IServer}
-	 * @param restartState get the module restart state after the module is restart 
-	 *    needed property change event.
-	 */
-	public ServerEvent(int kind, IServer server, IModule[] module, int state, int publishingState, boolean restartState) {
-		this.kind = kind |= MODULE_CHANGE;
-		this.server = server;
-		this.moduleTree = module;
-		this.state = state;
-		this.publishState = publishingState;
-		this.restartState = restartState;
-		
-		if (moduleTree == null || moduleTree.length == 0)
-			throw new IllegalArgumentException("Module parameter invalid");
-		if ((kind & SERVER_CHANGE) != 0)
-			throw new IllegalArgumentException("Kind parameter invalid");
-		
-		checkKind();
-	}
-	
-	private void checkKind() {
-		int i = 0;
-		if ((kind & STATE_CHANGE) != 0)
-			i++;
-		if ((kind & RESTART_STATE_CHANGE) != 0)
-			i++;
-		if ((kind & PUBLISH_STATE_CHANGE) != 0)
-			i++;
-		
-		if (i != 1)
-			throw new IllegalArgumentException("Kind parameter invalid");
-	}
-
-	/**
-	 * Returns the kind of the server event.
-	 * <p>
-	 * This kind can be used to test whether this event is a server event or module event by using
-	 * the following code (the example is checking for the server event):
-	 * ((getKind() | SERVER_CHANGE) != 0) 
-	 * the following code (the example is checking for the module event):
-	 * ((getKind() | MODULE_CHANGE) != 0) 
-	 * 
-	 * @return the kind of the change (<code>XXX_CHANGE</code>
-	 *    constants declared on {@link ServerEvent}
-	 */
-	public int getKind() {
-		return kind;
-	}
-	
-	/**
-	 * Returns the module tree of the module involved in the module change event,
-	 * or <code>null</code> if the event is not a module event, i.e. isModuleEvent() is false.
-	 *  
-	 * @return the module tree of the module involved in the module change event,
-	 *    or <code>null</code> if the event is not a module event, i.e.
-	 *    isModuleEvent() is false.
-	 */
-	public IModule[] getModule() {
-		return moduleTree;
-	}
-	
-	/**
-	 * Get the publish state after the change that triggers this server event. If this event 
-	 * is of the SERVER_CHANGE kind, then the publishing state is the server publishing state.
-	 * If this event is of the MODULE_CHANGE kind, then the publishing state is the module
-	 * publishing state.
-	 * 
-	 * @return the publishing state after the change (<code>PUBLISH_STATE_XXX</code>)
-	 *    constants declared on {@link IServer}
-	 */
-	public int getPublishState() {
-		return publishState;
-	}
-	
-	/**
-	 * Get the restart state after isRestartNeeded() property change event.
-	 * If this event is of the SERVER_CHANGE kind, then the restart state is the server 
-	 * restart state. If this event is of the MODULE_CHANGE kind, then the restart state 
-	 * is the module restart state. 
-	 * 
-	 * @return <code>true</code> if restart is needed, and
-	 *    <code>false</code> otherwise
-	 */
-	public boolean getRestartState() {
-		return restartState;
-	}
-	
-	/**
-	 * Get the state after the change that triggers this server event. If this event 
-	 * is of the SERVER_CHANGE kind, then the state is the server state.
-	 * If this event is of the MODULE_CHANGE kind, then the state is the module
-	 * state.
-	 * 
-	 * @return the server state after the change (<code>STATE_XXX</code>)
-	 *    constants declared on {@link IServer}
-	 */
-	public int getState() {
-		return state;
-	}
-	
-	/**
-	 * Returns the server involved in the change event.
-	 * 
-	 * @return the server involved in the change event.
-	 */
-	public IServer getServer() {
-		return server;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerPort.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerPort.java
deleted file mode 100644
index 9914bf8..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerPort.java
+++ /dev/null
@@ -1,139 +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.wst.server.core;
-/**
- * This class represents a port on a server.
- * 
- * @since 1.0
- */
-public class ServerPort {
-	private String id;
-	private String name;
-	private int port;
-	private String protocol;
-	private String[] contentTypes;
-	private boolean advanced;
-	
-	/**
-	 * Create a new server port.
-	 * 
-	 * @param id a server-specific port id
-	 * @param name a human-readable name for the port
-	 * @param port the number number
-	 * @param protocol the port's protocol
-	 */
-	public ServerPort(String id, String name, int port, String protocol) {
-		this(id, name, port, protocol, null, true);
-	}
-
-	/**
-	 * Create a new server port.
-	 * 
-	 * @param id a server-specific port id
-	 * @param name a human-readable name for the port
-	 * @param port the number number
-	 * @param protocol the port's protocol
-	 * @param contentTypes the content types that the port supports
-	 * @param advanced <code>true</code> if the port is "advanced" and should only
-	 *    be shown to advanced users, <code>false</code> otherwise
-	 */
-	public ServerPort(String id, String name, int port, String protocol, String[] contentTypes, boolean advanced) {
-		super();
-		this.id = id;
-		this.name = name;
-		this.port = port;
-		this.protocol = protocol;
-		this.contentTypes = contentTypes;
-		this.advanced = advanced;
-	}
-
-	/**
-	 * Return an optional internal id used to identify this port.
-	 * 
-	 * @return an internal id
-	 */
-	public String getId() {
-		return id;
-	}
-
-	/**
-	 * Return the name of the port.
-	 * 
-	 * @return the name of the port
-	 */
-	public String getName() {
-		return name;
-	}
-
-	/**
-	 * Return the actual port number.
-	 * 
-	 * @return the port number
-	 */
-	public int getPort() {
-		return port;
-	}
-
-	/**
-	 * Returns the protocol, e.g. HTTP of this port. Returns null
-	 * if the protocol is unknown.
-	 * 
-	 * @return the procotol
-	 */
-	public String getProtocol() {
-		return protocol;
-	}
-
-	/**
-	 * Returns the content types that this port would normally serve, or null
-	 * if the content is unknown.
-	 * 
-	 * @return a possibly empty array of content types
-	 */
-	public String[] getContentTypes() {
-		return contentTypes;
-	}
-
-	/**
-	 * Returns true if this port is an "advanced" port and should not be shown
-	 * to novice users.
-	 * 
-	 * @return <code>true</code> if the port is advanced, or <code>false</code>
-	 *    otherwise
-	 */
-	public boolean isAdvanced() {
-		return advanced;
-	}
-	
-	/**
-	 * @see Object#equals(Object)
-	 */
-	public boolean equals(Object obj) {
-		if (!(obj instanceof ServerPort))
-			return false;
-		ServerPort sp = (ServerPort) obj;
-		return (sp.port == port);
-	}
-
-	/**
-	 * @see Object#hashCode()
-	 */
-	public int hashCode() {
-		return port;
-	}
-
-	/**
-	 * @see Object#toString()
-	 */
-	public String toString() {
-		return "ServerPort [" + getName() + ", " + getId() + ", " + getPort() + ", " + getProtocol() + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerUtil.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerUtil.java
deleted file mode 100644
index 751cb61..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerUtil.java
+++ /dev/null
@@ -1,764 +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.wst.server.core;
-
-import java.util.*;
-
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.ILaunchConfiguration;
-
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.server.core.internal.*;
-/**
- * Server utility methods. These static methods can be used to perform
- * common operations on server artifacts.
- * 
- * @since 1.0
- */
-public class ServerUtil {
-	/**
-	 * Static utility class - cannot create an instance.
-	 */
-	private ServerUtil() {
-		// do nothing
-	}
-
-	/**
-	 * Returns the project modules attached to a project.
-	 * 
-	 * @param project a project
-	 * @return a possibly empty array of modules
-	 */
-	public static IModule getModule(IProject project) {
-		if (project == null)
-			throw new IllegalArgumentException();
-
-		IModule[] modules = getModules();
-		if (modules != null) {
-			int size = modules.length;
-			for (int i = 0; i < size; i++) {
-				if (modules[i] != null && project.equals(modules[i].getProject()))
-					return modules[i];
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Returns a module from the given moduleId. The moduleId must not be null.
-	 * 
-	 * @param moduleId a module id
-	 * @return the module, or <code>null</code> if the module could not be found
-	 */
-	public static IModule getModule(String moduleId) {
-		if (moduleId == null)
-			throw new IllegalArgumentException();
-		
-		int index = moduleId.indexOf(":");
-		if (index <= 0)
-			return null;
-		
-		String factoryId = moduleId.substring(0, index);
-		ModuleFactory moduleFactory = ServerPlugin.findModuleFactory(factoryId);
-		if (moduleFactory == null)
-			return null;
-
-		String moduleSubId = moduleId.substring(index+1);
-		IModule module = moduleFactory.getModule(moduleSubId);
-		if (module != null)
-			return module;
-		return null;
-	}
-
-	/**
-	 * Return all the available modules from all factories whose
-	 * type matches the given module types.
-	 * 
-	 * @param moduleTypes an array of module types
-	 * @return a possibly empty array of modules
-	 */
-	public static IModule[] getModules(IModuleType[] moduleTypes) {
-		List list = new ArrayList();
-
-		ModuleFactory[] factories = ServerPlugin.getModuleFactories();
-		if (factories != null) {
-			int size = factories.length;
-			for (int i = 0; i < size; i++) {
-				if (isSupportedModule(factories[i].getModuleTypes(), moduleTypes)) {
-					IModule[] modules = factories[i].getModules();
-					if (modules != null) {
-						int size2 = modules.length;
-						for (int j = 0; j < size2; j++)
-							list.add(modules[j]);
-					}
-				}
-			}
-		}
-		IModule[] modules = new IModule[list.size()];
-		list.toArray(modules);
-		return modules;
-	}
-	
-	/**
-	 * Return all the available modules from all factories whose
-	 * type matches the given module type id.
-	 * 
-	 * @param type a module type
-	 * @return a possibly empty array of modules
-	 */
-	public static IModule[] getModules(String type) {
-		List list = new ArrayList();
-
-		ModuleFactory[] factories = ServerPlugin.getModuleFactories();
-		if (factories != null) {
-			int size = factories.length;
-			for (int i = 0; i < size; i++) {
-				if (isSupportedModule(factories[i].getModuleTypes(), type, null)) {
-					IModule[] modules = factories[i].getModules();
-					if (modules != null) {
-						int size2 = modules.length;
-						for (int j = 0; j < size2; j++)
-							if(type.equals(modules[j].getModuleType().getId()))
-								list.add(modules[j]);
-					}
-				}
-			}
-		}
-		IModule[] modules = new IModule[list.size()];
-		list.toArray(modules);
-		return modules;
-	}
-	
-	/**
-	 * Returns <code>true</code> if any of the given moduleTypes have the given
-	 * module type id and version id.
-	 * 
-	 * @param moduleTypes an array of module types
-	 * @param typeId a module type
-	 * @param versionId a module version
-	 * @return <code>true</code> if the module type is supported, and
-	 *    <code>false</code> otherwise
-	 */
-	public static boolean isSupportedModule(IModuleType[] moduleTypes, String typeId, String versionId) {
-		if (moduleTypes != null) {
-			int size = moduleTypes.length;
-			for (int i = 0; i < size; i++) {
-				if (isSupportedModule(moduleTypes[i], typeId, versionId))
-					return true;
-			}
-		}
-		return false;
-	}
-
-	private static boolean isSupportedModule(IModuleType[] moduleTypes, IModuleType[] mt) {
-		if (mt != null) {
-			int size = mt.length;
-			for (int i = 0; i < size; i++) {
-				if (isSupportedModule(moduleTypes, mt[i]))
-					return true;
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * Returns <code>true</code> if any of the given moduleTypes match the given
-	 * module type.
-	 * 
-	 * @param moduleTypes an array of modules types
-	 * @param mt a module type
-	 * @return <code>true</code> if the module type is supported, and
-	 *    <code>false</code> otherwise
-	 */
-	public static boolean isSupportedModule(IModuleType[] moduleTypes, IModuleType mt) {
-		if (moduleTypes != null) {
-			int size = moduleTypes.length;
-			for (int i = 0; i < size; i++) {
-				if (isSupportedModule(moduleTypes[i], mt))
-					return true;
-			}
-		}
-		return false;
-	}
-	
-	private static boolean isSupportedModule(IModuleType moduleType, String type, String version) {
-		String type2 = moduleType.getId();
-		if (matches(type, type2)) {
-			String version2 = moduleType.getVersion();
-			if (matches(version, version2))
-				return true;
-		}
-		return false;
-	}
-
-	/**
-	 * Returns true if the two given module types are compatible. The moduleTypes may not
-	 * be null.
-	 * 
-	 * @param moduleType a module type
-	 * @param mt a module type
-	 * @return <code>true</code> if the module type is supported, and
-	 *    <code>false</code> otherwise
-	 */
-	public static boolean isSupportedModule(IModuleType moduleType, IModuleType mt) {
-		if (moduleType == null || mt == null)
-			throw new IllegalArgumentException();
-		
-		String type2 = moduleType.getId();
-		if (matches(mt.getId(), type2)) {
-			String version2 = moduleType.getVersion();
-			if (matches(mt.getVersion(), version2))
-				return true;
-		}
-		return false;
-	}
-
-	private static boolean matches(String a, String b) {
-		if (a == null || b == null || "*".equals(a) || "*".equals(b) || a.startsWith(b) || b.startsWith(a)
-			|| (a.endsWith(".*") && b.startsWith(a.substring(0, a.length() - 1)))
-			|| (b.endsWith(".*") && a.startsWith(b.substring(0, b.length() - 1))))
-			return true;
-		return false;
-	}
-
-	/**
-	 * Return all the available modules from all factories.
-	 * 
-	 * @return a possibly empty array of modules
-	 */
-	private static IModule[] getModules() {
-		List list = new ArrayList();
-		
-		ModuleFactory[] factories = ServerPlugin.getModuleFactories();
-		if (factories != null) {
-			int size = factories.length;
-			for (int i = 0; i < size; i++) {
-				IModule[] modules = factories[i].getModules();
-				if (modules != null) {
-					int size2 = modules.length;
-					for (int j = 0; j < size2; j++) {
-						if (!list.contains(modules[j])) {
-							if (isSupportedModule(factories[i].getModuleTypes(), modules[j].getModuleType()))
-								list.add(modules[j]);
-							else
-								Trace.trace(Trace.WARNING, "Invalid module returned from factory, ignored: " + modules[j]);
-						}
-					}
-				}
-			}
-		}
-		IModule[] modules = new IModule[list.size()];
-		list.toArray(modules);
-		return modules;
-	}
-
-	/**
-	 * Adds or removes modules from a server. Will search for the first parent module
-	 * of each module and add it to the server instead. This method will handle multiple
-	 * modules having the same parent (the parent will only be added once), but may not
-	 * handle the case where the same module or parent is being both added and removed.
-	 * 
-	 * @param server a server
-	 * @param add an array of modules to add, or <code>null</code> to not add any
-	 * @param remove an array of modules to remove, or <code>null</code> to not remove any
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @throws CoreException if anything goes wrong
-	 */
-	public static void modifyModules(IServerWorkingCopy server, IModule[] add, IModule[] remove, IProgressMonitor monitor) throws CoreException {
-		if (server == null)
-			throw new IllegalArgumentException();
-		
-		if (add == null)
-			add = new IModule[0];
-		if (remove == null)
-			remove = new IModule[0];
-		
-		int size = add.length;
-		List addParentModules = new ArrayList();
-		for (int i = 0; i < size; i++) {
-			boolean found = false;
-			try {
-				IModule[] parents = server.getRootModules(add[i], monitor);
-				if (parents != null) {
-					found = true;
-					if (parents.length > 0) {				
-						Object parent = parents[0];
-						found = true;
-						if (!addParentModules.contains(parent))
-							addParentModules.add(parent);
-					}
-				} 
-			} catch (Exception e) {
-				Trace.trace(Trace.WARNING, "Could not find parent module", e);
-			}
-			
-			if (!found)
-				addParentModules.add(add[i]);
-		}
-		
-		size = remove.length;
-		List removeParentModules = new ArrayList();
-		for (int i = 0; i < size; i++) {
-			boolean found = false;
-			try {
-				IModule[] parents = server.getRootModules(remove[i], monitor);
-				if (parents != null) {
-					found = true;
-					if (parents.length > 0) {				
-						Object parent = parents[0];
-						found = true;
-						if (!removeParentModules.contains(parent))
-							removeParentModules.add(parent);
-					}
-				} 
-			} catch (Exception e) {
-				Trace.trace(Trace.WARNING, "Could not find parent module 2", e);
-			}
-			
-			if (!found)
-				removeParentModules.add(remove[i]);
-		}
-		
-		IModule[] add2 = new IModule[addParentModules.size()];
-		addParentModules.toArray(add2);
-		IModule[] remove2 = new IModule[removeParentModules.size()];
-		removeParentModules.toArray(remove2);
-		
-		server.modifyModules(add2, remove2, monitor);
-	}
-
-	/**
-	 * Sets a default name on the given runtime.
-	 * 
-	 * @param runtime a runtime
-	 */
-	public static void setRuntimeDefaultName(IRuntimeWorkingCopy runtime) {
-		String typeName = runtime.getRuntimeType().getName();
-		
-		String name = NLS.bind(Messages.defaultRuntimeName, typeName);
-		int i = 2;
-		while (isNameInUse(name)) {
-			name = NLS.bind(Messages.defaultRuntimeName2, new String[] {typeName, i + ""});
-			i++;
-		}
-		runtime.setName(name);
-	}
-
-	/**
-	 * Sets a default name on the given server.
-	 * 
-	 * @param server a server
-	 */
-	public static void setServerDefaultName(IServerWorkingCopy server) {
-		if (server == null)
-			throw new IllegalArgumentException();
-		
-		String typeName = server.getServerType().getName();
-		String host = server.getHost();
-		
-		String name = NLS.bind(Messages.defaultServerName, new String[] {typeName, host});
-		int i = 2;
-		while (isNameInUse(name)) {
-			name = NLS.bind(Messages.defaultServerName2, new String[] {typeName, host, i + ""});
-			i++;
-		}
-		server.setName(name);
-	}
-
-	private static boolean isValidFilename(String name) {
-		IStatus status = ResourcesPlugin.getWorkspace().validateName(name, IResource.FILE);
-		if (status != null && !status.isOK())
-			return false;
-		
-		status = ResourcesPlugin.getWorkspace().validateName(name, IResource.FOLDER);
-		if (status != null && !status.isOK())
-			return false;
-		
-		return true;
-	}
-
-	private static String getValidFileName(String name) {
-		if (isValidFilename(name))
-			return name;
-	
-		// remove invalid characters
-		String[] s = new String[] {".", "\\", "/", "?", ":", "*", "\"", "|", "<", ">"};
-		int ind = 0;
-		while (ind < s.length) {
-			int index = name.indexOf(s[ind]);
-			while (index >= 0) {
-				name = name.substring(0, index) + name.substring(index+1);
-				index = name.indexOf(s[ind]);
-			}
-			ind++;
-		}
-		return name;
-	}
-
-	/**
-	 * Returns an unused file in the given project.
-	 * 
-	 * @param project a project
-	 * @param type a server type
-	 * @return an unused file within the given project
-	 */
-	/*public static IFile getUnusedServerFile(IProject project, IServerType type) {
-		if (project == null || type == null)
-			throw new IllegalArgumentException();
-		
-		String typeName = getValidFileName(type.getName());
-		String name = NLS.bind(Messages.defaultServerName3, typeName)+ "."  + Server.FILE_EXTENSION;
-		int i = 2;
-		while (isFileNameInUse(project, name)) {
-			name = NLS.bind(Messages.defaultServerName4, new String[] {typeName, i + ""}) + "."  + Server.FILE_EXTENSION;
-			i++;
-		}
-		return project.getFile(name);
-	}*/
-
-	/**
-	 * Returns an unused file in the given project.
-	 * 
-	 * @param project a project
-	 * @param server a server
-	 * @return an unused file within the given project
-	 */
-	public static IFile getUnusedServerFile(IProject project, IServer server) {
-		if (project == null || server == null)
-			throw new IllegalArgumentException();
-		
-		String typeName = getValidFileName(server.getName());
-		String name = NLS.bind(Messages.defaultServerName3, typeName)+ "."  + Server.FILE_EXTENSION;
-		int i = 2;
-		while (isFileNameInUse(project, name)) {
-			name = NLS.bind(Messages.defaultServerName4, new String[] {typeName, i + ""}) + "."  + Server.FILE_EXTENSION;
-			i++;
-		}
-		return project.getFile(name);
-	}
-
-	/**
-	 * Returns true if a server or runtime exists with the given name.
-	 *
-	 * @param name a name
-	 * @return <code>true</code> if the name is in use, and <code>false</code>
-	 *    otherwise
-	 */
-	private static boolean isNameInUse(String name) {
-		if (name == null)
-			return true;
-	
-		List list = new ArrayList();
-		
-		addAll(list, ServerCore.getRuntimes());
-		addAll(list, ServerCore.getServers());
-
-		Iterator iterator = list.iterator();
-		while (iterator.hasNext()) {
-			Object obj = iterator.next();
-			if (obj instanceof IServerAttributes && name.equalsIgnoreCase(((IServerAttributes)obj).getName()))
-				return true;
-			if (obj instanceof IRuntime && name.equalsIgnoreCase(((IRuntime)obj).getName()))
-				return true;
-		}
-
-		return false;
-	}
-	
-	private static void addAll(List list, Object[] obj) {
-		if (obj == null)
-			return;
-		
-		int size = obj.length;
-		for (int i = 0; i < size; i++) {
-			list.add(obj[i]);
-		}
-	}
-	
-	/**
-	 * Returns true if an element exists with the given name.
-	 *
-	 * @param project a project
-	 * @param name a file or folder name
-	 * @return boolean <code>true</code> if the file or folder name is being
-	 *    used, and <code>false</code> otherwise
-	 */
-	private static boolean isFileNameInUse(IProject project, String name) {
-		if (name == null || project == null)
-			return false;
-		
-		if (project.getFile(name).exists())
-			return true;
-		if (project.getFolder(name).exists())
-			return true;
-	
-		return false;
-	}
-
-	/**
-	 * Return a list of all runtime targets that match the given type and version.
-	 * If type or version is null, it matches all of that type or version.
-	 * 
-	 * @param type a module type
-	 * @param version a module version
-	 * @return a possibly-empty array of runtime instances {@link IRuntime}
-	 */
-	public static IRuntime[] getRuntimes(String type, String version) {
-		List list = new ArrayList();
-		IRuntime[] runtimes = ServerCore.getRuntimes();
-		if (runtimes != null) {
-			int size = runtimes.length;
-			for (int i = 0; i < size; i++) {
-				IRuntimeType runtimeType = runtimes[i].getRuntimeType();
-				if (runtimeType != null && isSupportedModule(runtimeType.getModuleTypes(), type, version)) {
-					list.add(runtimes[i]);
-				}
-			}
-		}
-		
-		IRuntime[] runtimes2 = new IRuntime[list.size()];
-		list.toArray(runtimes2);
-		return runtimes2;
-	}
-
-	/**
-	 * Return a list of all runtime types that match the given type and version.
-	 * If type or version is null, it matches all of that type or version.
-	 * 
-	 * @param type a module type
-	 * @param version a module version
-	 * @return a possibly-empty array of runtime type instances {@link IRuntimeType}
-	 */
-	public static IRuntimeType[] getRuntimeTypes(String type, String version) {
-		List list = new ArrayList();
-		IRuntimeType[] runtimeTypes = ServerCore.getRuntimeTypes();
-		if (runtimeTypes != null) {
-			int size = runtimeTypes.length;
-			for (int i = 0; i < size; i++) {
-				if (isSupportedModule(runtimeTypes[i].getModuleTypes(), type, version)) {
-					list.add(runtimeTypes[i]);
-				}
-			}
-		}
-		
-		IRuntimeType[] rt = new IRuntimeType[list.size()];
-		list.toArray(rt);
-		return rt;
-	}
-	
-	/**
-	 * Return a list of all runtime types that match the given type, version,
-	 * and partial runtime type id. If type, version, or runtimeTypeId is null,
-	 * it matches all of that type or version.
-	 * 
-	 * @param type a module type
-	 * @param version a module version
-	 * @param runtimeTypeId the id of a runtime type
-	 * @return a possibly-empty array of runtime type instances {@link IRuntimeType}
-	 */
-	public static IRuntimeType[] getRuntimeTypes(String type, String version, String runtimeTypeId) {
-		List list = new ArrayList();
-		IRuntimeType[] runtimeTypes = ServerCore.getRuntimeTypes();
-		if (runtimeTypes != null) {
-			int size = runtimeTypes.length;
-			for (int i = 0; i < size; i++) {
-				if (isSupportedModule(runtimeTypes[i].getModuleTypes(), type, version)) {
-					if (runtimeTypeId == null || runtimeTypes[i].getId().startsWith(runtimeTypeId))
-						list.add(runtimeTypes[i]);
-				}
-			}
-		}
-		
-		IRuntimeType[] rt = new IRuntimeType[list.size()];
-		list.toArray(rt);
-		return rt;
-	}
-
-	/**
-	 * Returns a list of all servers that this deployable is not currently
-	 * configured on, but could be added to. If includeErrors is true, this
-	 * method return servers where the parent deployable may throw errors. For
-	 * instance, this deployable may be the wrong spec level.
-	 *
-	 * @param module a module
-	 * @param includeErrors <code>true</code> to include servers that returned
-	 *    errors when trying to add the module, and <code>false</code> otherwise
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return a possibly empty array of servers
-	 */
-	public static IServer[] getAvailableServersForModule(IModule module, boolean includeErrors, IProgressMonitor monitor) {
-		if (module == null)
-			return new IServer[0];
-
-		// do it the slow way - go through all servers and
-		// see if this deployable is not configured in it
-		// but could be added
-		List list = new ArrayList();
-		IServer[] servers = ServerCore.getServers();
-		if (servers != null) {
-			int size = servers.length;
-			for (int i = 0; i < size; i++) {
-				if (!containsModule(servers[i], module, monitor)) {
-					try {
-						IModule[] parents = servers[i].getRootModules(module, monitor);
-						if (parents != null && parents.length > 0) {
-							boolean found = false;
-							if (parents != null) {
-								int size2 = parents.length;
-								for (int j = 0; !found && j < size2; j++) {
-									IModule parent = parents[j];
-									IStatus status = servers[i].canModifyModules(new IModule[] { parent }, new IModule[0], monitor);
-									if (status == null || status.isOK()){
-										list.add(servers[i]);
-										found = true;
-									}
-								}
-							}
-						}
-					} catch (Exception se) {
-						if (includeErrors)
-							list.add(servers[i]);
-					}
-				}
-			}
-		}
-		
-		// make sure that the preferred server is the first one
-		//IServer server = ServerCore.getServerPreferences().getDeployableServerPreference(deployable);
-		//if (server != null && list.contains(server) && list.indexOf(server) != 0) {
-		//	list.remove(server);
-		//	list.add(0, server);
-		//}
-
-		IServer[] allServers = new IServer[list.size()];
-		list.toArray(allServers);
-		return allServers;
-	}
-
-	/**
-	 * Returns a list of all servers that this module is configured on.
-	 * 
-	 * @param module a module
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reportin