This commit was manufactured by cvs2svn to create tag 'v20050602-2340'.
diff --git a/plugins/org.eclipse.jst.server.core/.classpath b/plugins/org.eclipse.jst.server.core/.classpath
deleted file mode 100644
index a74595e..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.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<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 8d1d585..0000000
--- a/plugins/org.eclipse.jst.server.core/.cvsignore
+++ /dev/null
@@ -1,5 +0,0 @@
-bin
-build.xml
-org.eclipse.jst.server.core_3.0.0.jar
-sjavacore.jar
-temp.folder
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 f7bd67f..0000000
--- a/plugins/org.eclipse.jst.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.jst.server.core; singleton:=true
-Bundle-Version: 1.0.0
-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.resources,
- org.eclipse.debug.core,
- org.eclipse.core.expressions,
- org.eclipse.wst.server.core,
- org.eclipse.jdt.core,
- org.eclipse.jdt.launching,
- org.eclipse.core.runtime
-Eclipse-AutoStart: true
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 b501cce..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/
-bin.excludes = bin/**,\
-               @dot/**,\
-               temp.folder/**
-src.includes = schema/,\
-               build.properties,\
-               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 8b6f073..0000000
--- a/plugins/org.eclipse.jst.server.core/component.xml
+++ /dev/null
@@ -1,36 +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="ILooseArchiveSupport"/>
-    <type name="ILooseArchive"/>
-    <type name="IWebModule"/>
-    <type name="IEnterpriseApplication"/>
-    <type name="JndiObject"/>
-    <type name="ClasspathRuntimeTargetHandler"/>
-    <type name="IApplicationClientModule"/>
-    <type name="EJBBean"/>
-    <type name="JndiLaunchable"/> -->
-  </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.geronimo.core" fragment="false"/>
-
-  <plugin id="org.eclipse.jst.server.geronimo.ui" 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 0bd3822..0000000
--- a/plugins/org.eclipse.jst.server.core/plugin.properties
+++ /dev/null
@@ -1,19 +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
-
-runtimeTypeName=J2EE Runtime Library
-runtimeTypeDescription=A runtime that represents a set of J2EE runtime libraries.
-
-moduleTypeJ2EEWebName=J2EE Web module
-moduleTypeJ2EEEJBName=J2EE EJB module
-moduleTypeJ2EEEARName=J2EE Enterprise application
\ 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 5ec36e1..0000000
--- a/plugins/org.eclipse.jst.server.core/plugin.xml
+++ /dev/null
@@ -1,75 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<plugin>
-  <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="j2ee.web"
-       name="%moduleTypeJ2EEWebName"/>
-    <moduleType
-       id="j2ee.ejb"
-       name="%moduleTypeJ2EEEJBName"/>
-    <moduleType
-       id="j2ee.ear"
-       name="%moduleTypeJ2EEEARName"/>
-  </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="j2ee.*"
-         versions="*"/>
-       <moduleType
-         types="utility"
-         versions="*"/>
-    </runtimeType>
-  </extension>
-
-  <extension point="org.eclipse.wst.server.core.runtimeTargetHandlers">
-    <runtimeTargetHandler
-      id="org.eclipse.jst.server.core.runtimeTarget"
-      runtimeTypeIds="org.eclipse.jst.server.core.runtimeType"
-      class="org.eclipse.jst.server.core.internal.GenericRuntimeTargetHandler"/>
-  </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"/>
-         </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>
-
-</plugin>
\ No newline at end of file
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 ec33ca1..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/ClasspathRuntimeTargetHandler.java
+++ /dev/null
@@ -1,519 +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.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.*;
-import org.eclipse.jdt.core.*;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.jst.server.core.internal.*;
-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. 
- * 
- * <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 abstract class ClasspathRuntimeTargetHandler extends RuntimeTargetHandlerDelegate {
-	private class SourceAttachmentUpdate {
-		String runtimeId;
-		String id;
-		IPath entry;
-		IPath sourceAttachmentPath;
-		IPath sourceAttachmentRootPath;
-		IClasspathAttribute[] attributes;
-	}
-
-	private List sourceAttachments;
-
-	/** (non-Javadoc)
-	 * @see RuntimeTargetHandlerDelegate#setRuntimeTarget(IProject, IRuntime, IProgressMonitor)
-	 */
-	public void setRuntimeTarget(IProject project, IRuntime runtime, IProgressMonitor monitor) throws CoreException {
-		if (project == null || runtime == null)
-			return;
-
-		IJavaProject javaProject = null;
-		try {
-			javaProject = (IJavaProject) project.getNature(JavaCore.NATURE_ID);
-		} catch (Exception e) {
-			// ignore
-		}
-		
-		if (javaProject == null)
-			return;
-		
-		try {
-			List list = new ArrayList();
-			IClasspathEntry[] cp = javaProject.getRawClasspath();
-			int size = cp.length;
-			for (int i = 0; i < size; i++) {
-				if (cp[i].getEntryKind() == IClasspathEntry.CPE_CONTAINER) {
-					if (!cp[i].getPath().segment(0).equals(RuntimeClasspathContainer.SERVER_CONTAINER))
-						list.add(cp[i]);
-				} else
-					list.add(cp[i]);
-			}
-			
-			List add = new ArrayList();
-			IClasspathEntry[] entries = getDelegateClasspathEntries(runtime, monitor);
-			if (entries != null) {
-				size = entries.length;
-				for (int i = 0; i < size; i++)
-					add.add(entries[i]);
-			}
-			
-			String[] ids = getClasspathEntryIds();
-			if (ids != null) {
-				size = ids.length;
-				for (int i = 0; i < size; i++) {
-					String id2 = getRuntimeTargetHandler().getId();
-					IPath path = new Path(RuntimeClasspathContainer.SERVER_CONTAINER).append(id2).append(runtime.getId());
-					if (ids[i] != null)
-						path.append(ids[i]);
-					add.add(JavaCore.newContainerEntry(path));
-					String id = "";
-					if (path.segmentCount() > 3)
-						id = path.segment(3);
-					RuntimeClasspathContainer rcc = new RuntimeClasspathContainer(path, this, runtime, id);
-					JavaCore.setClasspathContainer(path, new IJavaProject[] { javaProject}, new IClasspathContainer[] { rcc }, monitor);
-				}
-			}
-			
-			// clean up duplicates
-			cleanupDuplicateClasspath(javaProject, list, add);
-			
-			Iterator iterator = add.iterator();
-			while (iterator.hasNext()) {
-				list.add(iterator.next());
-			}
-			
-			cp = new IClasspathEntry[list.size()];
-			list.toArray(cp);
-			javaProject.setRawClasspath(cp, monitor);
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Error setting runtime target", e);
-			throw new CoreException(new Status(IStatus.ERROR, JavaServerPlugin.PLUGIN_ID, 0, e.getLocalizedMessage(), e));
-		}
-	}
-
-	private void cleanupDuplicateClasspath(IJavaProject project, List current, List add) {
-		if (project == null || current == null || add == null)
-			throw new IllegalArgumentException();
-		
-		// check if we even have to bother
-		boolean sourceOnly = true;
-		Iterator iterator = current.iterator();
-		while (iterator.hasNext()) {
-			IClasspathEntry entry = (IClasspathEntry) iterator.next();
-			if (entry.getEntryKind() != IClasspathEntry.CPE_SOURCE)
-				sourceOnly = false;
-		}
-		if (sourceOnly)
-			return;
-		
-		// remove any of our own containers
-		List remove = new ArrayList();
-		iterator = current.iterator();
-		while (iterator.hasNext()) {
-			IClasspathEntry entry = (IClasspathEntry) iterator.next();
-			
-			if (entry.getEntryKind() == IClasspathEntry.CPE_CONTAINER) {
-				try {
-					if (RuntimeClasspathContainer.SERVER_CONTAINER.equals(entry.getPath().segment(0))
-						|| JavaRuntime.JRE_CONTAINER.equals(entry.getPath().segment(0)))
-						remove.add(entry);
-				} catch (Exception e) {
-					Trace.trace(Trace.FINEST, "Error resolving classpath container", e);
-				}
-			}
-		}
-
-		// expand the "add" list
-		List addExpanded = new ArrayList();
-		iterator = add.iterator();
-		while (iterator.hasNext()) {
-			IClasspathEntry entry = (IClasspathEntry) iterator.next();
-			if (entry.getEntryKind() == IClasspathEntry.CPE_CONTAINER) {
-				try {
-					IClasspathContainer container = JavaCore.getClasspathContainer(entry.getPath(), project);
-					IClasspathEntry[] entries = container.getClasspathEntries();
-					int size = entries.length;
-					for (int i = 0; i < size; i++) {
-						if (entries[i] != null)
-							addExpanded.add(entries[i]);
-					}
-				} catch (Exception e) {
-					Trace.trace(Trace.FINEST, "Error resolving classpath container 2", e);
-				}
-			} else if (entry.getEntryKind() == IClasspathEntry.CPE_VARIABLE) {
-				entry = JavaCore.getResolvedClasspathEntry(entry);
-				if (entry != null)
-					addExpanded.add(entry);
-			} else
-				addExpanded.add(entry);
-		}
-		
-		// check for duplicates by also expanding the current list
-		iterator = current.iterator();
-		while (iterator.hasNext()) {
-			IClasspathEntry entry = (IClasspathEntry) iterator.next();
-			
-			List currentExpanded = new ArrayList();
-			if (entry.getEntryKind() == IClasspathEntry.CPE_CONTAINER) {
-				try {
-					IClasspathContainer container = JavaCore.getClasspathContainer(entry.getPath(), project);
-					IClasspathEntry[] entries = container.getClasspathEntries();
-					int size = entries.length;
-					for (int i = 0; i < size; i++) {
-						if (entries[i] != null)
-							currentExpanded.add(entries[i]);
-					}
-				} catch (Exception e) {
-					Trace.trace(Trace.FINEST, "Error resolving classpath container 3", e);
-				}
-			} else if (entry.getEntryKind() == IClasspathEntry.CPE_VARIABLE) {
-				entry = JavaCore.getResolvedClasspathEntry(entry);
-				if (entry != null)
-					currentExpanded.add(entry);
-			} else
-				currentExpanded.add(entry);
-			
-			// loop over all of the expanded entries of this current entry
-			boolean dup = false;
-			Iterator iterator2 = currentExpanded.iterator();
-			while (!dup && iterator2.hasNext()) {
-				IClasspathEntry entry2 = (IClasspathEntry) iterator2.next();
-				Iterator iterator3 = addExpanded.iterator();
-				while (iterator3.hasNext()) {
-					IClasspathEntry entry3 = (IClasspathEntry) iterator3.next();
-					if (entry3.getPath().equals(entry2.getPath()))
-						dup = true;
-				}
-			}
-			if (dup && !remove.contains(entry))
-				remove.add(entry);
-		}
-		
-		// remove duplicates
-		iterator = remove.iterator();
-		while (iterator.hasNext()) {
-			current.remove(iterator.next());
-		}
-	}
-
-	/** (non-Javadoc)
-	 * @see RuntimeTargetHandlerDelegate#removeRuntimeTarget(IProject, IRuntime, IProgressMonitor)
-	 */
-	public void removeRuntimeTarget(IProject project, IRuntime runtime, IProgressMonitor monitor) {
-		Trace.trace(Trace.FINEST, "Removing runtime target");
-		if (project == null || runtime == null)
-			return;
-
-		IJavaProject javaProject = null;
-		try {
-			javaProject = (IJavaProject) project.getNature(JavaCore.NATURE_ID);
-		} catch (Exception e) {
-			// ignore
-		}
-
-		if (javaProject == null)
-			return;
-		
-		try {
-			IClasspathEntry[] delegates = getDelegateClasspathEntries(runtime, monitor);
-			int delegateSize = 0;
-			if (delegates != null)
-				delegateSize = delegates.length;
-
-			List list = new ArrayList();
-			IClasspathEntry[] cp = javaProject.getRawClasspath();
-			int size = cp.length;
-			for (int i = 0; i < size; i++) {
-				boolean remove = false;
-				
-				if (cp[i].getPath().segment(0).equals(RuntimeClasspathContainer.SERVER_CONTAINER))
-					remove = true;
-				
-				for (int j = 0; j < delegateSize; j++) {
-					if (cp[i].equals(delegates[j]))
-						remove = true;
-				}
-				if (!remove)
-					list.add(cp[i]);
-			}
-			
-			cp = new IClasspathEntry[list.size()];
-			list.toArray(cp);
-			javaProject.setRawClasspath(cp, monitor);
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Error removing runtime target", e);
-		}
-	}
-	
-	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);
-	}
-
-	/**
-	 * 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) {
-		return null;
-	}
-
-	/**
-	 * 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() {
-		return new String[1];
-	}
-
-	/**
-	 * 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) {
-		// 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.id = id;
-				sau.entry = entries[i].getPath();
-				sau.sourceAttachmentPath = entries[i].getSourceAttachmentPath();
-				sau.sourceAttachmentRootPath = entries[i].getSourceAttachmentRootPath();
-				sau.attributes = entries[i].getExtraAttributes();
-				sourceAttachments.add(sau);
-			}
-		}
-		save();
-	}
-
-	/**
-	 * 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) {
-		IClasspathEntry[] entries = resolveClasspathContainer(runtime, id);
-		
-		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 ((id != null && sau.id.equals(id)) || (id == null && sau.id == null)) {
-					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;
-	}
-	
-	private void save() {
-		if (sourceAttachments == null)
-			return;
-		String id = getRuntimeTargetHandler().getId();
-		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.id != null)
-					child.putString("id", sau.id);
-				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);
-		}
-	}
-
-	private void load() {
-		sourceAttachments = new ArrayList();
-		
-		if (getRuntimeTargetHandler() == null)
-			return;
-		String id = getRuntimeTargetHandler().getId();
-		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");
-					sau.id = children[i].getString("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());
-		}
-	}
-
-	/**
-	 * 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 95c003f..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>
- * @since 1.0
- */
-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/IApplicationClientModule.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IApplicationClientModule.java
deleted file mode 100644
index f3e5c60..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>
- * @since 1.0
- */
-public interface IApplicationClientModule extends IJ2EEModule {
-	// no additional methods
-}
\ 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 df4e502..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>
- * @since 1.0
- */
-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 408377e..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IEJBModule.java
+++ /dev/null
@@ -1,29 +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>
- * @since 1.0
- */
-public interface IEJBModule extends IJ2EEModule {
-	/**
-	 * Returns a version number in the form "x.y.z".
-	 *
-	 * @return java.lang.String
-	 */
-	public String getEJBSpecificationVersion();
-}
\ 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 e533fc3..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IEnterpriseApplication.java
+++ /dev/null
@@ -1,67 +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;
-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>
- * @since 1.0
- */
-public interface IEnterpriseApplication {
-	/**
-	 * Returns a version number in the form "x.y.z".
-	 * 
-	 * @return the J2EE specification version
-	 */
-	public String getJ2EESpecificationVersion();
-
-	/**
-	 * Returns the modules contained within this EAR. The returned modules will
-	 * all be adaptable to IJ2EEModule.
-	 *
-	 * @return a possibly empty array of modules contained within this application
-	 */
-	public IModule[] getModules();
-
-	/**
-	 * Returns the URI of the given J2EE 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(IJ2EEModule module);
-
-	/**
-	 * Returns <code>true</code> if this EAR supports loose modules and <code>false</code>
-	 * otherwise.
-	 * 
-	 * @return returns <code>true</code> if this module contains loose modules, or
-	 *    <code>false</code> otherwise
-	 */
-	public boolean containsLooseModules();
-	
-	/**
-	 * Returns the location of the root of the application. This should
-	 * be an absolute path that is not workbench relative.
-	 * 
-	 * @return the absolute path to the root of this application
-	 */
-	public IPath getLocation();
-}
\ 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 41b7713..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IJ2EEModule.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.core;
-
-import org.eclipse.core.runtime.IPath;
-/**
- * An abstract 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>
- * @since 1.0
- */
-public interface IJ2EEModule {
-	/**
-	 * Returns a version number in the form "x.y.z".
-	 * 
-	 * @return the J2EE specification version
-	 */
-	public String getJ2EESpecificationVersion();
-
-	/**
-	 * Returns the location of the root of the module. This should
-	 * be an absolute path that is not workbench relative.
-	 * 
-	 * @return the absolute path to the root of this application
-	 */
-	public IPath getLocation();
-
-	/**
-	 * 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/ILooseArchive.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/ILooseArchive.java
deleted file mode 100644
index a4c1876..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/ILooseArchive.java
+++ /dev/null
@@ -1,54 +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 loose archive. Used to represent utility jars in J2EE modules.
- * <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 ILooseArchive {
-	/**
-	 * Returns the location of the root of the loose utility. This should
-	 * be an absolute path that is not workbench relative.
-	 * 
-	 * @return org.eclipse.core.runtime.IPath
-	 */
-	public IPath getLocation();
-
-	/**
-	 * Returns true if this is a binary (zipped) archive, 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 IPublishableResource, 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
-	 * IPublishableResources, 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/ILooseArchiveSupport.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/ILooseArchiveSupport.java
deleted file mode 100644
index 7a82709..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/ILooseArchiveSupport.java
+++ /dev/null
@@ -1,42 +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;
-/**
- * Used to represent loose archive support in a J2EE 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>
- * @since 1.0
- */
-public interface ILooseArchiveSupport {
-	/**
-	 * Return the loose archives that are contained within this enterprise
-	 * application. The returned modules will all be adaptable to ILooseArchive.
-	 *
-	 * @return a possibly empty array of modules contained within this application
-	 */
-	public IModule[] getLooseArchives();
-
-	/**
-	 * Returns the URI of the given loose archive within this
-	 * enterprise application.
-	 *
-	 * @param archive a loose archive
-	 * @return the URI of the given archive, or <code>null</code> if the URI could
-	 *    not be found
-	 */
-	public String getURI(ILooseArchive archive);
-}
\ 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 19ad3e8..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/IWebModule.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.core;
-/**
- * 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>
- * @since 1.0
- */
-public interface IWebModule extends IJ2EEModule {
-	/**
-	 * Returns a version number in the form "x.y.z".
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getServletSpecificationVersion();
-
-	/**
-	 * Returns a version number in the form "x.y.z".
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getJSPSpecificationVersion();
-
-	/**
-	 * Returns the context root of the module.
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getContextRoot();
-	
-	/**
-	 * Returns false if the files in this module are placed in the
-	 * correct structure for testing before publishing. Returns true
-	 * if the file system resources must be published before they will
-	 * work.
-	 * 
-	 * @return boolean
-	 */
-	public boolean isPublishRequired();
-}
\ 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 8eb1990..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>
- * @since 1.0
- */
-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 ae0ebc8..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>
- * @since 1.0
- */
-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/Servlet.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/Servlet.java
deleted file mode 100644
index 797e221..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>
- * @since 1.0
- */
-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 670c4cb..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 new Status(IStatus.OK, JavaServerPlugin.PLUGIN_ID, 0, "", null);
-	}
-
-	/**
-	 * @see RuntimeDelegate#setDefaults()
-	 */
-	public void setDefaults() {
-		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/GenericRuntimeTargetHandler.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/GenericRuntimeTargetHandler.java
deleted file mode 100644
index 5fd15f3..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/GenericRuntimeTargetHandler.java
+++ /dev/null
@@ -1,63 +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.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.launching.IVMInstall;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.jst.server.core.ClasspathRuntimeTargetHandler;
-
-import org.eclipse.wst.server.core.IRuntime;
-/**
- * 
- */
-public class GenericRuntimeTargetHandler extends ClasspathRuntimeTargetHandler {
-	/**
-	 * @see ClasspathRuntimeTargetHandler#getDelegateClasspathEntries(IRuntime, IProgressMonitor)
-	 */
-	public IClasspathEntry[] getDelegateClasspathEntries(IRuntime runtime, IProgressMonitor monitor) {
-		GenericRuntime genericRuntime = (GenericRuntime) runtime.getAdapter(GenericRuntime.class);
-		IVMInstall vmInstall = genericRuntime.getVMInstall();
-		if (vmInstall != null) {
-			String name = vmInstall.getName();
-			return new IClasspathEntry[] { JavaCore.newContainerEntry(new Path(JavaRuntime.JRE_CONTAINER).append("org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType").append(name)) };
-		}
-		return null;
-	}
-
-	/**
-	 * @see ClasspathRuntimeTargetHandler#getClasspathContainerLabel(IRuntime, String)
-	 */
-	public String getClasspathContainerLabel(IRuntime runtime, String id) {
-		return runtime.getRuntimeType().getName();
-	}
-
-	/** (non-Javadoc)
-	 * @see ClasspathRuntimeTargetHandler#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 0d77532..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/GenericRuntimeUtil.java
+++ /dev/null
@@ -1,43 +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.
- * 
- * @since 1.0
- */
-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 fd308e2..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/IGenericRuntime.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.internal;
-
-import org.eclipse.jdt.launching.IVMInstall;
-/**
- * @since 1.0
- */
-public interface IGenericRuntime {
-	/**
-	 * 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/internal/IGenericRuntimeWorkingCopy.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/IGenericRuntimeWorkingCopy.java
deleted file mode 100644
index 070727b..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;
-/**
- * @since 1.0
- */
-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/J2EEUtil.java b/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/J2EEUtil.java
deleted file mode 100644
index 5776860..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/J2EEUtil.java
+++ /dev/null
@@ -1,59 +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.wst.server.core.IModule;
-import org.eclipse.wst.server.core.ServerUtil;
-/**
- * Utility class for dealing with J2EE modules.
- * 
- * @since 1.0
- */
-public class J2EEUtil {
-	/**
-	 * Returns the enterprise applications that the module is contained within.
-	 * 
-	 * @param 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("j2ee.ear");
-		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;
-	}
-}
\ 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 dc1419b..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/JavaServerPlugin.java
+++ /dev/null
@@ -1,60 +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.*;
-/**
- * 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;
-
-	/**
-	 * 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;
-	}
-
-	/**
-	 * 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$
-	}
-}
\ 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 7ff7866..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/Messages.java
+++ /dev/null
@@ -1,25 +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;
-	
-	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 e365f11..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/Messages.properties
+++ /dev/null
@@ -1,15 +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.
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 fcdb825..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeClasspathContainer.java
+++ /dev/null
@@ -1,88 +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.jst.server.core.ClasspathRuntimeTargetHandler;
-
-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 ClasspathRuntimeTargetHandler delegate;
-	private IRuntime runtime;
-	
-	private String id;
-	
-	/**
-	 * Create a new runtime classpath container.
-	 * 
-	 * @param path
-	 * @param delegate
-	 * @param runtime
-	 * @param id
-	 */
-	public RuntimeClasspathContainer(IPath path, ClasspathRuntimeTargetHandler delegate, IRuntime runtime, String id) {
-		this.path = path;
-		this.delegate = delegate;
-		this.runtime = runtime;
-		this.id = id;
-	}
-
-	/** (non-Javadoc)
-	 * @see org.eclipse.jdt.core.IClasspathContainer#getClasspathEntries()
-	 */
-	public IClasspathEntry[] getClasspathEntries() {
-		IClasspathEntry[] entries = null;
-		if (delegate != null && runtime != null)
-			entries = delegate.resolveClasspathContainerImpl(runtime, id);
-
-		if (entries == null)
-			return new IClasspathEntry[0];
-		
-		return entries;
-	}
-
-	/** (non-Javadoc)
-	 * @see org.eclipse.jdt.core.IClasspathContainer#getDescription()
-	 */
-	public String getDescription() {
-		String s = delegate.getClasspathContainerLabel(runtime, id);
-		
-		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 cbb1d07..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/RuntimeClasspathContainerInitializer.java
+++ /dev/null
@@ -1,97 +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.jst.server.core.*;
-import org.eclipse.wst.server.core.IRuntime;
-import org.eclipse.wst.server.core.IRuntimeTargetHandler;
-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)) {
-				ClasspathRuntimeTargetHandler crth = null;
-				IRuntime runtime = null;
-				String id = "";
-				if (containerPath.segmentCount() > 2) {
-					IRuntimeTargetHandler handler = ServerCore.findRuntimeTargetHandler(containerPath.segment(1));
-					if (handler != null)
-						crth = (ClasspathRuntimeTargetHandler) handler.getAdapter(ClasspathRuntimeTargetHandler.class);
-					String runtimeId = containerPath.segment(2);
-					if (runtimeId != null)
-						runtime = ServerCore.findRuntime(runtimeId);
-					if (containerPath.segmentCount() > 3)
-						id = containerPath.segment(3);
-				}
-				RuntimeClasspathContainer container = new RuntimeClasspathContainer(containerPath, crth, runtime, id);
-				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)) {
-				ClasspathRuntimeTargetHandler crth = null;
-				IRuntime runtime = null;
-				String id = "";
-				if (containerPath.segmentCount() > 2) {
-					IRuntimeTargetHandler handler = ServerCore.findRuntimeTargetHandler(containerPath.segment(1));
-					if (handler != null) {
-						crth = (ClasspathRuntimeTargetHandler) handler.getAdapter(ClasspathRuntimeTargetHandler.class);
-					}
-					String runtimeId = containerPath.segment(2);
-					if (runtimeId != null)
-						runtime = ServerCore.findRuntime(runtimeId);
-					if (containerPath.segmentCount() > 3)
-						id = containerPath.segment(3);
-					crth.requestClasspathContainerUpdate(runtime, id, 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/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 af5ecb0..0000000
--- a/plugins/org.eclipse.jst.server.core/sjavacore/org/eclipse/jst/server/core/internal/cactus/CactusModuleArtifactAdapterDelegate.java
+++ /dev/null
@@ -1,147 +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.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";
-
-	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))
-						return types[i].getFullyQualifiedName();
-				}
-			}
-			return null;
-		} catch (Exception e) {
-			return null;
-		}
-	}
-
-	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("j2ee.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;
-	}
-}
\ 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.generic.core/.classpath b/plugins/org.eclipse.jst.server.generic.core/.classpath
deleted file mode 100644
index 065ac06..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.jst.server.generic.core/.cvsignore b/plugins/org.eclipse.jst.server.generic.core/.cvsignore
deleted file mode 100644
index 07d3079..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/.cvsignore
+++ /dev/null
@@ -1,6 +0,0 @@
-bin
-build.xml
-genericserver.jar
-org.eclipse.jst.server.generic.core_1.0.0.jar
-temp.folder
-*.settings
diff --git a/plugins/org.eclipse.jst.server.generic.core/.project b/plugins/org.eclipse.jst.server.generic.core/.project
deleted file mode 100644
index fe7ee06..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jst.server.generic.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.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.jst.server.generic.core/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.server.generic.core/META-INF/MANIFEST.MF
deleted file mode 100644
index e62106c..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,33 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.jst.server.generic.core; singleton:=true
-Bundle-Version: 1.0.0
-Bundle-ClassPath: genericserver.jar
-Bundle-Activator: org.eclipse.jst.server.generic.core.internal.CorePlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.jst.server.generic.core.internal,
- org.eclipse.jst.server.generic.internal.core.util,
- org.eclipse.jst.server.generic.internal.servertype.definition,
- org.eclipse.jst.server.generic.internal.servertype.definition.impl,
- org.eclipse.jst.server.generic.internal.servertype.definition.util,
- org.eclipse.jst.server.generic.internal.xml,
- org.eclipse.jst.server.generic.servertype.definition
-Require-Bundle: org.eclipse.ui,
- org.eclipse.core.runtime,
- org.eclipse.core.resources,
- org.eclipse.debug.core,
- org.eclipse.jdt.core,
- org.eclipse.jdt.launching;visibility:=reexport,
- org.eclipse.wst.server.core,
- org.eclipse.jst.server.core,
- org.eclipse.debug.ui,
- org.eclipse.ant.core,
- org.eclipse.ant.ui,
- org.eclipse.emf.common;visibility:=reexport,
- org.eclipse.emf.ecore,
- org.eclipse.emf.ecore.xmi,
- org.eclipse.ui.externaltools,
- org.eclipse.jdt.debug.ui
-Eclipse-AutoStart: true
diff --git a/plugins/org.eclipse.jst.server.generic.core/build.properties b/plugins/org.eclipse.jst.server.generic.core/build.properties
deleted file mode 100644
index 725eacd..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/build.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-source.genericserver.jar = src/
-output.genericserver.jar = bin/
-bin.includes = plugin.xml,\
-               genericserver.jar,\
-               servers/,\
-               plugin.properties,\
-               xsd/ServerTypeDefinitionSchema.xsd,\
-               META-INF/
-src.includes = servers/,\
-               src/,\
-               plugin.xml,\
-               plugin.properties,\
-               xsd/,\
-               schema/
diff --git a/plugins/org.eclipse.jst.server.generic.core/plugin.properties b/plugins/org.eclipse.jst.server.generic.core/plugin.properties
deleted file mode 100644
index adf77c1..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/plugin.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-pluginName= Generic Server Plugin
-providerName=Eclipse.org
-pluginDescription=Provides generic server tools with easy to develop meta data configuration files
-
-launchConfigurationTypeName=Generic Server
diff --git a/plugins/org.eclipse.jst.server.generic.core/plugin.xml b/plugins/org.eclipse.jst.server.generic.core/plugin.xml
deleted file mode 100644
index bcc5878..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/plugin.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-     <extension-point id="serverdefinition" name="Server definition" schema="schema/serverdefinition.exsd"/>
- <extension-point id="genericpublisher" name="Generic Publisher" schema="schema/genericpublisher.exsd"/>
-	
- <extension point="org.eclipse.wst.server.core.runtimeTargetHandlers">
-     <runtimeTargetHandler
-        id="org.eclipse.jst.server.generic.runtimeTarget"
-        runtimeTypeIds="org.eclipse.jst.server.generic.runtime.*"
-        class="org.eclipse.jst.server.generic.core.internal.GenericServerRuntimeTargetHandler"/>
-	</extension>
-
-   <extension point="org.eclipse.debug.core.launchConfigurationTypes">
-     <launchConfigurationType
-        id="org.eclipse.jst.server.generic.core.launchConfigurationType"
-        name="%launchConfigurationTypeName"
-        delegate="org.eclipse.jst.server.generic.core.internal.GenericServerLaunchConfigurationDelegate"
-        modes="run, debug"
-        sourceLocatorId="org.eclipse.jdt.launching.sourceLocator.JavaSourceLookupDirector"
-        sourcePathComputerId="org.eclipse.jst.server.generic.core.sourcePathComputer"/>
-  </extension>
-
-   <extension point="org.eclipse.debug.core.sourcePathComputers">
-     <sourcePathComputer
-        id="org.eclipse.jst.server.generic.core.sourcePathComputer"
-        class="org.eclipse.jst.server.generic.core.internal.GenericServerSourcePathComputerDelegate"/>
-   </extension>
- 
-   <extension point="org.eclipse.wst.server.core.launchableAdapters">
-      <launchableAdapter
-         class="org.eclipse.jst.server.generic.core.internal.GenericServerLaunchableAdapterDelegate"
-         id="org.eclipse.jst.server.generic.web"/>
-   </extension>
-   <extension point="org.eclipse.jst.server.generic.core.genericpublisher">
-      <genericpublisher
-            class="org.eclipse.jst.server.generic.core.internal.AntPublisher"
-            id="org.eclipse.jst.server.generic.antpublisher"/>
-   </extension>
-</plugin>
diff --git a/plugins/org.eclipse.jst.server.generic.core/schema/genericpublisher.exsd b/plugins/org.eclipse.jst.server.generic.core/schema/genericpublisher.exsd
deleted file mode 100644
index 3d25596..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/schema/genericpublisher.exsd
+++ /dev/null
@@ -1,109 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.jst.server.generic.core">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.jst.server.generic.core" id="genericpublisher" name="Generic Publisher"/>
-      </appInfo>
-      <documentation>
-         [Enter description of this extension point.]
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="genericpublisher"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="genericpublisher">
-      <complexType>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="class" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         [Enter the first release in which this extension point appears.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         [Enter extension point usage example here.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         [Enter API information here.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         [Enter information about supplied implementation of this extension point.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.jst.server.generic.core/schema/serverdefinition.exsd b/plugins/org.eclipse.jst.server.generic.core/schema/serverdefinition.exsd
deleted file mode 100644
index fe5e9ad..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/schema/serverdefinition.exsd
+++ /dev/null
@@ -1,114 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.jst.server.generic.core">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.jst.server.generic.core" id="serverdefinition" name="Server Definition"/>
-      </appInfo>
-      <documentation>
-         This extension point defines a new generic server plugin
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="serverdefinition" minOccurs="1" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="serverdefinition">
-      <complexType>
-         <sequence>
-         </sequence>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  server id
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="definitionfile" type="string" use="required">
-            <annotation>
-               <documentation>
-                  location of the generic server definition file
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="resource"/>
-               </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>
-         [Enter extension point usage example here.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         [Enter API information here.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         [Enter information about supplied implementation of this extension point.]
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/AntPublisher.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/AntPublisher.java
deleted file mode 100644
index 430ba14..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/AntPublisher.java
+++ /dev/null
@@ -1,253 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     Naci M. Dai - initial API and implementation
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-package org.eclipse.jst.server.generic.core.internal;
-
-import java.io.File;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-import org.eclipse.ant.internal.ui.IAntUIConstants;
-import org.eclipse.ant.internal.ui.launchConfigurations.IAntLaunchConfigurationConstants;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jdt.launching.IJavaLaunchConfigurationConstants;
-import org.eclipse.jst.server.generic.internal.core.util.FileUtil;
-import org.eclipse.jst.server.generic.servertype.definition.Module;
-import org.eclipse.jst.server.generic.servertype.definition.PublisherData;
-import org.eclipse.jst.server.core.IEJBModule;
-import org.eclipse.jst.server.core.IWebModule;
-import org.eclipse.ui.externaltools.internal.model.IExternalToolConstants;
-import org.eclipse.wst.server.core.IModuleArtifact;
-import org.osgi.framework.Bundle;
-/**
- * Ant based publisher.
- * All the properties defined in the server definition file are
- * passed into the ANT build file as properties.
- * In addition to the properties defined in the server definition
- * <I>module.dir</I>, <I>module.name,</I> and <I>server.publish.dir</I> are computed and passed to the 
- * definition file.
- * <ul>
- * <li>module.dir: includes the root of the module project file</li>
- * <li>module.name: the name of the module</li>
- * <li>server.publish.dir: the directory to put the deployment units</li>
- * </ul>
- *
- * @author Gorkem Ercan
- */
-
-public class AntPublisher extends GenericPublisher{
-
-    private static final String PROP_SERVER_PUBLISH_DIR = "server.publish.dir";//$NON-NLS-1$
-	private static final String PROP_MODULE_DIR = "module.dir";//$NON-NLS-1$
-	private static final String PROP_MODULE_NAME = "module.name";//$NON-NLS-1$
-	private static final String MODULE_PUBLISH_TARGET_PREFIX = "target.publish."; //$NON-NLS-1$
-    private static final String MODULE_UNPUBLISH_TARGET_PREFIX = "target.unpublish.";//$NON-NLS-1$
-    public static final String PUBLISHER_ID="org.eclipse.jst.server.generic.antpublisher"; //$NON-NLS-1$
-    private static final String DATA_NAME_BUILD_FILE="build.file";//$NON-NLS-1$
-
-    /* (non-Javadoc)
-	 * @see org.eclipse.wtp.server.core.model.IPublisher#publish(org.eclipse.wtp.server.core.resources.IModuleResource[], org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public IStatus[] publish(IModuleArtifact[] resource,
-			IProgressMonitor monitor){
-        
-        File file = computeBuildFile();
-        try{
-            runAnt(file.toString(),getPublishTargetsForModule(),getPublishProperties(),monitor);
-        }
-        catch(CoreException e){
-            IStatus s = new Status(IStatus.ERROR,CorePlugin.PLUGIN_ID,0,GenericServerCoreMessages.errorPublishAntpublisher,e);
-            CorePlugin.getDefault().getLog().log(s);
-            return new IStatus[] {s};
-        }
-		return null;
-	}
-
-
-    /**
-     * @return
-     */
-    private File computeBuildFile() {
-        Bundle bundle = Platform.getBundle(getServerRuntime().getServerTypeDefinition().getConfigurationElementNamespace());
-        File file = FileUtil.resolveFileFrom(bundle,getBuildFile());
-        return file;
-    }
-    
-   
-    /**
-     * @return
-     */
-    private String getPublishTargetsForModule() {
-    	return doGetTargets(MODULE_PUBLISH_TARGET_PREFIX+getModuleTypeId());
-    }
-
-    /**
-     * @return
-     */
-    private String getUnpublishTargetsForModule() {
-        return doGetTargets(MODULE_UNPUBLISH_TARGET_PREFIX+getModuleTypeId());
-    }
-    
-    /**
-     * @param dataname
-     * @return
-     */
-    private String doGetTargets(String dataname) {
-    	StringBuffer buffer = new StringBuffer();
-    	Iterator iterator = getServerRuntime().getServerTypeDefinition().getPublisher(PUBLISHER_ID).getPublisherdata().iterator();
-        while(iterator.hasNext()){
-            PublisherData data = (PublisherData)iterator.next();
-            if(dataname.equals(data.getDataname())) {
-                if(buffer.length()>0)
-                	buffer.append(",");//$NON-NLS-1$
-            	buffer.append(data.getDatavalue());
-            }   
-        }
-        return buffer.toString();
-    }
-
-    private String getModuleTypeId(){
-        return getModule()[0].getModuleType().getId();
-    }
-    
-	private String getBuildFile()
-    {
-        Iterator iterator = getServerRuntime().getServerTypeDefinition().getPublisher(PUBLISHER_ID).getPublisherdata().iterator();
-        while(iterator.hasNext())
-        {
-            PublisherData data = (PublisherData)iterator.next();
-            if(DATA_NAME_BUILD_FILE.equals(data.getDataname()))
-                return getServerRuntime().getServerTypeDefinition().getResolver().resolveProperties(data.getDatavalue());
-        }
-        return null;
-    }
-	private Map getPublishProperties()
-	{
-        Map props = new HashMap();
-        
-        // pass all properties to build file.
-        Map properties = getServerRuntime().getServerTypeDefinition().getResolver().getPropertyValues();
-        Iterator propertyIterator = properties.keySet().iterator();
-        while(propertyIterator.hasNext())
-        {
-            String property = (String)propertyIterator.next();
-            props.put(property,properties.get(property));
-        }
-        
-        Module module =  getServerRuntime().getServerTypeDefinition().getModule(getModuleTypeId());
-		String modDir = module.getPublishDir();
-		modDir = getServerRuntime().getServerTypeDefinition().getResolver().resolveProperties(modDir);
-
-		IWebModule webModule = (IWebModule)getModule()[0].getAdapter(IWebModule.class);
-        IEJBModule ejbModule = (IEJBModule)getModule()[0].getAdapter(IEJBModule.class);
-		String moduleName="unknownmodule";//$NON-NLS-1$
-        String moduleDir="";//$NON-NLS-1$
-        if(webModule!=null){    
-            moduleName = this.guessModuleName(webModule);
-            moduleDir = webModule.getLocation().toString();
-        }
-        if(ejbModule!=null){  
-            moduleName = getModule()[0].getName();
-            moduleDir= ejbModule.getLocation().toString();
-        }
-		props.put(PROP_MODULE_NAME,moduleName);
-		props.put(PROP_MODULE_DIR,moduleDir);
-		props.put(PROP_SERVER_PUBLISH_DIR,modDir);
-		return props;
-	}
-	/**
-	 * @param module2
-	 * @param webModule
-	 * @return
-	 */
-	private String guessModuleName(IWebModule webModule) {
-		String moduleName = getModule()[0].getName(); 
-		//Default to project name but not a good guess
-		//may have blanks etc.
-		
-		// A better choice is to use the context root
-		// For wars most appservers use the module name
-		// as the context root
-		String contextRoot = webModule.getContextRoot();
-		if(contextRoot.charAt(0) == '/')
-			moduleName = contextRoot.substring(1);
-		return moduleName;
-	}
-	private void runAnt(String buildFile,String targets,Map properties ,IProgressMonitor monitor)throws CoreException{
-		ILaunchManager launchManager = DebugPlugin.getDefault().getLaunchManager();
-		ILaunchConfigurationType type = launchManager.getLaunchConfigurationType(IAntLaunchConfigurationConstants.ID_ANT_LAUNCH_CONFIGURATION_TYPE);
-
-		ILaunchConfigurationWorkingCopy wc= type.newInstance(null,properties.get(PROP_MODULE_NAME)+" module publisher");
-		wc.setContainer(null);
-		wc.setAttribute(IExternalToolConstants.ATTR_LOCATION, buildFile);
-		wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_CLASSPATH_PROVIDER,"org.eclipse.ant.ui.AntClasspathProvider");
-		wc.setAttribute(IAntLaunchConfigurationConstants.ATTR_ANT_TARGETS,targets);
-		wc.setAttribute(IAntLaunchConfigurationConstants.ATTR_ANT_PROPERTIES,properties);
-		wc.setAttribute(IDebugUIConstants.ATTR_LAUNCH_IN_BACKGROUND,false);
-		wc.setAttribute(IDebugUIConstants.ATTR_CAPTURE_IN_CONSOLE,true);
-		wc.setAttribute(IDebugUIConstants.ATTR_PRIVATE,true);
-		
-		wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_SOURCE_PATH_PROVIDER, "org.eclipse.ant.ui.AntClasspathProvider"); 
-		wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_VM_INSTALL_NAME,getServerRuntime().getVMInstall().getName());
-		wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_VM_INSTALL_TYPE,getServerRuntime().getVMInstall().getVMInstallType().getId());
-		wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_MAIN_TYPE_NAME, "org.eclipse.ant.internal.ui.antsupport.InternalAntRunner");
-		wc.setAttribute(DebugPlugin.ATTR_PROCESS_FACTORY_ID, IAntUIConstants.REMOTE_ANT_PROCESS_FACTORY_ID);
-		
-		ILaunchConfiguration launchConfig = wc.doSave();
-        launchConfig.launch("run",monitor);
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jst.server.generic.internal.core.GenericPublisher#unpublish(org.eclipse.wst.server.core.IModule, org.eclipse.core.runtime.IProgressMonitor)
-     */
-    public IStatus[] unpublish(IProgressMonitor monitor) {
-        File file = computeBuildFile();
-        try {
-            runAnt(file.toString(),getUnpublishTargetsForModule(),getPublishProperties(),monitor);
-        } catch (CoreException e) {
-            IStatus s = new Status(IStatus.ERROR,CorePlugin.PLUGIN_ID,0,GenericServerCoreMessages.errorRemoveModuleAntpublisher,e);
-            return new IStatus[] {s};
- 
-        }
-        return null;
-    }
-
-
-
-}
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/CorePlugin.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/CorePlugin.java
deleted file mode 100644
index 1750ec5..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/CorePlugin.java
+++ /dev/null
@@ -1,129 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     Gorkem Ercan - initial API and implementation
- *     Naci M. Dai
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-package org.eclipse.jst.server.generic.core.internal;
-
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.ui.plugin.*;
-import org.osgi.framework.BundleContext;
-import java.io.IOException;
-import java.net.URL;
-import java.util.*;
-
-/**
- * The main plugin class to be used in the desktop.
- * 
- * @author Gorkem Ercan
- */
-public class CorePlugin extends AbstractUIPlugin {
-
-	public static final String PLUGIN_ID = "org.eclipse.jst.server.generic.core";
-
-	//The shared instance.
-	private static CorePlugin plugin;
-	//Resource bundle.
-	private ResourceBundle resourceBundle;
-	private ServerTypeDefinitionManager fServerTypeDefinitionManager;
-	/**
-	 * The constructor.
-	 */
-	public CorePlugin() {
-		super();
-		plugin = this;
-		try {
-			resourceBundle = ResourceBundle.getBundle("org.eclipse.jst.server.generic.core.CorePluginResources");
-		} catch (MissingResourceException x) {
-			resourceBundle = null;
-		}
-	}
-
-	/**
-	 * This method is called upon plug-in activation
-	 */
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-	}
-
-	/**
-	 * This method is called when the plug-in is stopped
-	 */
-	public void stop(BundleContext context) throws Exception {
-		super.stop(context);
-	}
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static CorePlugin getDefault() {
-		return plugin;
-	}
-
-	/**
-	 * Returns the string from the plugin's resource bundle,
-	 * or 'key' if not found.
-	 */
-	public static String getResourceString(String key) {
-		ResourceBundle bundle = CorePlugin.getDefault().getResourceBundle();
-		try {
-			return (bundle != null) ? bundle.getString(key) : key;
-		} catch (MissingResourceException e) {
-			return key;
-		}
-	}
-
-	/**
-	 * Returns the plugin's resource bundle,
-	 */
-	public ResourceBundle getResourceBundle() {
-		return resourceBundle;
-	}
-	/**
-	 * 
-	 * @return
-	 */
-	public ServerTypeDefinitionManager getServerTypeDefinitionManager()
-	{
-		if(fServerTypeDefinitionManager==null)
-			fServerTypeDefinitionManager = new ServerTypeDefinitionManager(getInstallUrl());
-		return fServerTypeDefinitionManager;
-	}
-	
-	private URL getInstallUrl()
-	{
-		try {
-			return Platform.resolve(this.getBundle().getEntry("/"));
-		} catch (IOException e) {
-			return null;
-		}	
-	}
-	
-	
-}
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericPublisher.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericPublisher.java
deleted file mode 100644
index dd59a15..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericPublisher.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package org.eclipse.jst.server.generic.core.internal;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.IModuleArtifact;
-
-/**
- * The abstract publisher. This is intended to be subclassed by
- * clients implementing the genericpublisher extension point.
- *
- * @author Gorkem Ercan
- */
-public abstract class GenericPublisher 
-{
-    
-    private IModule[] fModule;
-    private GenericServerRuntime fServerRuntime;
-    
-    protected void initialize(IModule[] module, GenericServerRuntime runtime)
-    {
-        fModule = module;
-        fServerRuntime = runtime;
-    }
-   /**
-    * Called by the generic server implementation when a module is 
-    * removed form the server instance. 
-    * Subclasses may extend this method to perform their own module removal
-    * 
-    * @param module
-    * @param monitor
-    * @return
-    */ 
-   public abstract IStatus[] unpublish(IProgressMonitor monitor);
-    
-    /**
-     * Called by the generic server implementation when a publish module 
-     * event occurs. 
-     * Subclasses may extend this method to perform their own publishing
-     * 
-     * @param resource
-     * @param monitor
-     * @return
-     */
-    public abstract IStatus[] publish(IModuleArtifact[] resource,
-            IProgressMonitor monitor);
-   
-    public IModule[] getModule() {
-        return fModule;
-    }
-
-    public GenericServerRuntime getServerRuntime() {
-        return fServerRuntime;
-    }
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServer.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServer.java
deleted file mode 100644
index 6370a32..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServer.java
+++ /dev/null
@@ -1,313 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     Gorkem Ercan - initial API and implementation
- *     Naci M. Dai
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-package org.eclipse.jst.server.generic.core.internal;
-
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jst.server.generic.servertype.definition.Module;
-import org.eclipse.jst.server.generic.servertype.definition.Port;
-import org.eclipse.jst.server.generic.servertype.definition.ServerRuntime;
-import org.eclipse.jst.server.core.IEJBModule;
-import org.eclipse.jst.server.core.IEnterpriseApplication;
-import org.eclipse.jst.server.core.IWebModule;
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.ServerUtil;
-import org.eclipse.wst.server.core.internal.ServerMonitorManager;
-import org.eclipse.wst.server.core.model.IURLProvider;
-import org.eclipse.wst.server.core.model.ServerDelegate;
-import org.eclipse.wst.server.core.ServerPort;
-
-/**
- * Generic XML based server implementation.
- * 
- * @author Gorkem Ercan
- */
-public class GenericServer extends ServerDelegate implements IURLProvider {
-
-    private static final String ATTR_GENERIC_SERVER_MODULES = "Generic_Server_Modules_List";
-    private ServerRuntime fServerDefinition;
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.server.core.model.IServerDelegate#publishStart(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public IStatus publishStart(IProgressMonitor monitor) {
-	    if(getModules().length<1)
-	        return new Status(IStatus.CANCEL,CorePlugin.PLUGIN_ID,0,GenericServerCoreMessages.cancelNoPublish,null);
-		return new Status(IStatus.OK, CorePlugin.PLUGIN_ID, 0, "PublishingStarted", null);
-	}
-
-
-	public IStatus canModifyModules(IModule[] add, IModule[] remove) {
-		Iterator iterator = getServerDefinition().getModule().iterator();
-       
-        while(iterator.hasNext())   {
-	        Module module = (Module)iterator.next();
-	        for (int i = 0; i < add.length; i++) {
-                if(add[i].getModuleType().getId().equals(module.getType()))
-                    return new Status(IStatus.OK, CorePlugin.PLUGIN_ID, 0, "CanModifyModules", null);
-            }
-	    }
-		return new Status(IStatus.ERROR, CorePlugin.PLUGIN_ID, 0, GenericServerCoreMessages.moduleNotCompatible, null);
-	}
-	
-	private String createModuleId(IModule module)
-	{
-	    return module.getProject().getName()+":"+module.getId();
-	}
-    /* (non-Javadoc)
-     * @see org.eclipse.wst.server.core.model.ServerDelegate#modifyModules(org.eclipse.wst.server.core.IModule[], org.eclipse.wst.server.core.IModule[], org.eclipse.core.runtime.IProgressMonitor)
-     */
-    public void modifyModules(IModule[] add, IModule[] remove, IProgressMonitor monitor) throws CoreException {
-      
-        List modules = this.getAttribute(ATTR_GENERIC_SERVER_MODULES,(List)null);
-        
-        if(add!=null&& add.length>0)
-        {
-            if(modules==null) {
-               modules=new ArrayList(add.length);
-            }
-            for (int i = 0; i < add.length; i++) {
-               String modlId = createModuleId(add[i]);
-               if(modules.contains(modlId)==false)
-                    modules.add(modlId);
-            }
-        }
-        if(remove!=null && remove.length>0 && modules!=null)
-        {
-            for (int i = 0; i < remove.length; i++) {
-                modules.remove(createModuleId(remove[i]));
-             }
-        }
-        if(modules!=null)    
-            setAttribute(ATTR_GENERIC_SERVER_MODULES,modules);
-        
-    }
-
-    
-    
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.server.core.model.IServerDelegate#getModules()
-	 */
-	public org.eclipse.wst.server.core.IModule[] getModules() {
-		List modules = getAttribute(ATTR_GENERIC_SERVER_MODULES,(List)null);
-		List imodules = new ArrayList();
-		Iterator iterator = modules.iterator();
-		while(iterator.hasNext())
-		{
-		    String moduleId = (String)iterator.next();
-		    int sep = moduleId.indexOf(":");
-		    IProject project =ResourcesPlugin.getWorkspace().getRoot().getProject(moduleId.substring(0,sep));
-		    IModule[] ms = ServerUtil.getModules(project);
-		    for (int i = 0; i < ms.length; i++) {
-                if(ms[i].getId().equals(moduleId.substring(sep+1)))
-                	imodules.add(ms[i]);
-            }
-	
-		}
-		if(modules!= null)
-		    return (IModule[])imodules.toArray(new IModule[imodules.size()]);
-		return new IModule[0];
-	}
-
-
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.server.core.model.IServerDelegate#getChildModules(org.eclipse.wst.server.core.model.IModule[])
-	 */
-	public IModule[] getChildModules(IModule[] module) {
-		return new IModule[0];
-	}
-
-	/**
-	 * @return
-	 */
-	private Map getServerInstanceProperties() {
-		Map runtimeProperties =getRuntimeDelegate().getServerInstanceProperties();
-		Map serverProperties = getServerInstancePropertiesImpl();
-		Map instanceProperties = new HashMap(runtimeProperties.size()+serverProperties.size());
-		instanceProperties.putAll(runtimeProperties);
-		instanceProperties.putAll(serverProperties);
-		return instanceProperties;
-	}
-	
- 	
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.wst.server.core.model.IMonitorableServer#getServerPorts()
-	 */
-	public org.eclipse.wst.server.core.ServerPort[] getServerPorts() {
-		List ports = new ArrayList();
-		Iterator pIter = this.getServerDefinition().getPort().iterator();
-		while (pIter.hasNext()) {
-			Port element = (Port) pIter.next();
-			int port = Integer.parseInt(getServerDefinition().getResolver().resolveProperties(element.getNo()));
-			ports.add(new ServerPort("server", element.getName(), port, element.getProtocol()));		
-		}
-	
-		return (org.eclipse.wst.server.core.ServerPort[])ports.toArray(new org.eclipse.wst.server.core.ServerPort[ports.size()]);
-	}
-
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wtp.server.core.model.IURLProvider#getModuleRootURL(org.eclipse.wtp.server.core.model.IModule)
-	 */
-	public URL getModuleRootURL(IModule module) {
-
-		try {			
-            if (module == null || module.getAdapter(IWebModule.class)==null )
-				return null;
-
-			String url = "http://localhost";
-			int port = 0;
-			
-			port = getHttpPort();
-			port =ServerMonitorManager.getInstance().getMonitoredPort(getServer(), port, "web");
-			if (port != 80)
-				url += ":" + port;
-
-			url += "/"+module.getName();
-
-			if (!url.endsWith("/"))
-				url += "/";
-
-			return new URL(url);
-		} catch (Exception e) {
-			Trace.trace("Could not get root URL", e);
-			return null;
-		}
-
-	}
-
-	/**
-	 * @return
-	 */
-	protected int getHttpPort() {
-		int port=-1;
-		Iterator pIter = this.getServerDefinition().getPort().iterator();
-		while (pIter.hasNext()) {
-			Port aPort = (Port) pIter.next();
-			if(port== -1)
-				port = Integer.parseInt(getServerDefinition().getResolver().resolveProperties(aPort.getNo()));
-			else if( "http".equals(aPort.getProtocol() ) )
-				port = Integer.parseInt(aPort.getNo());	
-		}
-		if( port == -1)
-			port = 8080;
-		return port;
-	}
-
-    public ServerRuntime getServerDefinition() {
-    	if (fServerDefinition == null)
-    		fServerDefinition = CorePlugin.getDefault()
-    				.getServerTypeDefinitionManager()
-    				.getServerRuntimeDefinition(getRuntimeDelegate().getServerDefinitionId(),
-    								getServerInstanceProperties());
-    	return fServerDefinition;
-    }
-
-    private GenericServerRuntime getRuntimeDelegate()
-    {
-       return (GenericServerRuntime)getServer().getRuntime().getAdapter(GenericServerRuntime.class);
-    }
-
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.wst.server.core.model.ServerDelegate#getRootModules(org.eclipse.wst.server.core.IModule)
-     */
-    public IModule[] getRootModules(IModule module) throws CoreException {
-
-        String type = module.getModuleType().getId();
-
-        if (type.equals("j2ee.ejb")) {
-            IEJBModule ejbModule = (IEJBModule) module.getAdapter(IEJBModule.class);
-            if (ejbModule != null) {
-                IStatus status = canModifyModules(new IModule[] { module },
-                        null);
-                if (status == null || !status.isOK())
-                    throw new CoreException(status);
-                return new IModule[] { module };
-            }
-        }
-
-        if (type.equals("j2ee.ear")) {
-
-            IEnterpriseApplication enterpriseApplication = (IEnterpriseApplication) module.getAdapter(IEnterpriseApplication.class);
-            if (enterpriseApplication != null) {
-                IStatus status = canModifyModules(new IModule[] { module },
-                        null);
-                if (status == null || !status.isOK())
-                    throw new CoreException(status);
-                return new IModule[] { module };
-            }
-        }
-        
-        if (type.equals("j2ee.web")) {
-
-            IWebModule webModule = (IWebModule) module.getAdapter(IWebModule.class);
-            if (webModule != null) {
-                IStatus status = canModifyModules(new IModule[] { module },
-                        null);
-                if (status == null || !status.isOK())
-                    throw new CoreException(status);
-                return new IModule[] { module };
-            }
-        }
-
-        return null;
-    }
-
-    public Map getServerInstancePropertiesImpl() {
- 		return getAttribute(GenericServerRuntime.SERVER_INSTANCE_PROPERTIES, new HashMap());
- 	}
- 	
- 	public void setServerInstanceProperties(Map map) {
- 		setAttribute(GenericServerRuntime.SERVER_INSTANCE_PROPERTIES, map);
- 	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerBehaviour.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerBehaviour.java
deleted file mode 100644
index 7e69a29..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerBehaviour.java
+++ /dev/null
@@ -1,448 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     Gorkem Ercan - initial API and implementation
- *     Naci M. Dai
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-package org.eclipse.jst.server.generic.core.internal;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jdt.launching.IJavaLaunchConfigurationConstants;
-import org.eclipse.jdt.launching.IRuntimeClasspathEntry;
-import org.eclipse.jdt.launching.IVMInstall;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.jst.server.generic.servertype.definition.ArchiveType;
-import org.eclipse.jst.server.generic.servertype.definition.Classpath;
-import org.eclipse.jst.server.generic.servertype.definition.Module;
-import org.eclipse.jst.server.generic.servertype.definition.ServerRuntime;
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.ServerPort;
-import org.eclipse.wst.server.core.model.ServerBehaviourDelegate;
-import org.eclipse.wst.server.core.model.ServerDelegate;
-import org.eclipse.wst.server.core.util.SocketUtil;
-
-/**
- * Server behaviour delegate implementation for generic server.
- *
- * @author Gorkem Ercan
- */
-public class GenericServerBehaviour extends ServerBehaviourDelegate {
-	
-	private static final String ATTR_STOP = "stop-server";
-    
-	// the thread used to ping the server to check for startup
-	protected transient PingThread ping = null;
-    protected transient IDebugEventSetListener processListener;
-    protected transient IProcess process;
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.wst.server.core.model.ServerBehaviourDelegate#publishServer(org.eclipse.core.runtime.IProgressMonitor)
-     */
-    public void publishServer(int kind, IProgressMonitor monitor) throws CoreException {
-        // do nothing
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.wst.server.core.model.ServerBehaviourDelegate#publishModule(org.eclipse.wst.server.core.IModule[], org.eclipse.wst.server.core.IModule, org.eclipse.core.runtime.IProgressMonitor)
-     */
-    public void publishModule(int kind, int deltaKind, IModule[] module,
-            IProgressMonitor monitor) throws CoreException {
- 
-        if(REMOVED == deltaKind){
-            removeFromServer(module,monitor);
-        }
-        else{
-            Module m = getServerDefinition().getModule(module[0].getModuleType().getId());
-            String publisherId = m.getPublisherReference();
-            GenericPublisher publisher = PublishManager.getPublisher(publisherId);
-            if(publisher==null){
-                IStatus status = new Status(IStatus.ERROR,CorePlugin.PLUGIN_ID,0,"Unable to create publisher",null);
-                throw new CoreException(status);
-            }
-            publisher.initialize(module,(GenericServerRuntime)getRuntimeDelegate());
-            IStatus[] status= publisher.publish(null,monitor);
-            if(status==null)
-                setModulePublishState(module, IServer.PUBLISH_STATE_NONE);
-        }
-    }
-
-    private void removeFromServer(IModule[] module, IProgressMonitor monitor) throws CoreException
-    {
-        Module m = getServerDefinition().getModule(module[0].getModuleType().getId());
-        String publisherId = m.getPublisherReference();
-        GenericPublisher publisher = PublishManager.getPublisher(publisherId);  
-        if(publisher==null){
-            IStatus status = new Status(IStatus.ERROR,CorePlugin.PLUGIN_ID,0,"Unable to create publisher to remove module",null);
-            throw new CoreException(status);
-        }
-        publisher.initialize(module,(GenericServerRuntime)getRuntimeDelegate());
-        publisher.unpublish(monitor);
-    }
-    
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.wst.server.core.model.ServerBehaviourDelegate#stop(boolean)
-     */
-    public void stop(boolean force) {
-		if (force) {
-			terminate();
-			return;
-		}
-
-		int state = getServer().getServerState();
-		if (state == IServer.STATE_STOPPED)
-			return;
-		else if (state == IServer.STATE_STARTING || state == IServer.STATE_STOPPING) {
-			terminate();
-			return;
-		}
-
-		try {
-			Trace.trace(Trace.FINEST, "Stopping Server");
-			if (state != IServer.STATE_STOPPED)
-				setServerState(IServer.STATE_STOPPING);
-			ILaunchManager mgr = DebugPlugin.getDefault().getLaunchManager();
-
-			ILaunchConfigurationType type =
-				mgr.getLaunchConfigurationType(
-					IJavaLaunchConfigurationConstants.ID_JAVA_APPLICATION);
-
-			String launchName = "GenericServerStopper";
-			String uniqueLaunchName =
-				mgr.generateUniqueLaunchConfigurationNameFrom(launchName);
-			ILaunchConfiguration conf = null;
-
-			ILaunchConfiguration[] lch = mgr.getLaunchConfigurations(type);
-			for (int i = 0; i < lch.length; i++) {
-				if (launchName.equals(lch[i].getName())) {
-					conf = lch[i];
-					break;
-				}
-			}
-
-			ILaunchConfigurationWorkingCopy wc = null;
-			if (conf != null) {
-				wc = conf.getWorkingCopy();
-			} else {
-				wc = type.newInstance(null, uniqueLaunchName);
-			}
-			//To stop from appearing in history lists
-			wc.setAttribute(IDebugUIConstants.ATTR_PRIVATE, true);			
-	
-			wc.setAttribute(
-					IJavaLaunchConfigurationConstants.ATTR_MAIN_TYPE_NAME,
-					getServerDefinition().getResolver().resolveProperties(this.getServerDefinition().getStop().getMainClass()));
-
-			GenericServerRuntime runtime = (GenericServerRuntime) getRuntimeDelegate();
-
-			IVMInstall vmInstall = runtime.getVMInstall();
-			wc.setAttribute(
-					IJavaLaunchConfigurationConstants.ATTR_VM_INSTALL_TYPE, runtime
-							.getVMInstallTypeId());
-			wc.setAttribute(
-					IJavaLaunchConfigurationConstants.ATTR_VM_INSTALL_NAME,
-					vmInstall.getName());
-
-			setupLaunchClasspath(wc, vmInstall, getStopClasspath());
-
-			wc.setAttribute(
-					IJavaLaunchConfigurationConstants.ATTR_WORKING_DIRECTORY,
-					getServerDefinition().getResolver().resolveProperties(getServerDefinition().getStop().getWorkingDirectory()));
-			wc.setAttribute(
-					IJavaLaunchConfigurationConstants.ATTR_PROGRAM_ARGUMENTS,
-					getServerDefinition().getResolver().resolveProperties(getServerDefinition().getStop().getProgramArguments()));
-			wc.setAttribute(
-					IJavaLaunchConfigurationConstants.ATTR_VM_ARGUMENTS,
-					getServerDefinition().getResolver().resolveProperties(getServerDefinition().getStop().getVmParameters()));				
-			wc.setAttribute(ATTR_STOP, "true");
-			wc.launch(ILaunchManager.RUN_MODE, new NullProgressMonitor());
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error stopping Server", e);
-		}
-	
-
-    }
-
-    public String getStartClassName() {
-    	return getServerDefinition().getResolver().resolveProperties(getServerDefinition().getStart().getMainClass());
-    }
-
-    public ServerRuntime getServerDefinition() {
-        GenericServer server = (GenericServer)getServer().getAdapter(ServerDelegate.class);
-        return server.getServerDefinition();
-    }
-    
-    protected GenericServerRuntime getRuntimeDelegate()
-    {
-       return (GenericServerRuntime)getServer().getRuntime().getAdapter(GenericServerRuntime.class);
-    }
-
-
-
-    private List getStartClasspath() {
-    	String cpRef = getServerDefinition().getStart().getClasspathReference();
-    	return serverClasspath(cpRef);
-    }
-
-    /**
-     * @param cpRef
-     * @return
-     */
-    protected List serverClasspath(String cpRef) {
-    	Classpath classpath = getServerDefinition().getClasspath(cpRef);
-    	
-        List cpEntryList = new ArrayList(classpath.getArchive().size());
-        Iterator iterator= classpath.getArchive().iterator();
-        while(iterator.hasNext())
-        {
-        	ArchiveType archive = (ArchiveType)iterator.next();
-        	String cpath = getServerDefinition().getResolver().resolveProperties(archive.getPath());
-    	
-    			cpEntryList.add(JavaRuntime.newArchiveRuntimeClasspathEntry(
-    					new Path(cpath)));
-         }
-    	return cpEntryList;
-    }
-
-    /**
-     * @param wc
-     * @param vmInstall
-     */
-    protected void setupLaunchClasspath(ILaunchConfigurationWorkingCopy wc, IVMInstall vmInstall, List cp) {
-		//merge existing classpath with server classpath
-		try {
-			IRuntimeClasspathEntry[] existingCps = JavaRuntime.computeUnresolvedRuntimeClasspath(wc);
-			for (int i = 0; i < existingCps.length; i++) {
-				if(cp.contains(existingCps[i])==false){ 
-					cp.add(existingCps[i]);
-				}
-			}
-		} catch (CoreException e) {
-			// ignore
-		}
-		
-    	wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_CLASSPATH, convertCPEntryToMemento(cp));
-    	wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_DEFAULT_CLASSPATH,false);
-    }
-
-	private List convertCPEntryToMemento(List cpEntryList)
-	{
-		List list = new ArrayList(cpEntryList.size());
-		Iterator iterator = cpEntryList.iterator();
-		while(iterator.hasNext())
-		{
-			IRuntimeClasspathEntry entry = (IRuntimeClasspathEntry)iterator.next();
-			try {
-				list.add(entry.getMemento());
-			} catch (CoreException e) {
-				// ignore
-			}
-		}
-		return list;
-	}
-
-    private String getWorkingDirectory() {
-    	return getServerDefinition().getResolver().resolveProperties(getServerDefinition().getStart().getWorkingDirectory());
-    }
-
-    private String getProgramArguments() {
-    	return getServerDefinition().getResolver().resolveProperties(getServerDefinition().getStart().getProgramArguments());
-    }
-
-    private String getVmArguments() {
-    	return getServerDefinition().getResolver().resolveProperties(getServerDefinition().getStart().getVmParameters());
-    }
-
-    public void setupLaunchConfiguration(
-            ILaunchConfigurationWorkingCopy workingCopy,
-            IProgressMonitor monitor) throws CoreException {
-
-
-        workingCopy.setAttribute(
-                IJavaLaunchConfigurationConstants.ATTR_MAIN_TYPE_NAME,
-                getStartClassName());
-
-        GenericServerRuntime runtime = (GenericServerRuntime) getRuntimeDelegate();
-
-        IVMInstall vmInstall = runtime.getVMInstall();
-        workingCopy.setAttribute(
-                IJavaLaunchConfigurationConstants.ATTR_VM_INSTALL_TYPE, runtime
-                        .getVMInstallTypeId());
-        workingCopy.setAttribute(
-                IJavaLaunchConfigurationConstants.ATTR_VM_INSTALL_NAME,
-                vmInstall.getName());
-
-        setupLaunchClasspath(workingCopy, vmInstall, getStartClasspath());
-
-
-        workingCopy.setAttribute(
-                IJavaLaunchConfigurationConstants.ATTR_WORKING_DIRECTORY,
-                getWorkingDirectory());
-        
-        String existingProgArgs  = workingCopy.getAttribute(IJavaLaunchConfigurationConstants.ATTR_PROGRAM_ARGUMENTS, (String)null);
-        String serverProgArgs =  getProgramArguments();
-        if(existingProgArgs==null || existingProgArgs.indexOf(serverProgArgs)<0) {
-            workingCopy.setAttribute(IJavaLaunchConfigurationConstants.ATTR_PROGRAM_ARGUMENTS,serverProgArgs);
-        }
-        String existingVMArgs = workingCopy.getAttribute(IJavaLaunchConfigurationConstants.ATTR_VM_ARGUMENTS,(String)null);
-        String serverVMArgs= getVmArguments();
-        if(existingVMArgs==null || existingVMArgs.indexOf(serverVMArgs)<0) {
-            workingCopy.setAttribute(IJavaLaunchConfigurationConstants.ATTR_VM_ARGUMENTS,serverVMArgs);
-        }
-    }
-    /**
-    	 * Setup for starting the server.
-    	 * 
-    	 * @param launch ILaunch
-    	 * @param launchMode String
-    	 * @param monitor IProgressMonitor
-    	 */
-    	protected void setupLaunch(ILaunch launch, String launchMode, IProgressMonitor monitor) throws CoreException {
-    		if ("true".equals(launch.getLaunchConfiguration().getAttribute(ATTR_STOP, "false")))
-    			return;
-    //		IStatus status = getRuntime().validate();
-    //		if (status != null && !status.isOK())
-    //			throw new CoreException(status);
-    
-    	
-    		ServerPort[] ports = getServer().getServerPorts(null);
-    		ServerPort sp = null;
-    		for(int i=0;i<ports.length;i++){
-    			sp= ports[i];
-    			if (SocketUtil.isPortInUse(ports[i].getPort(), 5))
-    				throw new CoreException(new Status(IStatus.ERROR, CorePlugin.PLUGIN_ID, 0, GenericServerCoreMessages.bind(GenericServerCoreMessages.errorPortInUse,Integer.toString(sp.getPort()),sp.getName()),null));
-    		}
-    		
-    		setServerState(IServer.STATE_STARTING);
-			setMode(launchMode);
-			
-    		// ping server to check for startup
-    		try {
-    			String url = "http://localhost";
-    			int port = sp.getPort();
-    			if (port != 80)
-    				url += ":" + port;
-    			ping = new PingThread(getServer(), url, 50, this);
-    		} catch (Exception e) {
-    			Trace.trace(Trace.SEVERE, "Can't ping for server startup.");
-    		}
-    	}
-
-    protected void setProcess(final IProcess newProcess) {
-    	if (process != null)
-    		return;
-    
-    	process = newProcess;
-    	processListener = new IDebugEventSetListener() {
-    		public void handleDebugEvents(DebugEvent[] events) {
-    			if (events != null) {
-    				int size = events.length;
-    				for (int i = 0; i < size; i++) {
-    					if (process.equals(events[i].getSource()) && events[i].getKind() == DebugEvent.TERMINATE) {
-    						DebugPlugin.getDefault().removeDebugEventListener(this);
-    						stopImpl();
-    					}
-    				}
-    			}
-    		}
-    	};
-    	DebugPlugin.getDefault().addDebugEventListener(processListener);
-    }
-
-    protected void stopImpl() {
-    	if (ping != null) {
-    		ping.stop();
-    		ping = null;
-    	}
-    	if (process != null) {
-    		process = null;
-    		DebugPlugin.getDefault().removeDebugEventListener(processListener);
-    		processListener = null;
-    	}
-    	setServerState(IServer.STATE_STOPPED);
-    }
-
-    /**
-     * Terminates the server.
-     */
-    private void terminate() {
-    	if (getServer().getServerState() == IServer.STATE_STOPPED)
-    		return;
-    
-    	try {
-    		setServerState(IServer.STATE_STOPPING);
-    		Trace.trace(Trace.FINEST, "Killing the Server process");
-    		if (process != null && !process.isTerminated()) {
-    			process.terminate();
-    			stopImpl();
-    		}
-    	} catch (Exception e) {
-    		Trace.trace(Trace.SEVERE, "Error killing the process", e);
-    	}
-    }
-
-    private List getStopClasspath() {
-    	String cpRef = getServerDefinition().getStop().getClasspathReference();
-    	return serverClasspath(cpRef);
-    }
-    public void initialize() {
-      super.initialize();
-    }
-    public void publishFinish(IProgressMonitor monitor) throws CoreException {
-        IModule[] modules = this.getServer().getModules();
-        boolean allpublished= true;
-        for (int i = 0; i < modules.length; i++) {
-            if(this.getServer().getModulePublishState(modules)!=IServer.PUBLISH_STATE_NONE)
-                allpublished=false;
-        }
-        if(allpublished)
-            setServerPublishState(IServer.PUBLISH_STATE_NONE);
-    }
-    
- 	protected void setServerStarted() {
- 		setServerState(IServer.STATE_STARTED);
- 	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerCoreMessages.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerCoreMessages.java
deleted file mode 100644
index 498f557..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerCoreMessages.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package org.eclipse.jst.server.generic.core.internal;
-
-import org.eclipse.osgi.util.NLS;
-
-/**
- * Helper class to get messages
- * 
- * @author Gorkem Ercan
- */
-public class GenericServerCoreMessages extends NLS{
-
-	private static final String RESOURCE_BUNDLE= "org.eclipse.jst.server.generic.core.internal.GenericServerCoreMessages";//$NON-NLS-1$
-	public static String cancelNoPublish;
-	public static String moduleNotCompatible;
-	public static String errorPortInUse;
-	public static String errorJRE;
-	public static String errorNoServerType;
-	public static String errorNoClasspath;
-	public static String errorMissingClasspathEntry;
-	public static String errorRemoveModuleAntpublisher;
-	public static String errorPublishAntpublisher;
-	static{
-		  NLS.initializeMessages(RESOURCE_BUNDLE, GenericServerCoreMessages.class);
-	}
-
-}
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerCoreMessages.properties b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerCoreMessages.properties
deleted file mode 100644
index 7a1daba..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerCoreMessages.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-errorName=Invalid name.
-errorJRE=Invalid JRE.
-errorNoServerType=No server type definition
-errorDuplicateRuntimeName=Name is already in use
-errorMissingClasspathEntry=Missing classpath entry {0}
-errorPortInUse=Server port In Use {0}-{1}
-cancelNoPublish=Nothing to publish
-moduleNotCompatible=Module type is not compatible
-errorNoClasspath=No classpath is defined
-errorRemoveModuleAntpublisher= Remove module failed using Ant publisher
-errorPublishAntpublisher= Publish failed using Ant publisher
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerLaunchConfigurationDelegate.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerLaunchConfigurationDelegate.java
deleted file mode 100644
index 3a26ef4..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerLaunchConfigurationDelegate.java
+++ /dev/null
@@ -1,129 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     Gorkem Ercan - initial API and implementation
- *     Naci M. Dai
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-package org.eclipse.jst.server.generic.core.internal;
-
-import java.io.File;
-import java.util.Map;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.jdt.launching.AbstractJavaLaunchConfigurationDelegate;
-import org.eclipse.jdt.launching.ExecutionArguments;
-import org.eclipse.jdt.launching.IJavaLaunchConfigurationConstants;
-import org.eclipse.jdt.launching.IVMInstall;
-import org.eclipse.jdt.launching.IVMRunner;
-import org.eclipse.jdt.launching.VMRunnerConfiguration;
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.ServerUtil;
-import org.eclipse.wst.server.core.model.ServerBehaviourDelegate;
-/**
- * ServerLaunchConfiguration for the generic server.
- *
- * @author Gorkem Ercan
- */
-public class GenericServerLaunchConfigurationDelegate extends AbstractJavaLaunchConfigurationDelegate {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.ILaunchConfigurationDelegate#launch(org.eclipse.debug.core.ILaunchConfiguration, java.lang.String, org.eclipse.debug.core.ILaunch, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public void launch(ILaunchConfiguration configuration, String mode,
-			ILaunch launch, IProgressMonitor monitor) throws CoreException {
-		
-		
-
-		IServer server = ServerUtil.getServer(configuration);
-		if (server == null){
-            abort("Server does not exist", null, IJavaLaunchConfigurationConstants.ERR_INTERNAL_ERROR);
-		}	
-		
-		GenericServerBehaviour genericServer = (GenericServerBehaviour)server.getAdapter(ServerBehaviourDelegate.class);
-		genericServer.setupLaunch(launch, mode, monitor);
-	
-		String mainTypeName = genericServer.getStartClassName(); 
-
-		IVMInstall vm = verifyVMInstall(configuration);
-		
-		IVMRunner runner = vm.getVMRunner(mode);
-
-		File workingDir = verifyWorkingDirectory(configuration);
-		String workingDirName = null;
-		if (workingDir != null)
-			workingDirName = workingDir.getAbsolutePath();
-		
-		// Program & VM args
-		String pgmArgs = getProgramArguments(configuration);
-		String vmArgs = getVMArguments(configuration);
-
-		ExecutionArguments execArgs = new ExecutionArguments(vmArgs, pgmArgs);
-		
-		// VM-specific attributes
-		Map vmAttributesMap = getVMSpecificAttributesMap(configuration);
-		
-		// Classpath
-		String[] classpath = getClasspath(configuration);
-		
-		// Create VM config
-		VMRunnerConfiguration runConfig = new VMRunnerConfiguration(mainTypeName, classpath);
-		runConfig.setProgramArguments(execArgs.getProgramArgumentsArray());
-		runConfig.setVMArguments(execArgs.getVMArgumentsArray());
-		runConfig.setWorkingDirectory(workingDirName);
-		runConfig.setVMSpecificAttributesMap(vmAttributesMap);
-
-		// Bootpath
-		String[] bootpath = getBootpath(configuration);
-		if (bootpath != null && bootpath.length > 0)
-			runConfig.setBootClassPath(bootpath);
-		
-		setDefaultSourceLocator(launch, configuration);
-		
-		// Launch the configuration
-		runner.run(runConfig, launch, monitor);
-		genericServer.setProcess(launch.getProcesses()[0]);
-		
-	}
-
-	/**
-	 * Throws a core exception with the given message and optional
-	 * exception. The exception's status code will indicate an error.
-	 * 
-	 * @param message error message
-	 * @param exception cause of the error, or <code>null</code>
-	 * @exception CoreException with the given message and underlying
-	 *  exception
-	 */
-	protected void abort(String message, Throwable exception, int code) throws CoreException {
-		throw new CoreException(new Status(IStatus.ERROR, CorePlugin.getDefault().getBundle().getSymbolicName(), code, message, exception));
-	}
-	
-}
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerLaunchableAdapterDelegate.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerLaunchableAdapterDelegate.java
deleted file mode 100644
index e5dc311..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerLaunchableAdapterDelegate.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     Gorkem Ercan - initial API and implementation
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-package org.eclipse.jst.server.generic.core.internal;
-
-import java.net.URL;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Properties;
-import org.eclipse.wst.server.core.IModuleArtifact;
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.model.*;
-import org.eclipse.wst.server.core.util.HttpLaunchable;
-import org.eclipse.wst.server.core.util.WebResource;
-import org.eclipse.jst.server.core.EJBBean;
-import org.eclipse.jst.server.core.JndiLaunchable;
-import org.eclipse.jst.server.core.JndiObject;
-import org.eclipse.jst.server.core.Servlet;
-import org.eclipse.jst.server.generic.servertype.definition.JndiProperty;
-import org.eclipse.jst.server.generic.servertype.definition.ServerRuntime;
-/**
- * Launchable adapter delegate for generic servers.
- * @author Gorkem Ercan 
- */
-public class GenericServerLaunchableAdapterDelegate extends LaunchableAdapterDelegate {
-	/*
-	 * @see ILaunchableAdapterDelegate#getLaunchable(IServer, IModuleObject)
-	 */
-	public Object getLaunchable(IServer server, IModuleArtifact moduleObject) {
-		ServerDelegate delegate = (ServerDelegate)server.getAdapter(ServerDelegate.class);
-		if (!(delegate instanceof GenericServer))
-			return null;
-		if ((moduleObject instanceof Servlet) ||(moduleObject instanceof WebResource))
-            return prepareHttpLaunchable(moduleObject, delegate);
-		
-        if((moduleObject instanceof EJBBean) || (moduleObject instanceof JndiObject))
-            return prepareJndiLaunchable(moduleObject,delegate);
-		return null;
-	}
-
-    private Object prepareJndiLaunchable(IModuleArtifact moduleObject, ServerDelegate delegate) {
-        JndiLaunchable launchable = null;
-        GenericServer genericServer = (GenericServer)delegate;
-        ServerRuntime definition = genericServer.getServerDefinition();
-        Properties props = new Properties();
-        props.put("java.naming.factory.initial",definition.getJndiConnection().getInitialContextFactory());
-        props.put("java.naming.provider.url",definition.getJndiConnection().getProviderUrl());
-        List jps = definition.getJndiConnection().getJndiProperty();
-        Iterator propsIt =jps.iterator();
-        while(propsIt.hasNext())
-        {
-            JndiProperty prop = (JndiProperty)propsIt.next();
-            props.put(prop.getName(),prop.getValue());
-        }
-        
-        if(moduleObject instanceof EJBBean)
-        {
-            EJBBean bean = (EJBBean)moduleObject;
-            launchable = new JndiLaunchable(props,bean.getJndiName());
-        }
-        if(moduleObject instanceof JndiObject)
-        {
-            JndiObject jndi = (JndiObject)moduleObject;
-            launchable = new JndiLaunchable(props,jndi.getJndiName());
-        }
-        return launchable;
-    }
-
-    /**
-     * @param moduleObject
-     * @param delegate
-     * @return
-     */
-    private Object prepareHttpLaunchable(IModuleArtifact moduleObject, ServerDelegate delegate) {
-        try {
-			URL url = ((IURLProvider) delegate).getModuleRootURL(moduleObject.getModule());
-			
-			Trace.trace("root: " + url);
-
-			if (moduleObject instanceof Servlet) {
-				Servlet servlet = (Servlet) moduleObject;
-				if (servlet.getAlias() != null) {
-					String path = servlet.getAlias();
-					if (path.startsWith("/"))
-						path = path.substring(1);
-					url = new URL(url, path);
-				} else
-					url = new URL(url, "servlet/" + servlet.getServletClassName());
-			} else if (moduleObject instanceof WebResource) {
-				WebResource resource = (WebResource) moduleObject;
-				String path = resource.getPath().toString();
-				Trace.trace("path: " + path);
-				if (path != null && path.startsWith("/") && path.length() > 0)
-					path = path.substring(1);
-				if (path != null && path.length() > 0)
-					url = new URL(url, path);
-			} 
-			return new HttpLaunchable(url);
-		} catch (Exception e) {
-			Trace.trace("Error getting URL for " + moduleObject, e);
-			return null;
-		}
-    }
-}
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerRuntime.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerRuntime.java
deleted file mode 100644
index 777703f..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerRuntime.java
+++ /dev/null
@@ -1,178 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     Gorkem Ercan - initial API and implementation
- *     Naci M. Dai
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-package org.eclipse.jst.server.generic.core.internal;
-
-import java.io.File;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jdt.launching.IVMInstall;
-import org.eclipse.jdt.launching.IVMInstallType;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.jst.server.core.internal.IGenericRuntime;
-import org.eclipse.jst.server.generic.servertype.definition.ArchiveType;
-import org.eclipse.jst.server.generic.servertype.definition.Classpath;
-import org.eclipse.jst.server.generic.servertype.definition.ServerRuntime;
-import org.eclipse.wst.server.core.model.RuntimeDelegate;
-/**
- * Generic server runtime support.
- *
- * @author Gorkem Ercan
- */
-public class GenericServerRuntime extends RuntimeDelegate implements IGenericRuntime
-{
-	private static final String PROP_VM_INSTALL_TYPE_ID = "vm-install-type-id";
-	private static final String PROP_VM_INSTALL_ID = "vm-install-id";
-	public static final String SERVER_DEFINITION_ID = "server_definition_id";
-	public static final String SERVER_INSTANCE_PROPERTIES = "generic_server_instance_properties";
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jst.server.core.IGenericRuntime#getVMInstallTypeId()
-	 */
-	public String getVMInstallTypeId() {
-		return getAttribute(PROP_VM_INSTALL_TYPE_ID, (String)null);
-	}
-	
-	public boolean isUsingDefaultJRE() {
-		return getVMInstallTypeId() == null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jst.server.core.IGenericRuntime#getVMInstallId()
-	 */
-	public String getVMInstallId() {
-		return getAttribute(PROP_VM_INSTALL_ID, (String)null);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jst.server.core.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;
-	
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jst.server.core.IGenericRuntime#validate()
-	 */
-	public IStatus validate() {
-		if (getVMInstall() == null)
-			return new Status(IStatus.ERROR, CorePlugin.PLUGIN_ID, 0, GenericServerCoreMessages.errorJRE, null);
-		
-		ServerRuntime serverTypeDefinition = getServerTypeDefinition();
-        if(serverTypeDefinition == null)
-		    return new Status(IStatus.ERROR, CorePlugin.PLUGIN_ID, 0, GenericServerCoreMessages.errorNoServerType, null);
-        if(serverTypeDefinition.getClasspath()== null || serverTypeDefinition.getClasspath().size()<1)
-            return new Status(IStatus.ERROR, CorePlugin.PLUGIN_ID, 0 ,GenericServerCoreMessages.errorNoClasspath,null);
-		Iterator cpList  = serverTypeDefinition.getClasspath().iterator();
-        while (cpList.hasNext()) {
-			Classpath cpth = (Classpath) cpList.next();
-	        if(cpth.getArchive()== null || cpth.getArchive().size()<1)
-	            return new Status(IStatus.ERROR, CorePlugin.PLUGIN_ID, 0 ,GenericServerCoreMessages.errorNoClasspath,null);
-			Iterator archIter = cpth.getArchive().iterator();
-			while (archIter.hasNext()) {
-				ArchiveType arch = (ArchiveType) archIter.next();
-				String arcPath = serverTypeDefinition.getResolver().resolveProperties(arch.getPath());
-		           File f = new File(arcPath);
-		            if(f.exists()==false)
-		                return new Status(IStatus.ERROR, CorePlugin.PLUGIN_ID, 0 ,GenericServerCoreMessages.bind(GenericServerCoreMessages.errorMissingClasspathEntry,f.getPath()),null);	
-			}
-		}
-        return new Status(IStatus.OK, CorePlugin.PLUGIN_ID, 0, "", null);
-	}
-	/**
-	 * Returns the ServerTypeDefinition for this runtime. 
-	 * Populated with the user properties if exists. 
-	 * 
-	 * @return populated ServerTypeDefinition
-	 */
-	public ServerRuntime getServerTypeDefinition()
-	{
-	   String id=  getRuntime().getRuntimeType().getId();
-	   Map properties = getAttribute(SERVER_INSTANCE_PROPERTIES,(Map)null);
-	   if(id==null)
-	       return null;
-	   return CorePlugin.getDefault().getServerTypeDefinitionManager().getServerRuntimeDefinition(id,properties);
-	}
-	
-	public void setVMInstall(IVMInstall vmInstall) {
-		if (vmInstall == null) {
-			setVMInstall(null, null);
-		} else
-			setVMInstall(vmInstall.getVMInstallType().getId(), vmInstall.getId());
-	}
-	
-	private 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);
-	}
-	
-	
-	public Map getServerInstanceProperties() {
-		return getAttribute(SERVER_INSTANCE_PROPERTIES, new HashMap());
-	}
-	
-	public String getServerDefinitionId() {
-		return getAttribute(SERVER_DEFINITION_ID, (String) null);
-	}
-	
-	public void setServerInstanceProperties(Map map) {
-		setAttribute(SERVER_INSTANCE_PROPERTIES, map);
-	}
-	
-	public void setServerDefinitionId(String s) {
-		setAttribute(SERVER_DEFINITION_ID, s);
-	}
-	
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerRuntimeTargetHandler.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerRuntimeTargetHandler.java
deleted file mode 100644
index a1d45b8..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerRuntimeTargetHandler.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     Gorkem Ercan - initial API and implementation
- *     Naci M. Dai
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-package org.eclipse.jst.server.generic.core.internal;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.launching.IVMInstall;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.jst.server.core.ClasspathRuntimeTargetHandler;
-import org.eclipse.jst.server.generic.servertype.definition.ServerRuntime;
-import org.eclipse.wst.server.core.IRuntime;
-import org.eclipse.wst.server.core.model.RuntimeDelegate;
-/**
- * Provides the Classpath containers to be added into project classpaths.
- *
- * @author Gorkem Ercan
- */
-public class GenericServerRuntimeTargetHandler extends
-		ClasspathRuntimeTargetHandler {
-
-	/* (non-Javadoc)
-	 * @see ClasspathRuntimeTargetHandler#getClasspathContainerLabel(IRuntime, java.lang.String)
-	 */
-	public String getClasspathContainerLabel(IRuntime runtime, String id) {
-		ServerRuntime definition= ServerTypeDefinitionUtil.getServerTypeDefinition(runtime);
-		return definition.getName();
-	}
-
-	/* (non-Javadoc)
-	 * @see ClasspathRuntimeTargetHandler#resolveClasspathContainer(IRuntime, java.lang.String)
-	 */
-	public IClasspathEntry[] resolveClasspathContainer(IRuntime runtime,String id){		
-		return ServerTypeDefinitionUtil.getServerClassPathEntry(runtime);
-	}
-    
-	/*
-     * @see ClasspathRuntimeTargetHandler#getDelegateClasspathEntries(IRuntime runtime, IProgressMonitor monitor)
-	 */
-	public IClasspathEntry[] getDelegateClasspathEntries(IRuntime runtime, IProgressMonitor monitor) {
-		GenericServerRuntime genericRuntime = (GenericServerRuntime)runtime.getAdapter(RuntimeDelegate.class);
-		IVMInstall vmInstall = genericRuntime.getVMInstall();
-		if (vmInstall != null) {
-			String name = vmInstall.getName();
-			return new IClasspathEntry[] { JavaCore.newContainerEntry(new Path(JavaRuntime.JRE_CONTAINER).append("org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType").append(name)) };
-		}
-		return null;
-	}
-}
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerSourcePathComputerDelegate.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerSourcePathComputerDelegate.java
deleted file mode 100644
index 8bd8c3d..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/GenericServerSourcePathComputerDelegate.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     Gorkem Ercan - initial API and implementation
- *     Naci M. Dai
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-package org.eclipse.jst.server.generic.core.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourcePathComputerDelegate;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.launching.IRuntimeClasspathEntry;
-import org.eclipse.jdt.launching.JavaRuntime;
-/**
- * SourcePathComputer for the GenericLaunchConfiguration.
- * 
- * @author Gorkem Ercan
- */
-public class GenericServerSourcePathComputerDelegate implements ISourcePathComputerDelegate  {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.sourcelookup.ISourcePathComputerDelegate#computeSourceContainers(org.eclipse.debug.core.ILaunchConfiguration, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public ISourceContainer[] computeSourceContainers(ILaunchConfiguration configuration, IProgressMonitor monitor) throws CoreException {
-		
-		IRuntimeClasspathEntry[] unresolvedEntries = JavaRuntime.computeUnresolvedSourceLookupPath(configuration);
-		// FIXME have only the projects of registered modules. 
-		IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
-		List javaProjectList = new ArrayList();
-		for(int i = 0; i<projects.length;i++)
-		{
-			if(projects[i].hasNature(JavaCore.NATURE_ID))
-			{
-				IJavaProject javaProject = (IJavaProject) projects[i].getNature(JavaCore.NATURE_ID);
-				javaProjectList.add(javaProject);
-			}
-		}
-		IRuntimeClasspathEntry[] projectEntries = new IRuntimeClasspathEntry[javaProjectList.size()];
-		for (int i = 0; i < javaProjectList.size(); i++) {
-			projectEntries[i] = JavaRuntime.newProjectRuntimeClasspathEntry((IJavaProject)javaProjectList.get(i)); 
-		}
-		IRuntimeClasspathEntry[] entries =  new IRuntimeClasspathEntry[projectEntries.length+unresolvedEntries.length]; 
-		System.arraycopy(unresolvedEntries,0,entries,0,unresolvedEntries.length);
-		System.arraycopy(projectEntries,0,entries,unresolvedEntries.length,projectEntries.length);
-		
-		IRuntimeClasspathEntry[] resolved = JavaRuntime.resolveSourceLookupPath(entries, configuration);
-		return JavaRuntime.getSourceContainers(resolved);
-	}
-}
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/PingThread.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/PingThread.java
deleted file mode 100644
index 4c62427..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/PingThread.java
+++ /dev/null
@@ -1,128 +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.generic.core.internal;
-
-import java.io.FileNotFoundException;
-import java.net.HttpURLConnection;
-import java.net.URL;
-import java.net.URLConnection;
-
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.internal.Trace;
-/**
- * Thread used to ping server to test when it is started.
- * 
- * @since 1.0
- */
-public class PingThread {
-	// delay before pinging starts
-	private static final int PING_DELAY = 2000;
-
-	// delay between pings
-	private static final int PING_INTERVAL = 250;
-
-	// maximum number of pings before giving up
-	private int maxPings = 56; // total: 16 seconds + connection time
-
-	private boolean stop = false;
-	private String url;
-	private IServer server;
-	private GenericServerBehaviour genericServer;
-
-	/**
-	 * Create a new PingThread.
-	 * 
-	 * @param server
-	 * @param url
-	 * @param maxPings
-	 * @param genericServer
-	 */
-	public PingThread(IServer server, String url, int maxPings, GenericServerBehaviour genericServer) {
-		super();
-		this.server = server;
-		this.url = url;
-		this.maxPings = maxPings;
-		this.genericServer = genericServer;
-		Thread t = new Thread() {
-			public void run() {
-				ping();
-			}
-		};
-		t.setDaemon(true);
-		t.start();
-	}
-
-	/**
-	 * Ping the server until it is started. Then set the server
-	 * state to STATE_STARTED.
-	 */
-	protected void ping() {
-		int count = 0;
-		try {
-			Thread.sleep(PING_DELAY);
-		} catch (Exception e) {
-			// ignore
-		}
-		while (!stop) {
-			try {
-				if (count == maxPings) {
-					try {
-						server.stop(false);
-					} catch (Exception e) {
-						Trace.trace(Trace.FINEST, "Ping: could not stop server");
-					}
-					stop = true;
-					break;
-				}
-				count++;
-				
-				Trace.trace(Trace.FINEST, "Ping: pinging");
-				URL pingUrl = new URL(url);
-				URLConnection conn = pingUrl.openConnection();
-				((HttpURLConnection)conn).getResponseCode();
-	
-				// ping worked - server is up
-				if (!stop) {
-					Trace.trace(Trace.FINEST, "Ping: success");
-					Thread.sleep(200);
-					genericServer.setServerStarted();
-				}
-				stop = true;
-			} catch (FileNotFoundException fe) {
-				try {
-					Thread.sleep(200);
-				} catch (Exception e) {
-					// ignore
-				}
-				genericServer.setServerStarted();
-				stop = true;
-			} catch (Exception e) {
-				Trace.trace(Trace.FINEST, "Ping: failed");
-				// pinging failed
-				if (!stop) {
-					try {
-						Thread.sleep(PING_INTERVAL);
-					} catch (InterruptedException e2) {
-						// ignore
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * Tell the pinging to stop.
-	 */
-	public void stop() {
-		Trace.trace(Trace.FINEST, "Ping: stopping");
-		stop = true;
-	}
-}
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/PublishManager.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/PublishManager.java
deleted file mode 100644
index ded6c2c..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/PublishManager.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package org.eclipse.jst.server.generic.core.internal;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.jst.server.generic.internal.core.util.ExtensionPointUtil;
-
-/**
- * 
- *
- * @author Gorkem Ercan
- */
-public class PublishManager 
-{
-     public static GenericPublisher getPublisher(String id) 
-    {
-        IExtension[] extensions = ExtensionPointUtil.getGenericPublisherExtension();
-        try {
-            for (int i = 0; i < extensions.length; i++) {
-                IConfigurationElement[] configs = ExtensionPointUtil.getConfigurationElements(extensions[i]);
-                for (int j = 0; j < configs.length; j++) {
-                    if(configs[j].getAttribute("id").equals(id)) {
-                        return (GenericPublisher)configs[j].createExecutableExtension("class");
-                      }
-                }
-            }
-        }catch(CoreException e){
-            //ingored
-        }
-        return null;
-    }
-
-     
-
-}
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/ServerTypeDefinitionManager.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/ServerTypeDefinitionManager.java
deleted file mode 100644
index e7439fa..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/ServerTypeDefinitionManager.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     Gorkem Ercan - initial API and implementation
- *     Naci M. Dai
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-package org.eclipse.jst.server.generic.core.internal;
-
-import java.net.URL;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.jst.server.generic.internal.xml.XMLUtils;
-import org.eclipse.jst.server.generic.servertype.definition.ServerRuntime;
-/**
- * Manages the retrieaval of ServerTypeDefinitions.
- * 
- * @author Gorkem Ercan
- */
-
-public class ServerTypeDefinitionManager 
-{
-	private XMLUtils fXmlUtils;
-	
-	public ServerTypeDefinitionManager(URL serverDefinitionURL)
-	{
-		super();
-		fXmlUtils = new XMLUtils(); 
-	}
-
-
-	public ServerRuntime getServerRuntimeDefinition(String id, Map properties)
-	{
-		ServerRuntime definition =  fXmlUtils.getServerTypeDefinition(id);
-		if(definition !=null)
-            definition.setPropertyValues(properties);
-		return definition;
-	}
-	
-	public ServerRuntime[] getServerTypeDefinitions()
-	{
-		 List definitionList = fXmlUtils.getServerTypeDefinitions();
-		 return (ServerRuntime[])definitionList.toArray(new ServerRuntime[definitionList.size()]);
-	}
-}
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/ServerTypeDefinitionUtil.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/ServerTypeDefinitionUtil.java
deleted file mode 100644
index 1c3687c..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/ServerTypeDefinitionUtil.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     Gorkem Ercan - initial API and implementation
- *     Naci M. Dai
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-
-package org.eclipse.jst.server.generic.core.internal;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.Map;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jst.server.generic.servertype.definition.ArchiveType;
-import org.eclipse.jst.server.generic.servertype.definition.Classpath;
-import org.eclipse.jst.server.generic.servertype.definition.ServerRuntime;
-import org.eclipse.wst.server.core.IRuntime;
-
-/**
- * Utilities for ServerRuntime definition files.
- *
- * @author Gorkem Ercan
- */
-public class ServerTypeDefinitionUtil 
-{
-	/**
-	 * 
-	 * @param runtime
-	 * @return
-	 */
-	public static ServerRuntime getServerTypeDefinition(IRuntime runtime)
-	{
-	    GenericServerRuntime delegate = (GenericServerRuntime)runtime.getAdapter(GenericServerRuntime.class);
-		String serverType = delegate.getRuntime().getRuntimeType().getId();
-		Map properties = delegate.getServerInstanceProperties();
-		ServerRuntime definition = 
-			CorePlugin.getDefault().getServerTypeDefinitionManager().getServerRuntimeDefinition(serverType,properties);
-		return definition;
-	}
-	
-	public static IClasspathEntry[] getServerClassPathEntry(IRuntime runtime)
-	{
-		ServerRuntime definition = getServerTypeDefinition(runtime);		
-		String ref = definition.getProject().getClasspathReference();
-		Classpath cp = definition.getClasspath(ref);
-		Iterator archives = cp.getArchive().iterator();
-		ArrayList entryList = new ArrayList();
-		while (archives.hasNext()) {
-			ArchiveType archive = (ArchiveType) archives.next();
-			String item = definition.getResolver().resolveProperties(archive.getPath());
-			IClasspathEntry entry = JavaCore.newLibraryEntry(new Path(item),null,null );
-			entryList.add(entry);
-		}
-
-		return (IClasspathEntry[])entryList.toArray(new IClasspathEntry[entryList.size()]);
-	}
-	
-}
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/Trace.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/Trace.java
deleted file mode 100644
index 4562872..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/core/internal/Trace.java
+++ /dev/null
@@ -1,73 +0,0 @@
-package org.eclipse.jst.server.generic.core.internal;
-
-
-/**********************************************************************
- * Copyright (c) 2003 IBM Corporation and others.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- *    IBM - Initial API and implementation
- **********************************************************************/
-/**
- * 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;
-	public static byte FINER = 4;
-	
-	/**
-	 * Trace constructor comment.
-	 */
-	private Trace() {
-		super();
-	}
-	
-	/**
-	 * Trace the given text.
-	 *
-	 * @param s java.lang.String
-	 */
-	public static void trace(byte level, String s) {
-		Trace.trace(level, s, null);
-	}
-	
-	/**
-	 * Trace the given message and exception.
-	 *
-	 * @param s java.lang.String
-	 * @param t java.lang.Throwable
-	 */
-	public static void trace(byte level, String s, Throwable t) {
-		if (!CorePlugin.getDefault().isDebugging())
-			return;
-
-		System.out.println(s);
-		if (t != null)
-			t.printStackTrace();
-	}
-	
-	/**
-	 * Trace the given text.
-	 *
-	 * @param s java.lang.String
-	 */
-	public static void trace(String s) {
-		trace(s, null);
-	}
-	
-	/**
-	 * Trace the given exception.
-	 *
-	 * @param s java.lang.String
-	 * @param e java.lang.Throwable
-	 */
-	public static void trace(String s, Throwable t) {
-		trace(FINEST, s, t);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/core/util/ExtensionPointUtil.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/core/util/ExtensionPointUtil.java
deleted file mode 100644
index d626ae1..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/core/util/ExtensionPointUtil.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package org.eclipse.jst.server.generic.internal.core.util;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IExtensionRegistry;
-import org.eclipse.core.runtime.Platform;
-
-/**
- * Some utilities for handling the extension points.
- *
- * @author Gorkem Ercan
- */
-public class ExtensionPointUtil {
-    private static final String SERVERDEFINITION_EXTENSION_ID = "org.eclipse.jst.server.generic.core.serverdefinition";
-    private static final String GENERICPUBLISHER_EXTENSION_ID = "org.eclipse.jst.server.generic.core.genericpublisher";
-
-    public static IExtension[] getGenericServerDefinitionExtensions(){
-        return getExtensions(SERVERDEFINITION_EXTENSION_ID);
-    }
-    
-    public static IExtension[] getGenericPublisherExtension(){
-        return getExtensions(GENERICPUBLISHER_EXTENSION_ID);
-    }
-
-    private static IExtension[] getExtensions(String extensionId){
-        IExtensionPoint extensionPoint=getExtensionPoint(extensionId);
-        IExtension[] extensions = extensionPoint.getExtensions();
-        return extensions;
-    }
- 
-    private static IExtensionPoint getExtensionPoint(String id)
-    {
-        IExtensionRegistry registry = Platform.getExtensionRegistry();
-        IExtensionPoint extensionPoint= registry.getExtensionPoint(id);
-        return extensionPoint;
-    }
-    
-    
-    public static IConfigurationElement[] getConfigurationElements(IExtension extension)
-    {
-        return extension!=null?extension.getConfigurationElements():null;
-    }
-    
-}
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/core/util/FileUtil.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/core/util/FileUtil.java
deleted file mode 100644
index b8a5a3e..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/core/util/FileUtil.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package org.eclipse.jst.server.generic.internal.core.util;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.net.URL;
-
-import org.eclipse.core.runtime.Platform;
-import org.osgi.framework.Bundle;
-
-/**
- * Utilities for file operations.
- * 
- * @author Gorkem Ercan
- */
-public class FileUtil {
-
-    public static File resolveFileFrom(Bundle bundle, String file)
-    {
-        try {
-            URL resolvedUrl = Platform.resolve(bundle.getEntry("/"));
-            if(file.startsWith("/"))
-                file=file.substring(1);
-            String path = resolvedUrl.getPath()+file;
-            URI uri = new URI(resolvedUrl.getProtocol(), resolvedUrl.getHost(),path, resolvedUrl.getQuery());
-            return new File(uri);
-        } 
-        catch (URISyntaxException e) {
-        	//ignore
-        }
-        catch (IOException e1) {
-        	//ignore
-        }
-        return null;
-    }
-}
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/ServerTypePackage.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/ServerTypePackage.java
deleted file mode 100644
index 12640bb..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/ServerTypePackage.java
+++ /dev/null
@@ -1,1425 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: ServerTypePackage.java,v 1.1 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition;
-
-import org.eclipse.emf.ecore.EAttribute;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EReference;
-import org.eclipse.jst.server.generic.servertype.definition.ServerTypeFactory;
-
-/**
- * <!-- begin-user-doc -->
- * The <b>Package</b> for the model.
- * It contains accessors for the meta objects to represent
- * <ul>
- *   <li>each class,</li>
- *   <li>each feature of each class,</li>
- *   <li>each enum,</li>
- *   <li>and each data type</li>
- * </ul>
- * <!-- end-user-doc -->
- * @see org.eclipse.jst.server.generic.servertype.definition.ServerTypeFactory
- * @generated
- */
-public interface ServerTypePackage extends EPackage{
-    /**
-     * The package name.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	String eNAME = "definition";
-
-    /**
-     * The package namespace URI.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	String eNS_URI = "http://eclipse.org/jst/server/generic/ServerTypeDefinition";
-
-    /**
-     * The package namespace name.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	String eNS_PREFIX = "definition";
-
-    /**
-     * The singleton instance of the package.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	ServerTypePackage eINSTANCE = org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerTypePackageImpl.init();
-
-    /**
-     * The meta object id for the '{@link org.eclipse.jst.server.generic.servertype.definition.impl.ArchiveTypeImpl <em>Archive Type</em>}' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.ArchiveTypeImpl
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerTypePackageImpl#getArchiveType()
-     * @generated
-     */
-	int ARCHIVE_TYPE = 0;
-
-    /**
-     * The feature id for the '<em><b>Path</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int ARCHIVE_TYPE__PATH = 0;
-
-    /**
-     * The number of structural features of the the '<em>Archive Type</em>' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int ARCHIVE_TYPE_FEATURE_COUNT = 1;
-
-    /**
-     * The meta object id for the '{@link org.eclipse.jst.server.generic.servertype.definition.impl.ClasspathImpl <em>Classpath</em>}' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.ClasspathImpl
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerTypePackageImpl#getClasspath()
-     * @generated
-     */
-	int CLASSPATH = 1;
-
-    /**
-     * The feature id for the '<em><b>Group</b></em>' attribute list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int CLASSPATH__GROUP = 0;
-
-    /**
-     * The feature id for the '<em><b>Archive</b></em>' containment reference list.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int CLASSPATH__ARCHIVE = 1;
-
-    /**
-     * The feature id for the '<em><b>Id</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int CLASSPATH__ID = 2;
-
-    /**
-     * The feature id for the '<em><b>Is Library</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int CLASSPATH__IS_LIBRARY = 3;
-
-    /**
-     * The number of structural features of the the '<em>Classpath</em>' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int CLASSPATH_FEATURE_COUNT = 4;
-
-    /**
-     * The meta object id for the '{@link org.eclipse.jst.server.generic.servertype.definition.impl.JndiConnectionImpl <em>Jndi Connection</em>}' class.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.JndiConnectionImpl
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerTypePackageImpl#getJndiConnection()
-     * @generated
-     */
-    int JNDI_CONNECTION = 2;
-
-    /**
-     * The feature id for the '<em><b>Provider Url</b></em>' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int JNDI_CONNECTION__PROVIDER_URL = 0;
-
-    /**
-     * The feature id for the '<em><b>Group</b></em>' attribute list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int JNDI_CONNECTION__GROUP = 1;
-
-    /**
-     * The feature id for the '<em><b>Jndi Property</b></em>' containment reference list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int JNDI_CONNECTION__JNDI_PROPERTY = 2;
-
-    /**
-     * The feature id for the '<em><b>Initial Context Factory</b></em>' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int JNDI_CONNECTION__INITIAL_CONTEXT_FACTORY = 3;
-
-    /**
-     * The number of structural features of the the '<em>Jndi Connection</em>' class.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int JNDI_CONNECTION_FEATURE_COUNT = 4;
-
-    /**
-     * The meta object id for the '{@link org.eclipse.jst.server.generic.servertype.definition.impl.JndiPropertyImpl <em>Jndi Property</em>}' class.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.JndiPropertyImpl
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerTypePackageImpl#getJndiProperty()
-     * @generated
-     */
-    int JNDI_PROPERTY = 3;
-
-    /**
-     * The feature id for the '<em><b>Name</b></em>' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int JNDI_PROPERTY__NAME = 0;
-
-    /**
-     * The feature id for the '<em><b>Value</b></em>' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int JNDI_PROPERTY__VALUE = 1;
-
-    /**
-     * The number of structural features of the the '<em>Jndi Property</em>' class.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int JNDI_PROPERTY_FEATURE_COUNT = 2;
-
-    /**
-     * The meta object id for the '{@link org.eclipse.jst.server.generic.servertype.definition.impl.LaunchConfigurationImpl <em>Launch Configuration</em>}' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.LaunchConfigurationImpl
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerTypePackageImpl#getLaunchConfiguration()
-     * @generated
-     */
-	int LAUNCH_CONFIGURATION = 4;
-
-    /**
-     * The feature id for the '<em><b>Main Class</b></em>' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int LAUNCH_CONFIGURATION__MAIN_CLASS = 0;
-
-    /**
-     * The feature id for the '<em><b>Working Directory</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int LAUNCH_CONFIGURATION__WORKING_DIRECTORY = 1;
-
-    /**
-     * The feature id for the '<em><b>Program Arguments</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int LAUNCH_CONFIGURATION__PROGRAM_ARGUMENTS = 2;
-
-    /**
-     * The feature id for the '<em><b>Vm Parameters</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int LAUNCH_CONFIGURATION__VM_PARAMETERS = 3;
-
-    /**
-     * The feature id for the '<em><b>Classpath Reference</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int LAUNCH_CONFIGURATION__CLASSPATH_REFERENCE = 4;
-
-    /**
-     * The number of structural features of the the '<em>Launch Configuration</em>' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int LAUNCH_CONFIGURATION_FEATURE_COUNT = 5;
-
-    /**
-     * The meta object id for the '{@link org.eclipse.jst.server.generic.servertype.definition.impl.ModuleImpl <em>Module</em>}' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.ModuleImpl
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerTypePackageImpl#getModule()
-     * @generated
-     */
-	int MODULE = 5;
-
-    /**
-     * The feature id for the '<em><b>Type</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int MODULE__TYPE = 0;
-
-    /**
-     * The feature id for the '<em><b>Publish Dir</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int MODULE__PUBLISH_DIR = 1;
-
-    /**
-     * The feature id for the '<em><b>Publisher Reference</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int MODULE__PUBLISHER_REFERENCE = 2;
-
-    /**
-     * The number of structural features of the the '<em>Module</em>' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int MODULE_FEATURE_COUNT = 3;
-
-    /**
-     * The meta object id for the '{@link org.eclipse.jst.server.generic.servertype.definition.impl.PortImpl <em>Port</em>}' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.PortImpl
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerTypePackageImpl#getPort()
-     * @generated
-     */
-	int PORT = 6;
-
-    /**
-     * The feature id for the '<em><b>No</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int PORT__NO = 0;
-
-    /**
-     * The feature id for the '<em><b>Name</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int PORT__NAME = 1;
-
-    /**
-     * The feature id for the '<em><b>Protocol</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int PORT__PROTOCOL = 2;
-
-    /**
-     * The number of structural features of the the '<em>Port</em>' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int PORT_FEATURE_COUNT = 3;
-
-    /**
-     * The meta object id for the '{@link org.eclipse.jst.server.generic.servertype.definition.impl.ProjectImpl <em>Project</em>}' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.ProjectImpl
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerTypePackageImpl#getProject()
-     * @generated
-     */
-	int PROJECT = 7;
-
-    /**
-     * The feature id for the '<em><b>Classpath Reference</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int PROJECT__CLASSPATH_REFERENCE = 0;
-
-    /**
-     * The number of structural features of the the '<em>Project</em>' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int PROJECT_FEATURE_COUNT = 1;
-
-    /**
-     * The meta object id for the '{@link org.eclipse.jst.server.generic.servertype.definition.impl.PropertyImpl <em>Property</em>}' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.PropertyImpl
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerTypePackageImpl#getProperty()
-     * @generated
-     */
-	int PROPERTY = 8;
-
-    /**
-     * The feature id for the '<em><b>Context</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int PROPERTY__CONTEXT = 0;
-
-    /**
-     * The feature id for the '<em><b>Default</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int PROPERTY__DEFAULT = 1;
-
-    /**
-     * The feature id for the '<em><b>Id</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int PROPERTY__ID = 2;
-
-    /**
-     * The feature id for the '<em><b>Label</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int PROPERTY__LABEL = 3;
-
-    /**
-     * The feature id for the '<em><b>Type</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int PROPERTY__TYPE = 4;
-
-    /**
-     * The number of structural features of the the '<em>Property</em>' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int PROPERTY_FEATURE_COUNT = 5;
-
-    /**
-     * The meta object id for the '{@link org.eclipse.jst.server.generic.servertype.definition.impl.PublisherImpl <em>Publisher</em>}' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.PublisherImpl
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerTypePackageImpl#getPublisher()
-     * @generated
-     */
-	int PUBLISHER = 9;
-
-    /**
-     * The feature id for the '<em><b>Group</b></em>' attribute list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int PUBLISHER__GROUP = 0;
-
-    /**
-     * The feature id for the '<em><b>Publisherdata</b></em>' containment reference list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int PUBLISHER__PUBLISHERDATA = 1;
-
-    /**
-     * The feature id for the '<em><b>Id</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int PUBLISHER__ID = 2;
-
-    /**
-     * The number of structural features of the the '<em>Publisher</em>' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int PUBLISHER_FEATURE_COUNT = 3;
-
-    /**
-     * The meta object id for the '{@link org.eclipse.jst.server.generic.servertype.definition.impl.PublisherDataImpl <em>Publisher Data</em>}' class.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.PublisherDataImpl
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerTypePackageImpl#getPublisherData()
-     * @generated
-     */
-    int PUBLISHER_DATA = 10;
-
-    /**
-     * The feature id for the '<em><b>Dataname</b></em>' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int PUBLISHER_DATA__DATANAME = 0;
-
-    /**
-     * The feature id for the '<em><b>Datavalue</b></em>' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int PUBLISHER_DATA__DATAVALUE = 1;
-
-    /**
-     * The number of structural features of the the '<em>Publisher Data</em>' class.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int PUBLISHER_DATA_FEATURE_COUNT = 2;
-
-    /**
-     * The meta object id for the '{@link org.eclipse.jst.server.generic.servertype.definition.impl.ServerRuntimeImpl <em>Server Runtime</em>}' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerRuntimeImpl
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerTypePackageImpl#getServerRuntime()
-     * @generated
-     */
-	int SERVER_RUNTIME = 11;
-
-    /**
-     * The feature id for the '<em><b>Group</b></em>' attribute list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int SERVER_RUNTIME__GROUP = 0;
-
-    /**
-     * The feature id for the '<em><b>Property</b></em>' containment reference list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int SERVER_RUNTIME__PROPERTY = 1;
-
-    /**
-     * The feature id for the '<em><b>Group1</b></em>' attribute list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int SERVER_RUNTIME__GROUP1 = 2;
-
-    /**
-     * The feature id for the '<em><b>Port</b></em>' containment reference list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int SERVER_RUNTIME__PORT = 3;
-
-    /**
-     * The feature id for the '<em><b>Group2</b></em>' attribute list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int SERVER_RUNTIME__GROUP2 = 4;
-
-    /**
-     * The feature id for the '<em><b>Module</b></em>' containment reference list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int SERVER_RUNTIME__MODULE = 5;
-
-    /**
-     * The feature id for the '<em><b>Project</b></em>' containment reference.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int SERVER_RUNTIME__PROJECT = 6;
-
-    /**
-     * The feature id for the '<em><b>Start</b></em>' containment reference.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int SERVER_RUNTIME__START = 7;
-
-    /**
-     * The feature id for the '<em><b>Stop</b></em>' containment reference.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int SERVER_RUNTIME__STOP = 8;
-
-    /**
-     * The feature id for the '<em><b>Group3</b></em>' attribute list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int SERVER_RUNTIME__GROUP3 = 9;
-
-    /**
-     * The feature id for the '<em><b>Publisher</b></em>' containment reference list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int SERVER_RUNTIME__PUBLISHER = 10;
-
-    /**
-     * The feature id for the '<em><b>Group4</b></em>' attribute list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int SERVER_RUNTIME__GROUP4 = 11;
-
-    /**
-     * The feature id for the '<em><b>Classpath</b></em>' containment reference list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int SERVER_RUNTIME__CLASSPATH = 12;
-
-    /**
-     * The feature id for the '<em><b>Jndi Connection</b></em>' containment reference.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int SERVER_RUNTIME__JNDI_CONNECTION = 13;
-
-    /**
-     * The feature id for the '<em><b>Name</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int SERVER_RUNTIME__NAME = 14;
-
-    /**
-     * The feature id for the '<em><b>Version</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int SERVER_RUNTIME__VERSION = 15;
-
-    /**
-     * The number of structural features of the the '<em>Server Runtime</em>' class.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	int SERVER_RUNTIME_FEATURE_COUNT = 16;
-
-    /**
-     * Returns the meta object for class '{@link org.eclipse.jst.server.generic.servertype.definition.ArchiveType <em>Archive Type</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Archive Type</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ArchiveType
-     * @generated
-     */
-	EClass getArchiveType();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.ArchiveType#getPath <em>Path</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Path</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ArchiveType#getPath()
-     * @see #getArchiveType()
-     * @generated
-     */
-	EAttribute getArchiveType_Path();
-
-    /**
-     * Returns the meta object for class '{@link org.eclipse.jst.server.generic.servertype.definition.Classpath <em>Classpath</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Classpath</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Classpath
-     * @generated
-     */
-	EClass getClasspath();
-
-    /**
-     * Returns the meta object for the attribute list '{@link org.eclipse.jst.server.generic.servertype.definition.Classpath#getGroup <em>Group</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the attribute list '<em>Group</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Classpath#getGroup()
-     * @see #getClasspath()
-     * @generated
-     */
-    EAttribute getClasspath_Group();
-
-    /**
-     * Returns the meta object for the containment reference list '{@link org.eclipse.jst.server.generic.servertype.definition.Classpath#getArchive <em>Archive</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the containment reference list '<em>Archive</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Classpath#getArchive()
-     * @see #getClasspath()
-     * @generated
-     */
-	EReference getClasspath_Archive();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.Classpath#getId <em>Id</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Id</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Classpath#getId()
-     * @see #getClasspath()
-     * @generated
-     */
-	EAttribute getClasspath_Id();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.Classpath#isIsLibrary <em>Is Library</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Is Library</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Classpath#isIsLibrary()
-     * @see #getClasspath()
-     * @generated
-     */
-	EAttribute getClasspath_IsLibrary();
-
-    /**
-     * Returns the meta object for class '{@link org.eclipse.jst.server.generic.servertype.definition.JndiConnection <em>Jndi Connection</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Jndi Connection</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.JndiConnection
-     * @generated
-     */
-    EClass getJndiConnection();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.JndiConnection#getProviderUrl <em>Provider Url</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Provider Url</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.JndiConnection#getProviderUrl()
-     * @see #getJndiConnection()
-     * @generated
-     */
-    EAttribute getJndiConnection_ProviderUrl();
-
-    /**
-     * Returns the meta object for the attribute list '{@link org.eclipse.jst.server.generic.servertype.definition.JndiConnection#getGroup <em>Group</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the attribute list '<em>Group</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.JndiConnection#getGroup()
-     * @see #getJndiConnection()
-     * @generated
-     */
-    EAttribute getJndiConnection_Group();
-
-    /**
-     * Returns the meta object for the containment reference list '{@link org.eclipse.jst.server.generic.servertype.definition.JndiConnection#getJndiProperty <em>Jndi Property</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the containment reference list '<em>Jndi Property</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.JndiConnection#getJndiProperty()
-     * @see #getJndiConnection()
-     * @generated
-     */
-    EReference getJndiConnection_JndiProperty();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.JndiConnection#getInitialContextFactory <em>Initial Context Factory</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Initial Context Factory</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.JndiConnection#getInitialContextFactory()
-     * @see #getJndiConnection()
-     * @generated
-     */
-    EAttribute getJndiConnection_InitialContextFactory();
-
-    /**
-     * Returns the meta object for class '{@link org.eclipse.jst.server.generic.servertype.definition.JndiProperty <em>Jndi Property</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Jndi Property</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.JndiProperty
-     * @generated
-     */
-    EClass getJndiProperty();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.JndiProperty#getName <em>Name</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Name</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.JndiProperty#getName()
-     * @see #getJndiProperty()
-     * @generated
-     */
-    EAttribute getJndiProperty_Name();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.JndiProperty#getValue <em>Value</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Value</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.JndiProperty#getValue()
-     * @see #getJndiProperty()
-     * @generated
-     */
-    EAttribute getJndiProperty_Value();
-
-    /**
-     * Returns the meta object for class '{@link org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration <em>Launch Configuration</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Launch Configuration</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration
-     * @generated
-     */
-	EClass getLaunchConfiguration();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getMainClass <em>Main Class</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Main Class</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getMainClass()
-     * @see #getLaunchConfiguration()
-     * @generated
-     */
-    EAttribute getLaunchConfiguration_MainClass();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getWorkingDirectory <em>Working Directory</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Working Directory</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getWorkingDirectory()
-     * @see #getLaunchConfiguration()
-     * @generated
-     */
-	EAttribute getLaunchConfiguration_WorkingDirectory();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getProgramArguments <em>Program Arguments</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Program Arguments</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getProgramArguments()
-     * @see #getLaunchConfiguration()
-     * @generated
-     */
-	EAttribute getLaunchConfiguration_ProgramArguments();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getVmParameters <em>Vm Parameters</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Vm Parameters</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getVmParameters()
-     * @see #getLaunchConfiguration()
-     * @generated
-     */
-	EAttribute getLaunchConfiguration_VmParameters();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getClasspathReference <em>Classpath Reference</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Classpath Reference</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getClasspathReference()
-     * @see #getLaunchConfiguration()
-     * @generated
-     */
-	EAttribute getLaunchConfiguration_ClasspathReference();
-
-    /**
-     * Returns the meta object for class '{@link org.eclipse.jst.server.generic.servertype.definition.Module <em>Module</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Module</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Module
-     * @generated
-     */
-	EClass getModule();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.Module#getType <em>Type</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Type</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Module#getType()
-     * @see #getModule()
-     * @generated
-     */
-	EAttribute getModule_Type();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.Module#getPublishDir <em>Publish Dir</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Publish Dir</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Module#getPublishDir()
-     * @see #getModule()
-     * @generated
-     */
-	EAttribute getModule_PublishDir();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.Module#getPublisherReference <em>Publisher Reference</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Publisher Reference</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Module#getPublisherReference()
-     * @see #getModule()
-     * @generated
-     */
-	EAttribute getModule_PublisherReference();
-
-    /**
-     * Returns the meta object for class '{@link org.eclipse.jst.server.generic.servertype.definition.Port <em>Port</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Port</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Port
-     * @generated
-     */
-	EClass getPort();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.Port#getNo <em>No</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>No</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Port#getNo()
-     * @see #getPort()
-     * @generated
-     */
-	EAttribute getPort_No();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.Port#getName <em>Name</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Name</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Port#getName()
-     * @see #getPort()
-     * @generated
-     */
-	EAttribute getPort_Name();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.Port#getProtocol <em>Protocol</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Protocol</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Port#getProtocol()
-     * @see #getPort()
-     * @generated
-     */
-	EAttribute getPort_Protocol();
-
-    /**
-     * Returns the meta object for class '{@link org.eclipse.jst.server.generic.servertype.definition.Project <em>Project</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Project</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Project
-     * @generated
-     */
-	EClass getProject();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.Project#getClasspathReference <em>Classpath Reference</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Classpath Reference</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Project#getClasspathReference()
-     * @see #getProject()
-     * @generated
-     */
-	EAttribute getProject_ClasspathReference();
-
-    /**
-     * Returns the meta object for class '{@link org.eclipse.jst.server.generic.servertype.definition.Property <em>Property</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Property</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Property
-     * @generated
-     */
-	EClass getProperty();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.Property#getContext <em>Context</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Context</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Property#getContext()
-     * @see #getProperty()
-     * @generated
-     */
-	EAttribute getProperty_Context();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.Property#getDefault <em>Default</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Default</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Property#getDefault()
-     * @see #getProperty()
-     * @generated
-     */
-	EAttribute getProperty_Default();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.Property#getId <em>Id</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Id</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Property#getId()
-     * @see #getProperty()
-     * @generated
-     */
-	EAttribute getProperty_Id();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.Property#getLabel <em>Label</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Label</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Property#getLabel()
-     * @see #getProperty()
-     * @generated
-     */
-	EAttribute getProperty_Label();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.Property#getType <em>Type</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Type</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Property#getType()
-     * @see #getProperty()
-     * @generated
-     */
-	EAttribute getProperty_Type();
-
-    /**
-     * Returns the meta object for class '{@link org.eclipse.jst.server.generic.servertype.definition.Publisher <em>Publisher</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Publisher</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Publisher
-     * @generated
-     */
-	EClass getPublisher();
-
-    /**
-     * Returns the meta object for the attribute list '{@link org.eclipse.jst.server.generic.servertype.definition.Publisher#getGroup <em>Group</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the attribute list '<em>Group</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Publisher#getGroup()
-     * @see #getPublisher()
-     * @generated
-     */
-    EAttribute getPublisher_Group();
-
-    /**
-     * Returns the meta object for the containment reference list '{@link org.eclipse.jst.server.generic.servertype.definition.Publisher#getPublisherdata <em>Publisherdata</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the containment reference list '<em>Publisherdata</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Publisher#getPublisherdata()
-     * @see #getPublisher()
-     * @generated
-     */
-    EReference getPublisher_Publisherdata();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.Publisher#getId <em>Id</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Id</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Publisher#getId()
-     * @see #getPublisher()
-     * @generated
-     */
-	EAttribute getPublisher_Id();
-
-    /**
-     * Returns the meta object for class '{@link org.eclipse.jst.server.generic.servertype.definition.PublisherData <em>Publisher Data</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Publisher Data</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.PublisherData
-     * @generated
-     */
-    EClass getPublisherData();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.PublisherData#getDataname <em>Dataname</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Dataname</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.PublisherData#getDataname()
-     * @see #getPublisherData()
-     * @generated
-     */
-    EAttribute getPublisherData_Dataname();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.PublisherData#getDatavalue <em>Datavalue</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Datavalue</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.PublisherData#getDatavalue()
-     * @see #getPublisherData()
-     * @generated
-     */
-    EAttribute getPublisherData_Datavalue();
-
-    /**
-     * Returns the meta object for class '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime <em>Server Runtime</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Server Runtime</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime
-     * @generated
-     */
-	EClass getServerRuntime();
-
-    /**
-     * Returns the meta object for the attribute list '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getGroup <em>Group</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the attribute list '<em>Group</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getGroup()
-     * @see #getServerRuntime()
-     * @generated
-     */
-    EAttribute getServerRuntime_Group();
-
-    /**
-     * Returns the meta object for the containment reference list '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getProperty <em>Property</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the containment reference list '<em>Property</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getProperty()
-     * @see #getServerRuntime()
-     * @generated
-     */
-    EReference getServerRuntime_Property();
-
-    /**
-     * Returns the meta object for the attribute list '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getGroup1 <em>Group1</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the attribute list '<em>Group1</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getGroup1()
-     * @see #getServerRuntime()
-     * @generated
-     */
-    EAttribute getServerRuntime_Group1();
-
-    /**
-     * Returns the meta object for the containment reference list '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getPort <em>Port</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the containment reference list '<em>Port</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getPort()
-     * @see #getServerRuntime()
-     * @generated
-     */
-    EReference getServerRuntime_Port();
-
-    /**
-     * Returns the meta object for the attribute list '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getGroup2 <em>Group2</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the attribute list '<em>Group2</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getGroup2()
-     * @see #getServerRuntime()
-     * @generated
-     */
-    EAttribute getServerRuntime_Group2();
-
-    /**
-     * Returns the meta object for the containment reference list '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getModule <em>Module</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the containment reference list '<em>Module</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getModule()
-     * @see #getServerRuntime()
-     * @generated
-     */
-    EReference getServerRuntime_Module();
-
-    /**
-     * Returns the meta object for the containment reference '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getProject <em>Project</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the containment reference '<em>Project</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getProject()
-     * @see #getServerRuntime()
-     * @generated
-     */
-	EReference getServerRuntime_Project();
-
-    /**
-     * Returns the meta object for the containment reference '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getStart <em>Start</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the containment reference '<em>Start</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getStart()
-     * @see #getServerRuntime()
-     * @generated
-     */
-	EReference getServerRuntime_Start();
-
-    /**
-     * Returns the meta object for the containment reference '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getStop <em>Stop</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the containment reference '<em>Stop</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getStop()
-     * @see #getServerRuntime()
-     * @generated
-     */
-	EReference getServerRuntime_Stop();
-
-    /**
-     * Returns the meta object for the attribute list '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getGroup3 <em>Group3</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the attribute list '<em>Group3</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getGroup3()
-     * @see #getServerRuntime()
-     * @generated
-     */
-    EAttribute getServerRuntime_Group3();
-
-    /**
-     * Returns the meta object for the containment reference list '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getPublisher <em>Publisher</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the containment reference list '<em>Publisher</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getPublisher()
-     * @see #getServerRuntime()
-     * @generated
-     */
-    EReference getServerRuntime_Publisher();
-
-    /**
-     * Returns the meta object for the attribute list '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getGroup4 <em>Group4</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the attribute list '<em>Group4</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getGroup4()
-     * @see #getServerRuntime()
-     * @generated
-     */
-    EAttribute getServerRuntime_Group4();
-
-    /**
-     * Returns the meta object for the containment reference list '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getClasspath <em>Classpath</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the containment reference list '<em>Classpath</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getClasspath()
-     * @see #getServerRuntime()
-     * @generated
-     */
-    EReference getServerRuntime_Classpath();
-
-    /**
-     * Returns the meta object for the containment reference '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getJndiConnection <em>Jndi Connection</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the containment reference '<em>Jndi Connection</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getJndiConnection()
-     * @see #getServerRuntime()
-     * @generated
-     */
-    EReference getServerRuntime_JndiConnection();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getName <em>Name</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Name</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getName()
-     * @see #getServerRuntime()
-     * @generated
-     */
-	EAttribute getServerRuntime_Name();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getVersion <em>Version</em>}'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Version</em>'.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getVersion()
-     * @see #getServerRuntime()
-     * @generated
-     */
-	EAttribute getServerRuntime_Version();
-
-    /**
-     * Returns the factory that creates the instances of the model.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the factory that creates the instances of the model.
-     * @generated
-     */
-	ServerTypeFactory getServerTypeFactory();
-
-} //ServerTypePackage
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ArchiveTypeImpl.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ArchiveTypeImpl.java
deleted file mode 100644
index 9edac20..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ArchiveTypeImpl.java
+++ /dev/null
@@ -1,188 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: ArchiveTypeImpl.java,v 1.2 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-import org.eclipse.jst.server.generic.servertype.definition.ArchiveType;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Archive Type</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ArchiveTypeImpl#getPath <em>Path</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class ArchiveTypeImpl extends EObjectImpl implements ArchiveType {
-    /**
-     * The default value of the '{@link #getPath() <em>Path</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getPath()
-     * @generated
-     * @ordered
-     */
-	protected static final String PATH_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getPath() <em>Path</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getPath()
-     * @generated
-     * @ordered
-     */
-	protected String path = PATH_EDEFAULT;
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected ArchiveTypeImpl() {
-        super();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected EClass eStaticClass() {
-        return ServerTypePackage.eINSTANCE.getArchiveType();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getPath() {
-        return path;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setPath(String newPath) {
-        String oldPath = path;
-        path = newPath;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.ARCHIVE_TYPE__PATH, oldPath, path));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.ARCHIVE_TYPE__PATH:
-                return getPath();
-        }
-        return eDynamicGet(eFeature, resolve);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.ARCHIVE_TYPE__PATH:
-                setPath((String)newValue);
-                return;
-        }
-        eDynamicSet(eFeature, newValue);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eUnset(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.ARCHIVE_TYPE__PATH:
-                setPath(PATH_EDEFAULT);
-                return;
-        }
-        eDynamicUnset(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.ARCHIVE_TYPE__PATH:
-                return PATH_EDEFAULT == null ? path != null : !PATH_EDEFAULT.equals(path);
-        }
-        return eDynamicIsSet(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String toString() {
-        if (eIsProxy()) return super.toString();
-
-        StringBuffer result = new StringBuffer(super.toString());
-        result.append(" (path: ");
-        result.append(path);
-        result.append(')');
-        return result.toString();
-    }
-
-} //ArchiveTypeImpl
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ClasspathImpl.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ClasspathImpl.java
deleted file mode 100644
index 3297023..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ClasspathImpl.java
+++ /dev/null
@@ -1,358 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: ClasspathImpl.java,v 1.4 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.impl;
-
-import java.util.Collection;
-
-import java.util.List;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-import org.eclipse.emf.ecore.util.BasicFeatureMap;
-import org.eclipse.emf.ecore.util.FeatureMap;
-import org.eclipse.emf.ecore.util.InternalEList;
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-import org.eclipse.jst.server.generic.servertype.definition.Classpath;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Classpath</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ClasspathImpl#getGroup <em>Group</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ClasspathImpl#getArchive <em>Archive</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ClasspathImpl#getId <em>Id</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ClasspathImpl#isIsLibrary <em>Is Library</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class ClasspathImpl extends EObjectImpl implements Classpath {
-    /**
-     * The cached value of the '{@link #getGroup() <em>Group</em>}' attribute list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getGroup()
-     * @generated
-     * @ordered
-     */
-    protected FeatureMap group = null;
-
-    /**
-     * The default value of the '{@link #getId() <em>Id</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getId()
-     * @generated
-     * @ordered
-     */
-	protected static final String ID_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getId()
-     * @generated
-     * @ordered
-     */
-	protected String id = ID_EDEFAULT;
-
-    /**
-     * The default value of the '{@link #isIsLibrary() <em>Is Library</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #isIsLibrary()
-     * @generated
-     * @ordered
-     */
-	protected static final boolean IS_LIBRARY_EDEFAULT = false;
-
-    /**
-     * The cached value of the '{@link #isIsLibrary() <em>Is Library</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #isIsLibrary()
-     * @generated
-     * @ordered
-     */
-	protected boolean isLibrary = IS_LIBRARY_EDEFAULT;
-
-    /**
-     * This is true if the Is Library attribute has been set.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-	protected boolean isLibraryESet = false;
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected ClasspathImpl() {
-        super();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected EClass eStaticClass() {
-        return ServerTypePackage.eINSTANCE.getClasspath();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public FeatureMap getGroup() {
-        if (group == null) {
-            group = new BasicFeatureMap(this, ServerTypePackage.CLASSPATH__GROUP);
-        }
-        return group;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public List getArchive() {
-        return ((FeatureMap)getGroup()).list(ServerTypePackage.eINSTANCE.getClasspath_Archive());
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getId() {
-        return id;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setId(String newId) {
-        String oldId = id;
-        id = newId;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.CLASSPATH__ID, oldId, id));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public boolean isIsLibrary() {
-        return isLibrary;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setIsLibrary(boolean newIsLibrary) {
-        boolean oldIsLibrary = isLibrary;
-        isLibrary = newIsLibrary;
-        boolean oldIsLibraryESet = isLibraryESet;
-        isLibraryESet = true;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.CLASSPATH__IS_LIBRARY, oldIsLibrary, isLibrary, !oldIsLibraryESet));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void unsetIsLibrary() {
-        boolean oldIsLibrary = isLibrary;
-        boolean oldIsLibraryESet = isLibraryESet;
-        isLibrary = IS_LIBRARY_EDEFAULT;
-        isLibraryESet = false;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.UNSET, ServerTypePackage.CLASSPATH__IS_LIBRARY, oldIsLibrary, IS_LIBRARY_EDEFAULT, oldIsLibraryESet));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public boolean isSetIsLibrary() {
-        return isLibraryESet;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-        if (featureID >= 0) {
-            switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-                case ServerTypePackage.CLASSPATH__GROUP:
-                    return ((InternalEList)getGroup()).basicRemove(otherEnd, msgs);
-                case ServerTypePackage.CLASSPATH__ARCHIVE:
-                    return ((InternalEList)getArchive()).basicRemove(otherEnd, msgs);
-                default:
-                    return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-            }
-        }
-        return eBasicSetContainer(null, featureID, msgs);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.CLASSPATH__GROUP:
-                return getGroup();
-            case ServerTypePackage.CLASSPATH__ARCHIVE:
-                return getArchive();
-            case ServerTypePackage.CLASSPATH__ID:
-                return getId();
-            case ServerTypePackage.CLASSPATH__IS_LIBRARY:
-                return isIsLibrary() ? Boolean.TRUE : Boolean.FALSE;
-        }
-        return eDynamicGet(eFeature, resolve);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.CLASSPATH__GROUP:
-                getGroup().clear();
-                getGroup().addAll((Collection)newValue);
-                return;
-            case ServerTypePackage.CLASSPATH__ARCHIVE:
-                getArchive().clear();
-                getArchive().addAll((Collection)newValue);
-                return;
-            case ServerTypePackage.CLASSPATH__ID:
-                setId((String)newValue);
-                return;
-            case ServerTypePackage.CLASSPATH__IS_LIBRARY:
-                setIsLibrary(((Boolean)newValue).booleanValue());
-                return;
-        }
-        eDynamicSet(eFeature, newValue);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eUnset(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.CLASSPATH__GROUP:
-                getGroup().clear();
-                return;
-            case ServerTypePackage.CLASSPATH__ARCHIVE:
-                getArchive().clear();
-                return;
-            case ServerTypePackage.CLASSPATH__ID:
-                setId(ID_EDEFAULT);
-                return;
-            case ServerTypePackage.CLASSPATH__IS_LIBRARY:
-                unsetIsLibrary();
-                return;
-        }
-        eDynamicUnset(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.CLASSPATH__GROUP:
-                return group != null && !group.isEmpty();
-            case ServerTypePackage.CLASSPATH__ARCHIVE:
-                return !getArchive().isEmpty();
-            case ServerTypePackage.CLASSPATH__ID:
-                return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
-            case ServerTypePackage.CLASSPATH__IS_LIBRARY:
-                return isSetIsLibrary();
-        }
-        return eDynamicIsSet(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String toString() {
-        if (eIsProxy()) return super.toString();
-
-        StringBuffer result = new StringBuffer(super.toString());
-        result.append(" (group: ");
-        result.append(group);
-        result.append(", id: ");
-        result.append(id);
-        result.append(", isLibrary: ");
-        if (isLibraryESet) result.append(isLibrary); else result.append("<unset>");
-        result.append(')');
-        return result.toString();
-    }
-
-} //ClasspathImpl
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/JndiConnectionImpl.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/JndiConnectionImpl.java
deleted file mode 100644
index 759b9d7..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/JndiConnectionImpl.java
+++ /dev/null
@@ -1,301 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: JndiConnectionImpl.java,v 1.2 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.impl;
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-
-import org.eclipse.emf.ecore.util.BasicFeatureMap;
-import org.eclipse.emf.ecore.util.FeatureMap;
-import org.eclipse.emf.ecore.util.InternalEList;
-
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-import org.eclipse.jst.server.generic.servertype.definition.JndiConnection;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Jndi Connection</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.JndiConnectionImpl#getProviderUrl <em>Provider Url</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.JndiConnectionImpl#getGroup <em>Group</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.JndiConnectionImpl#getJndiProperty <em>Jndi Property</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.JndiConnectionImpl#getInitialContextFactory <em>Initial Context Factory</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class JndiConnectionImpl extends EObjectImpl implements JndiConnection {
-    /**
-     * The default value of the '{@link #getProviderUrl() <em>Provider Url</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getProviderUrl()
-     * @generated
-     * @ordered
-     */
-    protected static final String PROVIDER_URL_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getProviderUrl() <em>Provider Url</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getProviderUrl()
-     * @generated
-     * @ordered
-     */
-    protected String providerUrl = PROVIDER_URL_EDEFAULT;
-
-    /**
-     * The cached value of the '{@link #getGroup() <em>Group</em>}' attribute list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getGroup()
-     * @generated
-     * @ordered
-     */
-    protected FeatureMap group = null;
-
-    /**
-     * The default value of the '{@link #getInitialContextFactory() <em>Initial Context Factory</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getInitialContextFactory()
-     * @generated
-     * @ordered
-     */
-    protected static final String INITIAL_CONTEXT_FACTORY_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getInitialContextFactory() <em>Initial Context Factory</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getInitialContextFactory()
-     * @generated
-     * @ordered
-     */
-    protected String initialContextFactory = INITIAL_CONTEXT_FACTORY_EDEFAULT;
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected JndiConnectionImpl() {
-        super();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected EClass eStaticClass() {
-        return ServerTypePackage.eINSTANCE.getJndiConnection();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public String getProviderUrl() {
-        return providerUrl;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void setProviderUrl(String newProviderUrl) {
-        String oldProviderUrl = providerUrl;
-        providerUrl = newProviderUrl;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.JNDI_CONNECTION__PROVIDER_URL, oldProviderUrl, providerUrl));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public FeatureMap getGroup() {
-        if (group == null) {
-            group = new BasicFeatureMap(this, ServerTypePackage.JNDI_CONNECTION__GROUP);
-        }
-        return group;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public List getJndiProperty() {
-        return ((FeatureMap)getGroup()).list(ServerTypePackage.eINSTANCE.getJndiConnection_JndiProperty());
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public String getInitialContextFactory() {
-        return initialContextFactory;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void setInitialContextFactory(String newInitialContextFactory) {
-        String oldInitialContextFactory = initialContextFactory;
-        initialContextFactory = newInitialContextFactory;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.JNDI_CONNECTION__INITIAL_CONTEXT_FACTORY, oldInitialContextFactory, initialContextFactory));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-        if (featureID >= 0) {
-            switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-                case ServerTypePackage.JNDI_CONNECTION__GROUP:
-                    return ((InternalEList)getGroup()).basicRemove(otherEnd, msgs);
-                case ServerTypePackage.JNDI_CONNECTION__JNDI_PROPERTY:
-                    return ((InternalEList)getJndiProperty()).basicRemove(otherEnd, msgs);
-                default:
-                    return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-            }
-        }
-        return eBasicSetContainer(null, featureID, msgs);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.JNDI_CONNECTION__PROVIDER_URL:
-                return getProviderUrl();
-            case ServerTypePackage.JNDI_CONNECTION__GROUP:
-                return getGroup();
-            case ServerTypePackage.JNDI_CONNECTION__JNDI_PROPERTY:
-                return getJndiProperty();
-            case ServerTypePackage.JNDI_CONNECTION__INITIAL_CONTEXT_FACTORY:
-                return getInitialContextFactory();
-        }
-        return eDynamicGet(eFeature, resolve);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.JNDI_CONNECTION__PROVIDER_URL:
-                setProviderUrl((String)newValue);
-                return;
-            case ServerTypePackage.JNDI_CONNECTION__GROUP:
-                getGroup().clear();
-                getGroup().addAll((Collection)newValue);
-                return;
-            case ServerTypePackage.JNDI_CONNECTION__JNDI_PROPERTY:
-                getJndiProperty().clear();
-                getJndiProperty().addAll((Collection)newValue);
-                return;
-            case ServerTypePackage.JNDI_CONNECTION__INITIAL_CONTEXT_FACTORY:
-                setInitialContextFactory((String)newValue);
-                return;
-        }
-        eDynamicSet(eFeature, newValue);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void eUnset(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.JNDI_CONNECTION__PROVIDER_URL:
-                setProviderUrl(PROVIDER_URL_EDEFAULT);
-                return;
-            case ServerTypePackage.JNDI_CONNECTION__GROUP:
-                getGroup().clear();
-                return;
-            case ServerTypePackage.JNDI_CONNECTION__JNDI_PROPERTY:
-                getJndiProperty().clear();
-                return;
-            case ServerTypePackage.JNDI_CONNECTION__INITIAL_CONTEXT_FACTORY:
-                setInitialContextFactory(INITIAL_CONTEXT_FACTORY_EDEFAULT);
-                return;
-        }
-        eDynamicUnset(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.JNDI_CONNECTION__PROVIDER_URL:
-                return PROVIDER_URL_EDEFAULT == null ? providerUrl != null : !PROVIDER_URL_EDEFAULT.equals(providerUrl);
-            case ServerTypePackage.JNDI_CONNECTION__GROUP:
-                return group != null && !group.isEmpty();
-            case ServerTypePackage.JNDI_CONNECTION__JNDI_PROPERTY:
-                return !getJndiProperty().isEmpty();
-            case ServerTypePackage.JNDI_CONNECTION__INITIAL_CONTEXT_FACTORY:
-                return INITIAL_CONTEXT_FACTORY_EDEFAULT == null ? initialContextFactory != null : !INITIAL_CONTEXT_FACTORY_EDEFAULT.equals(initialContextFactory);
-        }
-        return eDynamicIsSet(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public String toString() {
-        if (eIsProxy()) return super.toString();
-
-        StringBuffer result = new StringBuffer(super.toString());
-        result.append(" (providerUrl: ");
-        result.append(providerUrl);
-        result.append(", group: ");
-        result.append(group);
-        result.append(", initialContextFactory: ");
-        result.append(initialContextFactory);
-        result.append(')');
-        return result.toString();
-    }
-
-} //JndiConnectionImpl
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/JndiPropertyImpl.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/JndiPropertyImpl.java
deleted file mode 100644
index 4d532c5..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/JndiPropertyImpl.java
+++ /dev/null
@@ -1,216 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: JndiPropertyImpl.java,v 1.2 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-import org.eclipse.jst.server.generic.servertype.definition.JndiProperty;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Jndi Property</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.JndiPropertyImpl#getName <em>Name</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.JndiPropertyImpl#getValue <em>Value</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class JndiPropertyImpl extends EObjectImpl implements JndiProperty {
-    /**
-     * The default value of the '{@link #getName() <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getName()
-     * @generated
-     * @ordered
-     */
-    protected static final String NAME_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getName()
-     * @generated
-     * @ordered
-     */
-    protected String name = NAME_EDEFAULT;
-
-    /**
-     * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getValue()
-     * @generated
-     * @ordered
-     */
-    protected static final String VALUE_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getValue()
-     * @generated
-     * @ordered
-     */
-    protected String value = VALUE_EDEFAULT;
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected JndiPropertyImpl() {
-        super();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected EClass eStaticClass() {
-        return ServerTypePackage.eINSTANCE.getJndiProperty();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public String getName() {
-        return name;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void setName(String newName) {
-        String oldName = name;
-        name = newName;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.JNDI_PROPERTY__NAME, oldName, name));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public String getValue() {
-        return value;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void setValue(String newValue) {
-        String oldValue = value;
-        value = newValue;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.JNDI_PROPERTY__VALUE, oldValue, value));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.JNDI_PROPERTY__NAME:
-                return getName();
-            case ServerTypePackage.JNDI_PROPERTY__VALUE:
-                return getValue();
-        }
-        return eDynamicGet(eFeature, resolve);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.JNDI_PROPERTY__NAME:
-                setName((String)newValue);
-                return;
-            case ServerTypePackage.JNDI_PROPERTY__VALUE:
-                setValue((String)newValue);
-                return;
-        }
-        eDynamicSet(eFeature, newValue);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void eUnset(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.JNDI_PROPERTY__NAME:
-                setName(NAME_EDEFAULT);
-                return;
-            case ServerTypePackage.JNDI_PROPERTY__VALUE:
-                setValue(VALUE_EDEFAULT);
-                return;
-        }
-        eDynamicUnset(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.JNDI_PROPERTY__NAME:
-                return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-            case ServerTypePackage.JNDI_PROPERTY__VALUE:
-                return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
-        }
-        return eDynamicIsSet(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public String toString() {
-        if (eIsProxy()) return super.toString();
-
-        StringBuffer result = new StringBuffer(super.toString());
-        result.append(" (name: ");
-        result.append(name);
-        result.append(", value: ");
-        result.append(value);
-        result.append(')');
-        return result.toString();
-    }
-
-} //JndiPropertyImpl
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/LaunchConfigurationImpl.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/LaunchConfigurationImpl.java
deleted file mode 100644
index 51e365d..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/LaunchConfigurationImpl.java
+++ /dev/null
@@ -1,421 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: LaunchConfigurationImpl.java,v 1.4 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-import org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Launch Configuration</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.LaunchConfigurationImpl#getMainClass <em>Main Class</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.LaunchConfigurationImpl#getWorkingDirectory <em>Working Directory</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.LaunchConfigurationImpl#getProgramArguments <em>Program Arguments</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.LaunchConfigurationImpl#getVmParameters <em>Vm Parameters</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.LaunchConfigurationImpl#getClasspathReference <em>Classpath Reference</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class LaunchConfigurationImpl extends EObjectImpl implements LaunchConfiguration {
-    /**
-     * The default value of the '{@link #getMainClass() <em>Main Class</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getMainClass()
-     * @generated
-     * @ordered
-     */
-    protected static final String MAIN_CLASS_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getMainClass() <em>Main Class</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getMainClass()
-     * @generated
-     * @ordered
-     */
-    protected String mainClass = MAIN_CLASS_EDEFAULT;
-
-    /**
-     * The default value of the '{@link #getWorkingDirectory() <em>Working Directory</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getWorkingDirectory()
-     * @generated
-     * @ordered
-     */
-	protected static final String WORKING_DIRECTORY_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getWorkingDirectory() <em>Working Directory</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getWorkingDirectory()
-     * @generated
-     * @ordered
-     */
-	protected String workingDirectory = WORKING_DIRECTORY_EDEFAULT;
-
-    /**
-     * The default value of the '{@link #getProgramArguments() <em>Program Arguments</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getProgramArguments()
-     * @generated
-     * @ordered
-     */
-	protected static final String PROGRAM_ARGUMENTS_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getProgramArguments() <em>Program Arguments</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getProgramArguments()
-     * @generated
-     * @ordered
-     */
-	protected String programArguments = PROGRAM_ARGUMENTS_EDEFAULT;
-
-    /**
-     * The default value of the '{@link #getVmParameters() <em>Vm Parameters</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getVmParameters()
-     * @generated
-     * @ordered
-     */
-	protected static final String VM_PARAMETERS_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getVmParameters() <em>Vm Parameters</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getVmParameters()
-     * @generated
-     * @ordered
-     */
-	protected String vmParameters = VM_PARAMETERS_EDEFAULT;
-
-    /**
-     * The default value of the '{@link #getClasspathReference() <em>Classpath Reference</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getClasspathReference()
-     * @generated
-     * @ordered
-     */
-	protected static final String CLASSPATH_REFERENCE_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getClasspathReference() <em>Classpath Reference</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getClasspathReference()
-     * @generated
-     * @ordered
-     */
-	protected String classpathReference = CLASSPATH_REFERENCE_EDEFAULT;
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected LaunchConfigurationImpl() {
-        super();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected EClass eStaticClass() {
-        return ServerTypePackage.eINSTANCE.getLaunchConfiguration();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public String getMainClass() {
-        return mainClass;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void setMainClass(String newMainClass) {
-        String oldMainClass = mainClass;
-        mainClass = newMainClass;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.LAUNCH_CONFIGURATION__MAIN_CLASS, oldMainClass, mainClass));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getWorkingDirectory() {
-        return workingDirectory;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setWorkingDirectory(String newWorkingDirectory) {
-        String oldWorkingDirectory = workingDirectory;
-        workingDirectory = newWorkingDirectory;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.LAUNCH_CONFIGURATION__WORKING_DIRECTORY, oldWorkingDirectory, workingDirectory));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getProgramArguments() {
-		
-		return programArguments;
-    }
-
-	/**
-	 * @generated NOT
-	 * @return
-	 */
-	private String cleanWhiteSpace(String string)
-	{
-		if(string==null)
-			return null;
-        char[] chars = string.toCharArray();
-		for (int i = 0; i < chars.length; i++) {
-			if(Character.isWhitespace(chars[i]))
-				chars[i]=' ';
-		}
-		return (new String(chars)).trim();
-		
-	}
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setProgramArguments(String newProgramArguments) {
-        String oldProgramArguments = programArguments;
-        programArguments = cleanWhiteSpace(newProgramArguments);
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.LAUNCH_CONFIGURATION__PROGRAM_ARGUMENTS, oldProgramArguments, programArguments));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getVmParameters() {
-        return vmParameters;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setVmParameters(String newVmParameters) {
-        String oldVmParameters = vmParameters;
-        vmParameters = cleanWhiteSpace(newVmParameters);
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.LAUNCH_CONFIGURATION__VM_PARAMETERS, oldVmParameters, vmParameters));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getClasspathReference() {
-        return classpathReference;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setClasspathReference(String newClasspathReference) {
-        String oldClasspathReference = classpathReference;
-        classpathReference = newClasspathReference;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.LAUNCH_CONFIGURATION__CLASSPATH_REFERENCE, oldClasspathReference, classpathReference));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.LAUNCH_CONFIGURATION__MAIN_CLASS:
-                return getMainClass();
-            case ServerTypePackage.LAUNCH_CONFIGURATION__WORKING_DIRECTORY:
-                return getWorkingDirectory();
-            case ServerTypePackage.LAUNCH_CONFIGURATION__PROGRAM_ARGUMENTS:
-                return getProgramArguments();
-            case ServerTypePackage.LAUNCH_CONFIGURATION__VM_PARAMETERS:
-                return getVmParameters();
-            case ServerTypePackage.LAUNCH_CONFIGURATION__CLASSPATH_REFERENCE:
-                return getClasspathReference();
-        }
-        return eDynamicGet(eFeature, resolve);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.LAUNCH_CONFIGURATION__MAIN_CLASS:
-                setMainClass((String)newValue);
-                return;
-            case ServerTypePackage.LAUNCH_CONFIGURATION__WORKING_DIRECTORY:
-                setWorkingDirectory((String)newValue);
-                return;
-            case ServerTypePackage.LAUNCH_CONFIGURATION__PROGRAM_ARGUMENTS:
-                setProgramArguments((String)newValue);
-                return;
-            case ServerTypePackage.LAUNCH_CONFIGURATION__VM_PARAMETERS:
-                setVmParameters((String)newValue);
-                return;
-            case ServerTypePackage.LAUNCH_CONFIGURATION__CLASSPATH_REFERENCE:
-                setClasspathReference((String)newValue);
-                return;
-        }
-        eDynamicSet(eFeature, newValue);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eUnset(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.LAUNCH_CONFIGURATION__MAIN_CLASS:
-                setMainClass(MAIN_CLASS_EDEFAULT);
-                return;
-            case ServerTypePackage.LAUNCH_CONFIGURATION__WORKING_DIRECTORY:
-                setWorkingDirectory(WORKING_DIRECTORY_EDEFAULT);
-                return;
-            case ServerTypePackage.LAUNCH_CONFIGURATION__PROGRAM_ARGUMENTS:
-                setProgramArguments(PROGRAM_ARGUMENTS_EDEFAULT);
-                return;
-            case ServerTypePackage.LAUNCH_CONFIGURATION__VM_PARAMETERS:
-                setVmParameters(VM_PARAMETERS_EDEFAULT);
-                return;
-            case ServerTypePackage.LAUNCH_CONFIGURATION__CLASSPATH_REFERENCE:
-                setClasspathReference(CLASSPATH_REFERENCE_EDEFAULT);
-                return;
-        }
-        eDynamicUnset(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.LAUNCH_CONFIGURATION__MAIN_CLASS:
-                return MAIN_CLASS_EDEFAULT == null ? mainClass != null : !MAIN_CLASS_EDEFAULT.equals(mainClass);
-            case ServerTypePackage.LAUNCH_CONFIGURATION__WORKING_DIRECTORY:
-                return WORKING_DIRECTORY_EDEFAULT == null ? workingDirectory != null : !WORKING_DIRECTORY_EDEFAULT.equals(workingDirectory);
-            case ServerTypePackage.LAUNCH_CONFIGURATION__PROGRAM_ARGUMENTS:
-                return PROGRAM_ARGUMENTS_EDEFAULT == null ? programArguments != null : !PROGRAM_ARGUMENTS_EDEFAULT.equals(programArguments);
-            case ServerTypePackage.LAUNCH_CONFIGURATION__VM_PARAMETERS:
-                return VM_PARAMETERS_EDEFAULT == null ? vmParameters != null : !VM_PARAMETERS_EDEFAULT.equals(vmParameters);
-            case ServerTypePackage.LAUNCH_CONFIGURATION__CLASSPATH_REFERENCE:
-                return CLASSPATH_REFERENCE_EDEFAULT == null ? classpathReference != null : !CLASSPATH_REFERENCE_EDEFAULT.equals(classpathReference);
-        }
-        return eDynamicIsSet(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String toString() {
-        if (eIsProxy()) return super.toString();
-
-        StringBuffer result = new StringBuffer(super.toString());
-        result.append(" (mainClass: ");
-        result.append(mainClass);
-        result.append(", workingDirectory: ");
-        result.append(workingDirectory);
-        result.append(", programArguments: ");
-        result.append(programArguments);
-        result.append(", vmParameters: ");
-        result.append(vmParameters);
-        result.append(", classpathReference: ");
-        result.append(classpathReference);
-        result.append(')');
-        return result.toString();
-    }
-
-} //LaunchConfigurationImpl
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ModuleImpl.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ModuleImpl.java
deleted file mode 100644
index 91f3147..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ModuleImpl.java
+++ /dev/null
@@ -1,296 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: ModuleImpl.java,v 1.2 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-import org.eclipse.jst.server.generic.servertype.definition.Module;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Module</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ModuleImpl#getType <em>Type</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ModuleImpl#getPublishDir <em>Publish Dir</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ModuleImpl#getPublisherReference <em>Publisher Reference</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class ModuleImpl extends EObjectImpl implements Module {
-    /**
-     * The default value of the '{@link #getType() <em>Type</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getType()
-     * @generated
-     * @ordered
-     */
-	protected static final String TYPE_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getType()
-     * @generated
-     * @ordered
-     */
-	protected String type = TYPE_EDEFAULT;
-
-    /**
-     * The default value of the '{@link #getPublishDir() <em>Publish Dir</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getPublishDir()
-     * @generated
-     * @ordered
-     */
-	protected static final String PUBLISH_DIR_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getPublishDir() <em>Publish Dir</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getPublishDir()
-     * @generated
-     * @ordered
-     */
-	protected String publishDir = PUBLISH_DIR_EDEFAULT;
-
-    /**
-     * The default value of the '{@link #getPublisherReference() <em>Publisher Reference</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getPublisherReference()
-     * @generated
-     * @ordered
-     */
-	protected static final String PUBLISHER_REFERENCE_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getPublisherReference() <em>Publisher Reference</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getPublisherReference()
-     * @generated
-     * @ordered
-     */
-	protected String publisherReference = PUBLISHER_REFERENCE_EDEFAULT;
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected ModuleImpl() {
-        super();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected EClass eStaticClass() {
-        return ServerTypePackage.eINSTANCE.getModule();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getType() {
-        return type;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setType(String newType) {
-        String oldType = type;
-        type = newType;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.MODULE__TYPE, oldType, type));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getPublishDir() {
-        return publishDir;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setPublishDir(String newPublishDir) {
-        String oldPublishDir = publishDir;
-        publishDir = newPublishDir;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.MODULE__PUBLISH_DIR, oldPublishDir, publishDir));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getPublisherReference() {
-        return publisherReference;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setPublisherReference(String newPublisherReference) {
-        String oldPublisherReference = publisherReference;
-        publisherReference = newPublisherReference;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.MODULE__PUBLISHER_REFERENCE, oldPublisherReference, publisherReference));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.MODULE__TYPE:
-                return getType();
-            case ServerTypePackage.MODULE__PUBLISH_DIR:
-                return getPublishDir();
-            case ServerTypePackage.MODULE__PUBLISHER_REFERENCE:
-                return getPublisherReference();
-        }
-        return eDynamicGet(eFeature, resolve);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.MODULE__TYPE:
-                setType((String)newValue);
-                return;
-            case ServerTypePackage.MODULE__PUBLISH_DIR:
-                setPublishDir((String)newValue);
-                return;
-            case ServerTypePackage.MODULE__PUBLISHER_REFERENCE:
-                setPublisherReference((String)newValue);
-                return;
-        }
-        eDynamicSet(eFeature, newValue);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eUnset(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.MODULE__TYPE:
-                setType(TYPE_EDEFAULT);
-                return;
-            case ServerTypePackage.MODULE__PUBLISH_DIR:
-                setPublishDir(PUBLISH_DIR_EDEFAULT);
-                return;
-            case ServerTypePackage.MODULE__PUBLISHER_REFERENCE:
-                setPublisherReference(PUBLISHER_REFERENCE_EDEFAULT);
-                return;
-        }
-        eDynamicUnset(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.MODULE__TYPE:
-                return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals(type);
-            case ServerTypePackage.MODULE__PUBLISH_DIR:
-                return PUBLISH_DIR_EDEFAULT == null ? publishDir != null : !PUBLISH_DIR_EDEFAULT.equals(publishDir);
-            case ServerTypePackage.MODULE__PUBLISHER_REFERENCE:
-                return PUBLISHER_REFERENCE_EDEFAULT == null ? publisherReference != null : !PUBLISHER_REFERENCE_EDEFAULT.equals(publisherReference);
-        }
-        return eDynamicIsSet(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String toString() {
-        if (eIsProxy()) return super.toString();
-
-        StringBuffer result = new StringBuffer(super.toString());
-        result.append(" (type: ");
-        result.append(type);
-        result.append(", publishDir: ");
-        result.append(publishDir);
-        result.append(", publisherReference: ");
-        result.append(publisherReference);
-        result.append(')');
-        return result.toString();
-    }
-
-} //ModuleImpl
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/PortImpl.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/PortImpl.java
deleted file mode 100644
index 428798c..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/PortImpl.java
+++ /dev/null
@@ -1,296 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: PortImpl.java,v 1.2 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-import org.eclipse.jst.server.generic.servertype.definition.Port;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Port</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.PortImpl#getNo <em>No</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.PortImpl#getName <em>Name</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.PortImpl#getProtocol <em>Protocol</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class PortImpl extends EObjectImpl implements Port {
-    /**
-     * The default value of the '{@link #getNo() <em>No</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getNo()
-     * @generated
-     * @ordered
-     */
-	protected static final String NO_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getNo() <em>No</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getNo()
-     * @generated
-     * @ordered
-     */
-	protected String no = NO_EDEFAULT;
-
-    /**
-     * The default value of the '{@link #getName() <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getName()
-     * @generated
-     * @ordered
-     */
-	protected static final String NAME_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getName()
-     * @generated
-     * @ordered
-     */
-	protected String name = NAME_EDEFAULT;
-
-    /**
-     * The default value of the '{@link #getProtocol() <em>Protocol</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getProtocol()
-     * @generated
-     * @ordered
-     */
-	protected static final String PROTOCOL_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getProtocol() <em>Protocol</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getProtocol()
-     * @generated
-     * @ordered
-     */
-	protected String protocol = PROTOCOL_EDEFAULT;
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected PortImpl() {
-        super();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected EClass eStaticClass() {
-        return ServerTypePackage.eINSTANCE.getPort();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getNo() {
-        return no;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setNo(String newNo) {
-        String oldNo = no;
-        no = newNo;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.PORT__NO, oldNo, no));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getName() {
-        return name;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setName(String newName) {
-        String oldName = name;
-        name = newName;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.PORT__NAME, oldName, name));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getProtocol() {
-        return protocol;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setProtocol(String newProtocol) {
-        String oldProtocol = protocol;
-        protocol = newProtocol;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.PORT__PROTOCOL, oldProtocol, protocol));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PORT__NO:
-                return getNo();
-            case ServerTypePackage.PORT__NAME:
-                return getName();
-            case ServerTypePackage.PORT__PROTOCOL:
-                return getProtocol();
-        }
-        return eDynamicGet(eFeature, resolve);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PORT__NO:
-                setNo((String)newValue);
-                return;
-            case ServerTypePackage.PORT__NAME:
-                setName((String)newValue);
-                return;
-            case ServerTypePackage.PORT__PROTOCOL:
-                setProtocol((String)newValue);
-                return;
-        }
-        eDynamicSet(eFeature, newValue);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eUnset(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PORT__NO:
-                setNo(NO_EDEFAULT);
-                return;
-            case ServerTypePackage.PORT__NAME:
-                setName(NAME_EDEFAULT);
-                return;
-            case ServerTypePackage.PORT__PROTOCOL:
-                setProtocol(PROTOCOL_EDEFAULT);
-                return;
-        }
-        eDynamicUnset(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PORT__NO:
-                return NO_EDEFAULT == null ? no != null : !NO_EDEFAULT.equals(no);
-            case ServerTypePackage.PORT__NAME:
-                return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-            case ServerTypePackage.PORT__PROTOCOL:
-                return PROTOCOL_EDEFAULT == null ? protocol != null : !PROTOCOL_EDEFAULT.equals(protocol);
-        }
-        return eDynamicIsSet(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String toString() {
-        if (eIsProxy()) return super.toString();
-
-        StringBuffer result = new StringBuffer(super.toString());
-        result.append(" (no: ");
-        result.append(no);
-        result.append(", name: ");
-        result.append(name);
-        result.append(", protocol: ");
-        result.append(protocol);
-        result.append(')');
-        return result.toString();
-    }
-
-} //PortImpl
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ProjectImpl.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ProjectImpl.java
deleted file mode 100644
index 97ef83e..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ProjectImpl.java
+++ /dev/null
@@ -1,188 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: ProjectImpl.java,v 1.2 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-import org.eclipse.jst.server.generic.servertype.definition.Project;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Project</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ProjectImpl#getClasspathReference <em>Classpath Reference</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class ProjectImpl extends EObjectImpl implements Project {
-    /**
-     * The default value of the '{@link #getClasspathReference() <em>Classpath Reference</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getClasspathReference()
-     * @generated
-     * @ordered
-     */
-	protected static final String CLASSPATH_REFERENCE_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getClasspathReference() <em>Classpath Reference</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getClasspathReference()
-     * @generated
-     * @ordered
-     */
-	protected String classpathReference = CLASSPATH_REFERENCE_EDEFAULT;
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected ProjectImpl() {
-        super();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected EClass eStaticClass() {
-        return ServerTypePackage.eINSTANCE.getProject();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getClasspathReference() {
-        return classpathReference;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setClasspathReference(String newClasspathReference) {
-        String oldClasspathReference = classpathReference;
-        classpathReference = newClasspathReference;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.PROJECT__CLASSPATH_REFERENCE, oldClasspathReference, classpathReference));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PROJECT__CLASSPATH_REFERENCE:
-                return getClasspathReference();
-        }
-        return eDynamicGet(eFeature, resolve);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PROJECT__CLASSPATH_REFERENCE:
-                setClasspathReference((String)newValue);
-                return;
-        }
-        eDynamicSet(eFeature, newValue);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eUnset(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PROJECT__CLASSPATH_REFERENCE:
-                setClasspathReference(CLASSPATH_REFERENCE_EDEFAULT);
-                return;
-        }
-        eDynamicUnset(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PROJECT__CLASSPATH_REFERENCE:
-                return CLASSPATH_REFERENCE_EDEFAULT == null ? classpathReference != null : !CLASSPATH_REFERENCE_EDEFAULT.equals(classpathReference);
-        }
-        return eDynamicIsSet(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String toString() {
-        if (eIsProxy()) return super.toString();
-
-        StringBuffer result = new StringBuffer(super.toString());
-        result.append(" (classpathReference: ");
-        result.append(classpathReference);
-        result.append(')');
-        return result.toString();
-    }
-
-} //ProjectImpl
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/PropertyImpl.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/PropertyImpl.java
deleted file mode 100644
index 5cfd2f8..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/PropertyImpl.java
+++ /dev/null
@@ -1,404 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: PropertyImpl.java,v 1.2 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-import org.eclipse.jst.server.generic.servertype.definition.Property;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Property</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.PropertyImpl#getContext <em>Context</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.PropertyImpl#getDefault <em>Default</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.PropertyImpl#getId <em>Id</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.PropertyImpl#getLabel <em>Label</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.PropertyImpl#getType <em>Type</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class PropertyImpl extends EObjectImpl implements Property {
-    /**
-     * The default value of the '{@link #getContext() <em>Context</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getContext()
-     * @generated
-     * @ordered
-     */
-	protected static final String CONTEXT_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getContext() <em>Context</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getContext()
-     * @generated
-     * @ordered
-     */
-	protected String context = CONTEXT_EDEFAULT;
-
-    /**
-     * The default value of the '{@link #getDefault() <em>Default</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getDefault()
-     * @generated
-     * @ordered
-     */
-	protected static final String DEFAULT_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getDefault() <em>Default</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getDefault()
-     * @generated
-     * @ordered
-     */
-	protected String default_ = DEFAULT_EDEFAULT;
-
-    /**
-     * The default value of the '{@link #getId() <em>Id</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getId()
-     * @generated
-     * @ordered
-     */
-	protected static final String ID_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getId()
-     * @generated
-     * @ordered
-     */
-	protected String id = ID_EDEFAULT;
-
-    /**
-     * The default value of the '{@link #getLabel() <em>Label</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getLabel()
-     * @generated
-     * @ordered
-     */
-	protected static final String LABEL_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getLabel() <em>Label</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getLabel()
-     * @generated
-     * @ordered
-     */
-	protected String label = LABEL_EDEFAULT;
-
-    /**
-     * The default value of the '{@link #getType() <em>Type</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getType()
-     * @generated
-     * @ordered
-     */
-	protected static final String TYPE_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getType()
-     * @generated
-     * @ordered
-     */
-	protected String type = TYPE_EDEFAULT;
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected PropertyImpl() {
-        super();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected EClass eStaticClass() {
-        return ServerTypePackage.eINSTANCE.getProperty();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getContext() {
-        return context;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setContext(String newContext) {
-        String oldContext = context;
-        context = newContext;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.PROPERTY__CONTEXT, oldContext, context));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getDefault() {
-        return default_;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setDefault(String newDefault) {
-        String oldDefault = default_;
-        default_ = newDefault;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.PROPERTY__DEFAULT, oldDefault, default_));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getId() {
-        return id;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setId(String newId) {
-        String oldId = id;
-        id = newId;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.PROPERTY__ID, oldId, id));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getLabel() {
-        return label;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setLabel(String newLabel) {
-        String oldLabel = label;
-        label = newLabel;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.PROPERTY__LABEL, oldLabel, label));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getType() {
-        return type;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setType(String newType) {
-        String oldType = type;
-        type = newType;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.PROPERTY__TYPE, oldType, type));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PROPERTY__CONTEXT:
-                return getContext();
-            case ServerTypePackage.PROPERTY__DEFAULT:
-                return getDefault();
-            case ServerTypePackage.PROPERTY__ID:
-                return getId();
-            case ServerTypePackage.PROPERTY__LABEL:
-                return getLabel();
-            case ServerTypePackage.PROPERTY__TYPE:
-                return getType();
-        }
-        return eDynamicGet(eFeature, resolve);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PROPERTY__CONTEXT:
-                setContext((String)newValue);
-                return;
-            case ServerTypePackage.PROPERTY__DEFAULT:
-                setDefault((String)newValue);
-                return;
-            case ServerTypePackage.PROPERTY__ID:
-                setId((String)newValue);
-                return;
-            case ServerTypePackage.PROPERTY__LABEL:
-                setLabel((String)newValue);
-                return;
-            case ServerTypePackage.PROPERTY__TYPE:
-                setType((String)newValue);
-                return;
-        }
-        eDynamicSet(eFeature, newValue);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eUnset(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PROPERTY__CONTEXT:
-                setContext(CONTEXT_EDEFAULT);
-                return;
-            case ServerTypePackage.PROPERTY__DEFAULT:
-                setDefault(DEFAULT_EDEFAULT);
-                return;
-            case ServerTypePackage.PROPERTY__ID:
-                setId(ID_EDEFAULT);
-                return;
-            case ServerTypePackage.PROPERTY__LABEL:
-                setLabel(LABEL_EDEFAULT);
-                return;
-            case ServerTypePackage.PROPERTY__TYPE:
-                setType(TYPE_EDEFAULT);
-                return;
-        }
-        eDynamicUnset(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PROPERTY__CONTEXT:
-                return CONTEXT_EDEFAULT == null ? context != null : !CONTEXT_EDEFAULT.equals(context);
-            case ServerTypePackage.PROPERTY__DEFAULT:
-                return DEFAULT_EDEFAULT == null ? default_ != null : !DEFAULT_EDEFAULT.equals(default_);
-            case ServerTypePackage.PROPERTY__ID:
-                return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
-            case ServerTypePackage.PROPERTY__LABEL:
-                return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
-            case ServerTypePackage.PROPERTY__TYPE:
-                return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals(type);
-        }
-        return eDynamicIsSet(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String toString() {
-        if (eIsProxy()) return super.toString();
-
-        StringBuffer result = new StringBuffer(super.toString());
-        result.append(" (context: ");
-        result.append(context);
-        result.append(", default: ");
-        result.append(default_);
-        result.append(", id: ");
-        result.append(id);
-        result.append(", label: ");
-        result.append(label);
-        result.append(", type: ");
-        result.append(type);
-        result.append(')');
-        return result.toString();
-    }
-
-} //PropertyImpl
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/PublisherDataImpl.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/PublisherDataImpl.java
deleted file mode 100644
index 32389a1..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/PublisherDataImpl.java
+++ /dev/null
@@ -1,216 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: PublisherDataImpl.java,v 1.2 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-import org.eclipse.jst.server.generic.servertype.definition.PublisherData;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Publisher Data</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.PublisherDataImpl#getDataname <em>Dataname</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.PublisherDataImpl#getDatavalue <em>Datavalue</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class PublisherDataImpl extends EObjectImpl implements PublisherData {
-    /**
-     * The default value of the '{@link #getDataname() <em>Dataname</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getDataname()
-     * @generated
-     * @ordered
-     */
-    protected static final String DATANAME_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getDataname() <em>Dataname</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getDataname()
-     * @generated
-     * @ordered
-     */
-    protected String dataname = DATANAME_EDEFAULT;
-
-    /**
-     * The default value of the '{@link #getDatavalue() <em>Datavalue</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getDatavalue()
-     * @generated
-     * @ordered
-     */
-    protected static final String DATAVALUE_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getDatavalue() <em>Datavalue</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getDatavalue()
-     * @generated
-     * @ordered
-     */
-    protected String datavalue = DATAVALUE_EDEFAULT;
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected PublisherDataImpl() {
-        super();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected EClass eStaticClass() {
-        return ServerTypePackage.eINSTANCE.getPublisherData();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public String getDataname() {
-        return dataname;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void setDataname(String newDataname) {
-        String oldDataname = dataname;
-        dataname = newDataname;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.PUBLISHER_DATA__DATANAME, oldDataname, dataname));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public String getDatavalue() {
-        return datavalue;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void setDatavalue(String newDatavalue) {
-        String oldDatavalue = datavalue;
-        datavalue = newDatavalue;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.PUBLISHER_DATA__DATAVALUE, oldDatavalue, datavalue));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PUBLISHER_DATA__DATANAME:
-                return getDataname();
-            case ServerTypePackage.PUBLISHER_DATA__DATAVALUE:
-                return getDatavalue();
-        }
-        return eDynamicGet(eFeature, resolve);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void eSet(EStructuralFeature eFeature, Object newValue) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PUBLISHER_DATA__DATANAME:
-                setDataname((String)newValue);
-                return;
-            case ServerTypePackage.PUBLISHER_DATA__DATAVALUE:
-                setDatavalue((String)newValue);
-                return;
-        }
-        eDynamicSet(eFeature, newValue);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void eUnset(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PUBLISHER_DATA__DATANAME:
-                setDataname(DATANAME_EDEFAULT);
-                return;
-            case ServerTypePackage.PUBLISHER_DATA__DATAVALUE:
-                setDatavalue(DATAVALUE_EDEFAULT);
-                return;
-        }
-        eDynamicUnset(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public boolean eIsSet(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PUBLISHER_DATA__DATANAME:
-                return DATANAME_EDEFAULT == null ? dataname != null : !DATANAME_EDEFAULT.equals(dataname);
-            case ServerTypePackage.PUBLISHER_DATA__DATAVALUE:
-                return DATAVALUE_EDEFAULT == null ? datavalue != null : !DATAVALUE_EDEFAULT.equals(datavalue);
-        }
-        return eDynamicIsSet(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public String toString() {
-        if (eIsProxy()) return super.toString();
-
-        StringBuffer result = new StringBuffer(super.toString());
-        result.append(" (dataname: ");
-        result.append(dataname);
-        result.append(", datavalue: ");
-        result.append(datavalue);
-        result.append(')');
-        return result.toString();
-    }
-
-} //PublisherDataImpl
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/PublisherImpl.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/PublisherImpl.java
deleted file mode 100644
index 464d0ca..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/PublisherImpl.java
+++ /dev/null
@@ -1,268 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: PublisherImpl.java,v 1.4 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.impl;
-
-import java.util.Collection;
-import java.util.List;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-import org.eclipse.emf.ecore.util.BasicFeatureMap;
-import org.eclipse.emf.ecore.util.FeatureMap;
-import org.eclipse.emf.ecore.util.InternalEList;
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-import org.eclipse.jst.server.generic.servertype.definition.Publisher;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Publisher</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.PublisherImpl#getGroup <em>Group</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.PublisherImpl#getPublisherdata <em>Publisherdata</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.PublisherImpl#getId <em>Id</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class PublisherImpl extends EObjectImpl implements Publisher {
-    /**
-     * The cached value of the '{@link #getGroup() <em>Group</em>}' attribute list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getGroup()
-     * @generated
-     * @ordered
-     */
-    protected FeatureMap group = null;
-
-    /**
-     * The default value of the '{@link #getId() <em>Id</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getId()
-     * @generated
-     * @ordered
-     */
-	protected static final String ID_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getId()
-     * @generated
-     * @ordered
-     */
-	protected String id = ID_EDEFAULT;
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected PublisherImpl() {
-        super();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected EClass eStaticClass() {
-        return ServerTypePackage.eINSTANCE.getPublisher();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public FeatureMap getGroup() {
-        if (group == null) {
-            group = new BasicFeatureMap(this, ServerTypePackage.PUBLISHER__GROUP);
-        }
-        return group;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public List getPublisherdata() {
-        return ((FeatureMap)getGroup()).list(ServerTypePackage.eINSTANCE.getPublisher_Publisherdata());
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getId() {
-        return id;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setId(String newId) {
-        String oldId = id;
-        id = newId;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.PUBLISHER__ID, oldId, id));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-        if (featureID >= 0) {
-            switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-                case ServerTypePackage.PUBLISHER__GROUP:
-                    return ((InternalEList)getGroup()).basicRemove(otherEnd, msgs);
-                case ServerTypePackage.PUBLISHER__PUBLISHERDATA:
-                    return ((InternalEList)getPublisherdata()).basicRemove(otherEnd, msgs);
-                default:
-                    return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-            }
-        }
-        return eBasicSetContainer(null, featureID, msgs);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PUBLISHER__GROUP:
-                return getGroup();
-            case ServerTypePackage.PUBLISHER__PUBLISHERDATA:
-                return getPublisherdata();
-            case ServerTypePackage.PUBLISHER__ID:
-                return getId();
-        }
-        return eDynamicGet(eFeature, resolve);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PUBLISHER__GROUP:
-                getGroup().clear();
-                getGroup().addAll((Collection)newValue);
-                return;
-            case ServerTypePackage.PUBLISHER__PUBLISHERDATA:
-                getPublisherdata().clear();
-                getPublisherdata().addAll((Collection)newValue);
-                return;
-            case ServerTypePackage.PUBLISHER__ID:
-                setId((String)newValue);
-                return;
-        }
-        eDynamicSet(eFeature, newValue);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eUnset(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PUBLISHER__GROUP:
-                getGroup().clear();
-                return;
-            case ServerTypePackage.PUBLISHER__PUBLISHERDATA:
-                getPublisherdata().clear();
-                return;
-            case ServerTypePackage.PUBLISHER__ID:
-                setId(ID_EDEFAULT);
-                return;
-        }
-        eDynamicUnset(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.PUBLISHER__GROUP:
-                return group != null && !group.isEmpty();
-            case ServerTypePackage.PUBLISHER__PUBLISHERDATA:
-                return !getPublisherdata().isEmpty();
-            case ServerTypePackage.PUBLISHER__ID:
-                return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
-        }
-        return eDynamicIsSet(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String toString() {
-        if (eIsProxy()) return super.toString();
-
-        StringBuffer result = new StringBuffer(super.toString());
-        result.append(" (group: ");
-        result.append(group);
-        result.append(", id: ");
-        result.append(id);
-        result.append(')');
-        return result.toString();
-    }
-
-} //PublisherImpl
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ServerRuntimeImpl.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ServerRuntimeImpl.java
deleted file mode 100644
index 1047aca..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ServerRuntimeImpl.java
+++ /dev/null
@@ -1,966 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: ServerRuntimeImpl.java,v 1.4 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.impl;
-
-import java.util.Collection;
-import java.util.List;
-import java.util.Iterator;
-import java.util.Map;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-import org.eclipse.emf.ecore.util.BasicFeatureMap;
-import org.eclipse.emf.ecore.util.FeatureMap;
-import org.eclipse.emf.ecore.util.InternalEList;
-import org.eclipse.jst.server.generic.servertype.definition.JndiConnection;
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-import org.eclipse.jst.server.generic.internal.xml.Resolver;
-import org.eclipse.jst.server.generic.servertype.definition.Classpath;
-import org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration;
-import org.eclipse.jst.server.generic.servertype.definition.Module;
-import org.eclipse.jst.server.generic.servertype.definition.Project;
-import org.eclipse.jst.server.generic.servertype.definition.Publisher;
-import org.eclipse.jst.server.generic.servertype.definition.ServerRuntime;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Server Runtime</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerRuntimeImpl#getGroup <em>Group</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerRuntimeImpl#getProperty <em>Property</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerRuntimeImpl#getGroup1 <em>Group1</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerRuntimeImpl#getPort <em>Port</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerRuntimeImpl#getGroup2 <em>Group2</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerRuntimeImpl#getModule <em>Module</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerRuntimeImpl#getProject <em>Project</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerRuntimeImpl#getStart <em>Start</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerRuntimeImpl#getStop <em>Stop</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerRuntimeImpl#getGroup3 <em>Group3</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerRuntimeImpl#getPublisher <em>Publisher</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerRuntimeImpl#getGroup4 <em>Group4</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerRuntimeImpl#getClasspath <em>Classpath</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerRuntimeImpl#getJndiConnection <em>Jndi Connection</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerRuntimeImpl#getName <em>Name</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerRuntimeImpl#getVersion <em>Version</em>}</li>
- * </ul>
- * </p>
- *
- * @generated
- */
-public class ServerRuntimeImpl extends EObjectImpl implements ServerRuntime {
-    /**
-     * The cached value of the '{@link #getGroup() <em>Group</em>}' attribute list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getGroup()
-     * @generated
-     * @ordered
-     */
-    protected FeatureMap group = null;
-
-    /**
-     * The cached value of the '{@link #getGroup1() <em>Group1</em>}' attribute list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getGroup1()
-     * @generated
-     * @ordered
-     */
-    protected FeatureMap group1 = null;
-
-    /**
-     * The cached value of the '{@link #getGroup2() <em>Group2</em>}' attribute list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getGroup2()
-     * @generated
-     * @ordered
-     */
-    protected FeatureMap group2 = null;
-
-    /**
-     * The cached value of the '{@link #getProject() <em>Project</em>}' containment reference.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getProject()
-     * @generated
-     * @ordered
-     */
-	protected Project project = null;
-
-    /**
-     * The cached value of the '{@link #getStart() <em>Start</em>}' containment reference.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getStart()
-     * @generated
-     * @ordered
-     */
-	protected LaunchConfiguration start = null;
-
-    /**
-     * The cached value of the '{@link #getStop() <em>Stop</em>}' containment reference.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getStop()
-     * @generated
-     * @ordered
-     */
-	protected LaunchConfiguration stop = null;
-
-    /**
-     * The cached value of the '{@link #getGroup3() <em>Group3</em>}' attribute list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getGroup3()
-     * @generated
-     * @ordered
-     */
-    protected FeatureMap group3 = null;
-
-    /**
-     * The cached value of the '{@link #getGroup4() <em>Group4</em>}' attribute list.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getGroup4()
-     * @generated
-     * @ordered
-     */
-    protected FeatureMap group4 = null;
-
-    /**
-     * The cached value of the '{@link #getJndiConnection() <em>Jndi Connection</em>}' containment reference.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getJndiConnection()
-     * @generated
-     * @ordered
-     */
-    protected JndiConnection jndiConnection = null;
-
-    /**
-     * The default value of the '{@link #getName() <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getName()
-     * @generated
-     * @ordered
-     */
-	protected static final String NAME_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getName()
-     * @generated
-     * @ordered
-     */
-	protected String name = NAME_EDEFAULT;
-
-    /**
-     * The default value of the '{@link #getVersion() <em>Version</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getVersion()
-     * @generated
-     * @ordered
-     */
-	protected static final String VERSION_EDEFAULT = null;
-
-    /**
-     * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #getVersion()
-     * @generated
-     * @ordered
-     */
-	protected String version = VERSION_EDEFAULT;
-
-	/**
-	 * The cached value of the '{@link #getGroup() <em>Group</em>}' attribute list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getGroup()
-	 * @generated NOT
-	 * @ordered
-	 */
-	protected String filename = null;
-	
-
-	/**
-	 * The cached value of the '{@link #getGroup() <em>Group</em>}' attribute list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getGroup()
-	 * @generated NOT
-	 * @ordered
-	 */
-	protected Resolver resolver = new Resolver(this);
-	private String declaringConfigurationElementNamespace;
-    private String id =null;
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected ServerRuntimeImpl() {
-        super();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected EClass eStaticClass() {
-        return ServerTypePackage.eINSTANCE.getServerRuntime();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public FeatureMap getGroup() {
-        if (group == null) {
-            group = new BasicFeatureMap(this, ServerTypePackage.SERVER_RUNTIME__GROUP);
-        }
-        return group;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public List getProperty() {
-        return ((FeatureMap)getGroup()).list(ServerTypePackage.eINSTANCE.getServerRuntime_Property());
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public FeatureMap getGroup1() {
-        if (group1 == null) {
-            group1 = new BasicFeatureMap(this, ServerTypePackage.SERVER_RUNTIME__GROUP1);
-        }
-        return group1;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public List getPort() {
-        return ((FeatureMap)getGroup1()).list(ServerTypePackage.eINSTANCE.getServerRuntime_Port());
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public FeatureMap getGroup2() {
-        if (group2 == null) {
-            group2 = new BasicFeatureMap(this, ServerTypePackage.SERVER_RUNTIME__GROUP2);
-        }
-        return group2;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public List getModule() {
-        return ((FeatureMap)getGroup2()).list(ServerTypePackage.eINSTANCE.getServerRuntime_Module());
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public Project getProject() {
-        return project;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public NotificationChain basicSetProject(Project newProject, NotificationChain msgs) {
-        Project oldProject = project;
-        project = newProject;
-        if (eNotificationRequired()) {
-            ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, ServerTypePackage.SERVER_RUNTIME__PROJECT, oldProject, newProject);
-            if (msgs == null) msgs = notification; else msgs.add(notification);
-        }
-        return msgs;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setProject(Project newProject) {
-        if (newProject != project) {
-            NotificationChain msgs = null;
-            if (project != null)
-                msgs = ((InternalEObject)project).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - ServerTypePackage.SERVER_RUNTIME__PROJECT, null, msgs);
-            if (newProject != null)
-                msgs = ((InternalEObject)newProject).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - ServerTypePackage.SERVER_RUNTIME__PROJECT, null, msgs);
-            msgs = basicSetProject(newProject, msgs);
-            if (msgs != null) msgs.dispatch();
-        }
-        else if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.SERVER_RUNTIME__PROJECT, newProject, newProject));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public LaunchConfiguration getStart() {
-        return start;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public NotificationChain basicSetStart(LaunchConfiguration newStart, NotificationChain msgs) {
-        LaunchConfiguration oldStart = start;
-        start = newStart;
-        if (eNotificationRequired()) {
-            ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, ServerTypePackage.SERVER_RUNTIME__START, oldStart, newStart);
-            if (msgs == null) msgs = notification; else msgs.add(notification);
-        }
-        return msgs;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setStart(LaunchConfiguration newStart) {
-        if (newStart != start) {
-            NotificationChain msgs = null;
-            if (start != null)
-                msgs = ((InternalEObject)start).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - ServerTypePackage.SERVER_RUNTIME__START, null, msgs);
-            if (newStart != null)
-                msgs = ((InternalEObject)newStart).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - ServerTypePackage.SERVER_RUNTIME__START, null, msgs);
-            msgs = basicSetStart(newStart, msgs);
-            if (msgs != null) msgs.dispatch();
-        }
-        else if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.SERVER_RUNTIME__START, newStart, newStart));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public LaunchConfiguration getStop() {
-        return stop;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public NotificationChain basicSetStop(LaunchConfiguration newStop, NotificationChain msgs) {
-        LaunchConfiguration oldStop = stop;
-        stop = newStop;
-        if (eNotificationRequired()) {
-            ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, ServerTypePackage.SERVER_RUNTIME__STOP, oldStop, newStop);
-            if (msgs == null) msgs = notification; else msgs.add(notification);
-        }
-        return msgs;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setStop(LaunchConfiguration newStop) {
-        if (newStop != stop) {
-            NotificationChain msgs = null;
-            if (stop != null)
-                msgs = ((InternalEObject)stop).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - ServerTypePackage.SERVER_RUNTIME__STOP, null, msgs);
-            if (newStop != null)
-                msgs = ((InternalEObject)newStop).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - ServerTypePackage.SERVER_RUNTIME__STOP, null, msgs);
-            msgs = basicSetStop(newStop, msgs);
-            if (msgs != null) msgs.dispatch();
-        }
-        else if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.SERVER_RUNTIME__STOP, newStop, newStop));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public FeatureMap getGroup3() {
-        if (group3 == null) {
-            group3 = new BasicFeatureMap(this, ServerTypePackage.SERVER_RUNTIME__GROUP3);
-        }
-        return group3;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public List getPublisher() {
-        return ((FeatureMap)getGroup3()).list(ServerTypePackage.eINSTANCE.getServerRuntime_Publisher());
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public FeatureMap getGroup4() {
-        if (group4 == null) {
-            group4 = new BasicFeatureMap(this, ServerTypePackage.SERVER_RUNTIME__GROUP4);
-        }
-        return group4;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public List getClasspath() {
-        return ((FeatureMap)getGroup4()).list(ServerTypePackage.eINSTANCE.getServerRuntime_Classpath());
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public JndiConnection getJndiConnection() {
-        return jndiConnection;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public NotificationChain basicSetJndiConnection(JndiConnection newJndiConnection, NotificationChain msgs) {
-        JndiConnection oldJndiConnection = jndiConnection;
-        jndiConnection = newJndiConnection;
-        if (eNotificationRequired()) {
-            ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, ServerTypePackage.SERVER_RUNTIME__JNDI_CONNECTION, oldJndiConnection, newJndiConnection);
-            if (msgs == null) msgs = notification; else msgs.add(notification);
-        }
-        return msgs;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void setJndiConnection(JndiConnection newJndiConnection) {
-        if (newJndiConnection != jndiConnection) {
-            NotificationChain msgs = null;
-            if (jndiConnection != null)
-                msgs = ((InternalEObject)jndiConnection).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - ServerTypePackage.SERVER_RUNTIME__JNDI_CONNECTION, null, msgs);
-            if (newJndiConnection != null)
-                msgs = ((InternalEObject)newJndiConnection).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - ServerTypePackage.SERVER_RUNTIME__JNDI_CONNECTION, null, msgs);
-            msgs = basicSetJndiConnection(newJndiConnection, msgs);
-            if (msgs != null) msgs.dispatch();
-        }
-        else if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.SERVER_RUNTIME__JNDI_CONNECTION, newJndiConnection, newJndiConnection));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getName() {
-        return name;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setName(String newName) {
-        String oldName = name;
-        name = newName;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.SERVER_RUNTIME__NAME, oldName, name));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String getVersion() {
-        return version;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void setVersion(String newVersion) {
-        String oldVersion = version;
-        version = newVersion;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, ServerTypePackage.SERVER_RUNTIME__VERSION, oldVersion, version));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, Class baseClass, NotificationChain msgs) {
-        if (featureID >= 0) {
-            switch (eDerivedStructuralFeatureID(featureID, baseClass)) {
-                case ServerTypePackage.SERVER_RUNTIME__GROUP:
-                    return ((InternalEList)getGroup()).basicRemove(otherEnd, msgs);
-                case ServerTypePackage.SERVER_RUNTIME__PROPERTY:
-                    return ((InternalEList)getProperty()).basicRemove(otherEnd, msgs);
-                case ServerTypePackage.SERVER_RUNTIME__GROUP1:
-                    return ((InternalEList)getGroup1()).basicRemove(otherEnd, msgs);
-                case ServerTypePackage.SERVER_RUNTIME__PORT:
-                    return ((InternalEList)getPort()).basicRemove(otherEnd, msgs);
-                case ServerTypePackage.SERVER_RUNTIME__GROUP2:
-                    return ((InternalEList)getGroup2()).basicRemove(otherEnd, msgs);
-                case ServerTypePackage.SERVER_RUNTIME__MODULE:
-                    return ((InternalEList)getModule()).basicRemove(otherEnd, msgs);
-                case ServerTypePackage.SERVER_RUNTIME__PROJECT:
-                    return basicSetProject(null, msgs);
-                case ServerTypePackage.SERVER_RUNTIME__START:
-                    return basicSetStart(null, msgs);
-                case ServerTypePackage.SERVER_RUNTIME__STOP:
-                    return basicSetStop(null, msgs);
-                case ServerTypePackage.SERVER_RUNTIME__GROUP3:
-                    return ((InternalEList)getGroup3()).basicRemove(otherEnd, msgs);
-                case ServerTypePackage.SERVER_RUNTIME__PUBLISHER:
-                    return ((InternalEList)getPublisher()).basicRemove(otherEnd, msgs);
-                case ServerTypePackage.SERVER_RUNTIME__GROUP4:
-                    return ((InternalEList)getGroup4()).basicRemove(otherEnd, msgs);
-                case ServerTypePackage.SERVER_RUNTIME__CLASSPATH:
-                    return ((InternalEList)getClasspath()).basicRemove(otherEnd, msgs);
-                case ServerTypePackage.SERVER_RUNTIME__JNDI_CONNECTION:
-                    return basicSetJndiConnection(null, msgs);
-                default:
-                    return eDynamicInverseRemove(otherEnd, featureID, baseClass, msgs);
-            }
-        }
-        return eBasicSetContainer(null, featureID, msgs);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public Object eGet(EStructuralFeature eFeature, boolean resolve) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.SERVER_RUNTIME__GROUP:
-                return getGroup();
-            case ServerTypePackage.SERVER_RUNTIME__PROPERTY:
-                return getProperty();
-            case ServerTypePackage.SERVER_RUNTIME__GROUP1:
-                return getGroup1();
-            case ServerTypePackage.SERVER_RUNTIME__PORT:
-                return getPort();
-            case ServerTypePackage.SERVER_RUNTIME__GROUP2:
-                return getGroup2();
-            case ServerTypePackage.SERVER_RUNTIME__MODULE:
-                return getModule();
-            case ServerTypePackage.SERVER_RUNTIME__PROJECT:
-                return getProject();
-            case ServerTypePackage.SERVER_RUNTIME__START:
-                return getStart();
-            case ServerTypePackage.SERVER_RUNTIME__STOP:
-                return getStop();
-            case ServerTypePackage.SERVER_RUNTIME__GROUP3:
-                return getGroup3();
-            case ServerTypePackage.SERVER_RUNTIME__PUBLISHER:
-                return getPublisher();
-            case ServerTypePackage.SERVER_RUNTIME__GROUP4:
-                return getGroup4();
-            case ServerTypePackage.SERVER_RUNTIME__CLASSPATH:
-                return getClasspath();
-            case ServerTypePackage.SERVER_RUNTIME__JNDI_CONNECTION:
-                return getJndiConnection();
-            case ServerTypePackage.SERVER_RUNTIME__NAME:
-                return getName();
-            case ServerTypePackage.SERVER_RUNTIME__VERSION:
-                return getVersion();
-        }
-        return eDynamicGet(eFeature, resolve);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eSet(EStructuralFeature eFeature, Object newValue) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.SERVER_RUNTIME__GROUP:
-                getGroup().clear();
-                getGroup().addAll((Collection)newValue);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__PROPERTY:
-                getProperty().clear();
-                getProperty().addAll((Collection)newValue);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__GROUP1:
-                getGroup1().clear();
-                getGroup1().addAll((Collection)newValue);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__PORT:
-                getPort().clear();
-                getPort().addAll((Collection)newValue);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__GROUP2:
-                getGroup2().clear();
-                getGroup2().addAll((Collection)newValue);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__MODULE:
-                getModule().clear();
-                getModule().addAll((Collection)newValue);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__PROJECT:
-                setProject((Project)newValue);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__START:
-                setStart((LaunchConfiguration)newValue);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__STOP:
-                setStop((LaunchConfiguration)newValue);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__GROUP3:
-                getGroup3().clear();
-                getGroup3().addAll((Collection)newValue);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__PUBLISHER:
-                getPublisher().clear();
-                getPublisher().addAll((Collection)newValue);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__GROUP4:
-                getGroup4().clear();
-                getGroup4().addAll((Collection)newValue);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__CLASSPATH:
-                getClasspath().clear();
-                getClasspath().addAll((Collection)newValue);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__JNDI_CONNECTION:
-                setJndiConnection((JndiConnection)newValue);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__NAME:
-                setName((String)newValue);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__VERSION:
-                setVersion((String)newValue);
-                return;
-        }
-        eDynamicSet(eFeature, newValue);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void eUnset(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.SERVER_RUNTIME__GROUP:
-                getGroup().clear();
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__PROPERTY:
-                getProperty().clear();
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__GROUP1:
-                getGroup1().clear();
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__PORT:
-                getPort().clear();
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__GROUP2:
-                getGroup2().clear();
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__MODULE:
-                getModule().clear();
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__PROJECT:
-                setProject((Project)null);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__START:
-                setStart((LaunchConfiguration)null);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__STOP:
-                setStop((LaunchConfiguration)null);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__GROUP3:
-                getGroup3().clear();
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__PUBLISHER:
-                getPublisher().clear();
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__GROUP4:
-                getGroup4().clear();
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__CLASSPATH:
-                getClasspath().clear();
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__JNDI_CONNECTION:
-                setJndiConnection((JndiConnection)null);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__NAME:
-                setName(NAME_EDEFAULT);
-                return;
-            case ServerTypePackage.SERVER_RUNTIME__VERSION:
-                setVersion(VERSION_EDEFAULT);
-                return;
-        }
-        eDynamicUnset(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public boolean eIsSet(EStructuralFeature eFeature) {
-        switch (eDerivedStructuralFeatureID(eFeature)) {
-            case ServerTypePackage.SERVER_RUNTIME__GROUP:
-                return group != null && !group.isEmpty();
-            case ServerTypePackage.SERVER_RUNTIME__PROPERTY:
-                return !getProperty().isEmpty();
-            case ServerTypePackage.SERVER_RUNTIME__GROUP1:
-                return group1 != null && !group1.isEmpty();
-            case ServerTypePackage.SERVER_RUNTIME__PORT:
-                return !getPort().isEmpty();
-            case ServerTypePackage.SERVER_RUNTIME__GROUP2:
-                return group2 != null && !group2.isEmpty();
-            case ServerTypePackage.SERVER_RUNTIME__MODULE:
-                return !getModule().isEmpty();
-            case ServerTypePackage.SERVER_RUNTIME__PROJECT:
-                return project != null;
-            case ServerTypePackage.SERVER_RUNTIME__START:
-                return start != null;
-            case ServerTypePackage.SERVER_RUNTIME__STOP:
-                return stop != null;
-            case ServerTypePackage.SERVER_RUNTIME__GROUP3:
-                return group3 != null && !group3.isEmpty();
-            case ServerTypePackage.SERVER_RUNTIME__PUBLISHER:
-                return !getPublisher().isEmpty();
-            case ServerTypePackage.SERVER_RUNTIME__GROUP4:
-                return group4 != null && !group4.isEmpty();
-            case ServerTypePackage.SERVER_RUNTIME__CLASSPATH:
-                return !getClasspath().isEmpty();
-            case ServerTypePackage.SERVER_RUNTIME__JNDI_CONNECTION:
-                return jndiConnection != null;
-            case ServerTypePackage.SERVER_RUNTIME__NAME:
-                return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-            case ServerTypePackage.SERVER_RUNTIME__VERSION:
-                return VERSION_EDEFAULT == null ? version != null : !VERSION_EDEFAULT.equals(version);
-        }
-        return eDynamicIsSet(eFeature);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public String toString() {
-        if (eIsProxy()) return super.toString();
-
-        StringBuffer result = new StringBuffer(super.toString());
-        result.append(" (group: ");
-        result.append(group);
-        result.append(", group1: ");
-        result.append(group1);
-        result.append(", group2: ");
-        result.append(group2);
-        result.append(", group3: ");
-        result.append(group3);
-        result.append(", group4: ");
-        result.append(group4);
-        result.append(", name: ");
-        result.append(name);
-        result.append(", version: ");
-        result.append(version);
-        result.append(')');
-        return result.toString();
-    }
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated NOT
-	 */
-	public Publisher getPublisher(String id) {
-		Iterator iterator = this.getPublisher().iterator();
-		while (iterator.hasNext()) {
-			Publisher publisher = (Publisher) iterator.next();
-			if(id.equals(publisher.getId()))
-				return publisher;
-		}
-		return null;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated NOT
-	 */
-	public Module getModule(String type) {
-		Iterator iterator = this.getModule().iterator();
-		while (iterator.hasNext()) {
-			Module module = (Module) iterator.next();
-			if(type.equals(module.getType()))
-				return module;
-		}
-		return null;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated NOT
-	 */
-	public Classpath getClasspath(String ref) {
-		Iterator iterator = this.getClasspath().iterator();
-		while (iterator.hasNext()) {
-			Classpath cp = (Classpath) iterator.next();
-			if(ref.equals(cp.getId()))
-				return cp;
-		}
-		return null;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated NOT
-	 */
-	public String getFilename() {
-		return filename;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated NOT
-	 */
-	public void setFilename(String fn) {
-		this.filename = fn;		
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated NOT
-	 */
-	public void setPropertyValues(Map properties) {
-		this.resolver.setPropertyValues(properties);
-		
-	}
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated NOT
-	 */
-	public Resolver getResolver() {
-		return this.resolver;
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getDeclaringBundle()
-     */
-    public String getConfigurationElementNamespace() {
-           return declaringConfigurationElementNamespace;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#setConfigurationElementNamespace(java.lang.String)
-     */
-    public void setConfigurationElementNamespace(String namespace) {
-        this.declaringConfigurationElementNamespace=namespace;
-    }
-
-    public String getId() {
-        return id;
-    }
-
-    public void setId(String id) {
-        this.id = id;
-        
-    }
-	
-	
-} //ServerRuntimeImpl
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ServerTypeFactoryImpl.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ServerTypeFactoryImpl.java
deleted file mode 100644
index dfe1a27..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ServerTypeFactoryImpl.java
+++ /dev/null
@@ -1,223 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: ServerTypeFactoryImpl.java,v 1.3 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.impl;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-
-import org.eclipse.emf.ecore.impl.EFactoryImpl;
-
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-import org.eclipse.jst.server.generic.servertype.definition.*;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model <b>Factory</b>.
- * <!-- end-user-doc -->
- * @generated
- */
-public class ServerTypeFactoryImpl extends EFactoryImpl implements ServerTypeFactory {
-    /**
-     * Creates and instance of the factory.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public ServerTypeFactoryImpl() {
-        super();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EObject create(EClass eClass) {
-        switch (eClass.getClassifierID()) {
-            case ServerTypePackage.ARCHIVE_TYPE: return createArchiveType();
-            case ServerTypePackage.CLASSPATH: return createClasspath();
-            case ServerTypePackage.JNDI_CONNECTION: return createJndiConnection();
-            case ServerTypePackage.JNDI_PROPERTY: return createJndiProperty();
-            case ServerTypePackage.LAUNCH_CONFIGURATION: return createLaunchConfiguration();
-            case ServerTypePackage.MODULE: return createModule();
-            case ServerTypePackage.PORT: return createPort();
-            case ServerTypePackage.PROJECT: return createProject();
-            case ServerTypePackage.PROPERTY: return createProperty();
-            case ServerTypePackage.PUBLISHER: return createPublisher();
-            case ServerTypePackage.PUBLISHER_DATA: return createPublisherData();
-            case ServerTypePackage.SERVER_RUNTIME: return createServerRuntime();
-            default:
-                throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
-        }
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public ArchiveType createArchiveType() {
-        ArchiveTypeImpl archiveType = new ArchiveTypeImpl();
-        return archiveType;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public Classpath createClasspath() {
-        ClasspathImpl classpath = new ClasspathImpl();
-        return classpath;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public JndiConnection createJndiConnection() {
-        JndiConnectionImpl jndiConnection = new JndiConnectionImpl();
-        return jndiConnection;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public JndiProperty createJndiProperty() {
-        JndiPropertyImpl jndiProperty = new JndiPropertyImpl();
-        return jndiProperty;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public LaunchConfiguration createLaunchConfiguration() {
-        LaunchConfigurationImpl launchConfiguration = new LaunchConfigurationImpl();
-        return launchConfiguration;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public Module createModule() {
-        ModuleImpl module = new ModuleImpl();
-        return module;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public Port createPort() {
-        PortImpl port = new PortImpl();
-        return port;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public Project createProject() {
-        ProjectImpl project = new ProjectImpl();
-        return project;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public Property createProperty() {
-        PropertyImpl property = new PropertyImpl();
-        return property;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public Publisher createPublisher() {
-        PublisherImpl publisher = new PublisherImpl();
-        return publisher;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public PublisherData createPublisherData() {
-        PublisherDataImpl publisherData = new PublisherDataImpl();
-        return publisherData;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public ServerRuntime createServerRuntime() {
-        ServerRuntimeImpl serverRuntime = new ServerRuntimeImpl();
-        return serverRuntime;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public ServerTypePackage getServerTypePackage() {
-        return (ServerTypePackage)getEPackage();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @deprecated
-     * @generated
-     */
-	public static ServerTypePackage getPackage() {
-        return ServerTypePackage.eINSTANCE;
-    }
-
-} //ServerTypeFactoryImpl
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ServerTypePackageImpl.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ServerTypePackageImpl.java
deleted file mode 100644
index fd358c1..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/impl/ServerTypePackageImpl.java
+++ /dev/null
@@ -1,1429 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: ServerTypePackageImpl.java,v 1.3 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.impl;
-
-import org.eclipse.emf.ecore.EAttribute;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EReference;
-
-import org.eclipse.emf.ecore.impl.EPackageImpl;
-
-import org.eclipse.emf.ecore.xml.type.XMLTypePackage;
-
-import org.eclipse.emf.ecore.xml.type.impl.XMLTypePackageImpl;
-
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-import org.eclipse.jst.server.generic.servertype.definition.ArchiveType;
-import org.eclipse.jst.server.generic.servertype.definition.Classpath;
-import org.eclipse.jst.server.generic.servertype.definition.JndiConnection;
-import org.eclipse.jst.server.generic.servertype.definition.JndiProperty;
-import org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration;
-import org.eclipse.jst.server.generic.servertype.definition.Module;
-import org.eclipse.jst.server.generic.servertype.definition.Port;
-import org.eclipse.jst.server.generic.servertype.definition.Project;
-import org.eclipse.jst.server.generic.servertype.definition.Property;
-import org.eclipse.jst.server.generic.servertype.definition.Publisher;
-import org.eclipse.jst.server.generic.servertype.definition.PublisherData;
-import org.eclipse.jst.server.generic.servertype.definition.ServerRuntime;
-import org.eclipse.jst.server.generic.servertype.definition.ServerTypeFactory;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model <b>Package</b>.
- * <!-- end-user-doc -->
- * @generated
- */
-public class ServerTypePackageImpl extends EPackageImpl implements ServerTypePackage {
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	private EClass archiveTypeEClass = null;
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	private EClass classpathEClass = null;
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    private EClass jndiConnectionEClass = null;
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    private EClass jndiPropertyEClass = null;
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	private EClass launchConfigurationEClass = null;
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	private EClass moduleEClass = null;
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	private EClass portEClass = null;
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	private EClass projectEClass = null;
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	private EClass propertyEClass = null;
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	private EClass publisherEClass = null;
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    private EClass publisherDataEClass = null;
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	private EClass serverRuntimeEClass = null;
-
-    /**
-     * Creates an instance of the model <b>Package</b>, registered with
-     * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
-     * package URI value.
-     * <p>Note: the correct way to create the package is via the static
-     * factory method {@link #init init()}, which also performs
-     * initialization of the package, or returns the registered package,
-     * if one already exists.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see org.eclipse.emf.ecore.EPackage.Registry
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#eNS_URI
-     * @see #init()
-     * @generated
-     */
-	private ServerTypePackageImpl() {
-        super(eNS_URI, ServerTypeFactory.eINSTANCE);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	private static boolean isInited = false;
-
-    /**
-     * Creates, registers, and initializes the <b>Package</b> for this
-     * model, and for any others upon which it depends.  Simple
-     * dependencies are satisfied by calling this method on all
-     * dependent packages before doing anything else.  This method drives
-     * initialization for interdependent packages directly, in parallel
-     * with this package, itself.
-     * <p>Of this package and its interdependencies, all packages which
-     * have not yet been registered by their URI values are first created
-     * and registered.  The packages are then initialized in two steps:
-     * meta-model objects for all of the packages are created before any
-     * are initialized, since one package's meta-model objects may refer to
-     * those of another.
-     * <p>Invocation of this method will not affect any packages that have
-     * already been initialized.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #eNS_URI
-     * @see #createPackageContents()
-     * @see #initializePackageContents()
-     * @generated
-     */
-	public static ServerTypePackage init() {
-        if (isInited) return (ServerTypePackage)EPackage.Registry.INSTANCE.getEPackage(ServerTypePackage.eNS_URI);
-
-        // Obtain or create and register package
-        ServerTypePackageImpl theServerTypePackage = (ServerTypePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(eNS_URI) instanceof ServerTypePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(eNS_URI) : new ServerTypePackageImpl());
-
-        isInited = true;
-
-        // Initialize simple dependencies
-        XMLTypePackageImpl.init();
-
-        // Create package meta-data objects
-        theServerTypePackage.createPackageContents();
-
-        // Initialize created meta-data
-        theServerTypePackage.initializePackageContents();
-
-        // Mark meta-data to indicate it can't be changed
-        theServerTypePackage.freeze();
-
-        return theServerTypePackage;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EClass getArchiveType() {
-        return archiveTypeEClass;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getArchiveType_Path() {
-        return (EAttribute)archiveTypeEClass.getEStructuralFeatures().get(0);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EClass getClasspath() {
-        return classpathEClass;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EAttribute getClasspath_Group() {
-        return (EAttribute)classpathEClass.getEStructuralFeatures().get(0);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EReference getClasspath_Archive() {
-        return (EReference)classpathEClass.getEStructuralFeatures().get(1);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getClasspath_Id() {
-        return (EAttribute)classpathEClass.getEStructuralFeatures().get(2);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getClasspath_IsLibrary() {
-        return (EAttribute)classpathEClass.getEStructuralFeatures().get(3);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EClass getJndiConnection() {
-        return jndiConnectionEClass;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EAttribute getJndiConnection_ProviderUrl() {
-        return (EAttribute)jndiConnectionEClass.getEStructuralFeatures().get(0);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EAttribute getJndiConnection_Group() {
-        return (EAttribute)jndiConnectionEClass.getEStructuralFeatures().get(1);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EReference getJndiConnection_JndiProperty() {
-        return (EReference)jndiConnectionEClass.getEStructuralFeatures().get(2);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EAttribute getJndiConnection_InitialContextFactory() {
-        return (EAttribute)jndiConnectionEClass.getEStructuralFeatures().get(3);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EClass getJndiProperty() {
-        return jndiPropertyEClass;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EAttribute getJndiProperty_Name() {
-        return (EAttribute)jndiPropertyEClass.getEStructuralFeatures().get(0);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EAttribute getJndiProperty_Value() {
-        return (EAttribute)jndiPropertyEClass.getEStructuralFeatures().get(1);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EClass getLaunchConfiguration() {
-        return launchConfigurationEClass;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EAttribute getLaunchConfiguration_MainClass() {
-        return (EAttribute)launchConfigurationEClass.getEStructuralFeatures().get(0);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getLaunchConfiguration_WorkingDirectory() {
-        return (EAttribute)launchConfigurationEClass.getEStructuralFeatures().get(1);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getLaunchConfiguration_ProgramArguments() {
-        return (EAttribute)launchConfigurationEClass.getEStructuralFeatures().get(2);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getLaunchConfiguration_VmParameters() {
-        return (EAttribute)launchConfigurationEClass.getEStructuralFeatures().get(3);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getLaunchConfiguration_ClasspathReference() {
-        return (EAttribute)launchConfigurationEClass.getEStructuralFeatures().get(4);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EClass getModule() {
-        return moduleEClass;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getModule_Type() {
-        return (EAttribute)moduleEClass.getEStructuralFeatures().get(0);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getModule_PublishDir() {
-        return (EAttribute)moduleEClass.getEStructuralFeatures().get(1);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getModule_PublisherReference() {
-        return (EAttribute)moduleEClass.getEStructuralFeatures().get(2);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EClass getPort() {
-        return portEClass;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getPort_No() {
-        return (EAttribute)portEClass.getEStructuralFeatures().get(0);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getPort_Name() {
-        return (EAttribute)portEClass.getEStructuralFeatures().get(1);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getPort_Protocol() {
-        return (EAttribute)portEClass.getEStructuralFeatures().get(2);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EClass getProject() {
-        return projectEClass;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getProject_ClasspathReference() {
-        return (EAttribute)projectEClass.getEStructuralFeatures().get(0);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EClass getProperty() {
-        return propertyEClass;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getProperty_Context() {
-        return (EAttribute)propertyEClass.getEStructuralFeatures().get(0);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getProperty_Default() {
-        return (EAttribute)propertyEClass.getEStructuralFeatures().get(1);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getProperty_Id() {
-        return (EAttribute)propertyEClass.getEStructuralFeatures().get(2);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getProperty_Label() {
-        return (EAttribute)propertyEClass.getEStructuralFeatures().get(3);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getProperty_Type() {
-        return (EAttribute)propertyEClass.getEStructuralFeatures().get(4);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EClass getPublisher() {
-        return publisherEClass;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EAttribute getPublisher_Group() {
-        return (EAttribute)publisherEClass.getEStructuralFeatures().get(0);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EReference getPublisher_Publisherdata() {
-        return (EReference)publisherEClass.getEStructuralFeatures().get(1);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getPublisher_Id() {
-        return (EAttribute)publisherEClass.getEStructuralFeatures().get(2);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EClass getPublisherData() {
-        return publisherDataEClass;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EAttribute getPublisherData_Dataname() {
-        return (EAttribute)publisherDataEClass.getEStructuralFeatures().get(0);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EAttribute getPublisherData_Datavalue() {
-        return (EAttribute)publisherDataEClass.getEStructuralFeatures().get(1);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EClass getServerRuntime() {
-        return serverRuntimeEClass;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EAttribute getServerRuntime_Group() {
-        return (EAttribute)serverRuntimeEClass.getEStructuralFeatures().get(0);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EReference getServerRuntime_Property() {
-        return (EReference)serverRuntimeEClass.getEStructuralFeatures().get(1);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EAttribute getServerRuntime_Group1() {
-        return (EAttribute)serverRuntimeEClass.getEStructuralFeatures().get(2);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EReference getServerRuntime_Port() {
-        return (EReference)serverRuntimeEClass.getEStructuralFeatures().get(3);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EAttribute getServerRuntime_Group2() {
-        return (EAttribute)serverRuntimeEClass.getEStructuralFeatures().get(4);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EReference getServerRuntime_Module() {
-        return (EReference)serverRuntimeEClass.getEStructuralFeatures().get(5);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EReference getServerRuntime_Project() {
-        return (EReference)serverRuntimeEClass.getEStructuralFeatures().get(6);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EReference getServerRuntime_Start() {
-        return (EReference)serverRuntimeEClass.getEStructuralFeatures().get(7);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EReference getServerRuntime_Stop() {
-        return (EReference)serverRuntimeEClass.getEStructuralFeatures().get(8);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EAttribute getServerRuntime_Group3() {
-        return (EAttribute)serverRuntimeEClass.getEStructuralFeatures().get(9);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EReference getServerRuntime_Publisher() {
-        return (EReference)serverRuntimeEClass.getEStructuralFeatures().get(10);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EAttribute getServerRuntime_Group4() {
-        return (EAttribute)serverRuntimeEClass.getEStructuralFeatures().get(11);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EReference getServerRuntime_Classpath() {
-        return (EReference)serverRuntimeEClass.getEStructuralFeatures().get(12);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EReference getServerRuntime_JndiConnection() {
-        return (EReference)serverRuntimeEClass.getEStructuralFeatures().get(13);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getServerRuntime_Name() {
-        return (EAttribute)serverRuntimeEClass.getEStructuralFeatures().get(14);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public EAttribute getServerRuntime_Version() {
-        return (EAttribute)serverRuntimeEClass.getEStructuralFeatures().get(15);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public ServerTypeFactory getServerTypeFactory() {
-        return (ServerTypeFactory)getEFactoryInstance();
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	private boolean isCreated = false;
-
-    /**
-     * Creates the meta-model objects for the package.  This method is
-     * guarded to have no affect on any invocation but its first.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void createPackageContents() {
-        if (isCreated) return;
-        isCreated = true;
-
-        // Create classes and their features
-        archiveTypeEClass = createEClass(ARCHIVE_TYPE);
-        createEAttribute(archiveTypeEClass, ARCHIVE_TYPE__PATH);
-
-        classpathEClass = createEClass(CLASSPATH);
-        createEAttribute(classpathEClass, CLASSPATH__GROUP);
-        createEReference(classpathEClass, CLASSPATH__ARCHIVE);
-        createEAttribute(classpathEClass, CLASSPATH__ID);
-        createEAttribute(classpathEClass, CLASSPATH__IS_LIBRARY);
-
-        jndiConnectionEClass = createEClass(JNDI_CONNECTION);
-        createEAttribute(jndiConnectionEClass, JNDI_CONNECTION__PROVIDER_URL);
-        createEAttribute(jndiConnectionEClass, JNDI_CONNECTION__GROUP);
-        createEReference(jndiConnectionEClass, JNDI_CONNECTION__JNDI_PROPERTY);
-        createEAttribute(jndiConnectionEClass, JNDI_CONNECTION__INITIAL_CONTEXT_FACTORY);
-
-        jndiPropertyEClass = createEClass(JNDI_PROPERTY);
-        createEAttribute(jndiPropertyEClass, JNDI_PROPERTY__NAME);
-        createEAttribute(jndiPropertyEClass, JNDI_PROPERTY__VALUE);
-
-        launchConfigurationEClass = createEClass(LAUNCH_CONFIGURATION);
-        createEAttribute(launchConfigurationEClass, LAUNCH_CONFIGURATION__MAIN_CLASS);
-        createEAttribute(launchConfigurationEClass, LAUNCH_CONFIGURATION__WORKING_DIRECTORY);
-        createEAttribute(launchConfigurationEClass, LAUNCH_CONFIGURATION__PROGRAM_ARGUMENTS);
-        createEAttribute(launchConfigurationEClass, LAUNCH_CONFIGURATION__VM_PARAMETERS);
-        createEAttribute(launchConfigurationEClass, LAUNCH_CONFIGURATION__CLASSPATH_REFERENCE);
-
-        moduleEClass = createEClass(MODULE);
-        createEAttribute(moduleEClass, MODULE__TYPE);
-        createEAttribute(moduleEClass, MODULE__PUBLISH_DIR);
-        createEAttribute(moduleEClass, MODULE__PUBLISHER_REFERENCE);
-
-        portEClass = createEClass(PORT);
-        createEAttribute(portEClass, PORT__NO);
-        createEAttribute(portEClass, PORT__NAME);
-        createEAttribute(portEClass, PORT__PROTOCOL);
-
-        projectEClass = createEClass(PROJECT);
-        createEAttribute(projectEClass, PROJECT__CLASSPATH_REFERENCE);
-
-        propertyEClass = createEClass(PROPERTY);
-        createEAttribute(propertyEClass, PROPERTY__CONTEXT);
-        createEAttribute(propertyEClass, PROPERTY__DEFAULT);
-        createEAttribute(propertyEClass, PROPERTY__ID);
-        createEAttribute(propertyEClass, PROPERTY__LABEL);
-        createEAttribute(propertyEClass, PROPERTY__TYPE);
-
-        publisherEClass = createEClass(PUBLISHER);
-        createEAttribute(publisherEClass, PUBLISHER__GROUP);
-        createEReference(publisherEClass, PUBLISHER__PUBLISHERDATA);
-        createEAttribute(publisherEClass, PUBLISHER__ID);
-
-        publisherDataEClass = createEClass(PUBLISHER_DATA);
-        createEAttribute(publisherDataEClass, PUBLISHER_DATA__DATANAME);
-        createEAttribute(publisherDataEClass, PUBLISHER_DATA__DATAVALUE);
-
-        serverRuntimeEClass = createEClass(SERVER_RUNTIME);
-        createEAttribute(serverRuntimeEClass, SERVER_RUNTIME__GROUP);
-        createEReference(serverRuntimeEClass, SERVER_RUNTIME__PROPERTY);
-        createEAttribute(serverRuntimeEClass, SERVER_RUNTIME__GROUP1);
-        createEReference(serverRuntimeEClass, SERVER_RUNTIME__PORT);
-        createEAttribute(serverRuntimeEClass, SERVER_RUNTIME__GROUP2);
-        createEReference(serverRuntimeEClass, SERVER_RUNTIME__MODULE);
-        createEReference(serverRuntimeEClass, SERVER_RUNTIME__PROJECT);
-        createEReference(serverRuntimeEClass, SERVER_RUNTIME__START);
-        createEReference(serverRuntimeEClass, SERVER_RUNTIME__STOP);
-        createEAttribute(serverRuntimeEClass, SERVER_RUNTIME__GROUP3);
-        createEReference(serverRuntimeEClass, SERVER_RUNTIME__PUBLISHER);
-        createEAttribute(serverRuntimeEClass, SERVER_RUNTIME__GROUP4);
-        createEReference(serverRuntimeEClass, SERVER_RUNTIME__CLASSPATH);
-        createEReference(serverRuntimeEClass, SERVER_RUNTIME__JNDI_CONNECTION);
-        createEAttribute(serverRuntimeEClass, SERVER_RUNTIME__NAME);
-        createEAttribute(serverRuntimeEClass, SERVER_RUNTIME__VERSION);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	private boolean isInitialized = false;
-
-    /**
-     * Complete the initialization of the package and its meta-model.  This
-     * method is guarded to have no affect on any invocation but its first.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public void initializePackageContents() {
-        if (isInitialized) return;
-        isInitialized = true;
-
-        // Initialize package
-        setName(eNAME);
-        setNsPrefix(eNS_PREFIX);
-        setNsURI(eNS_URI);
-
-        // Obtain other dependent packages
-        XMLTypePackageImpl theXMLTypePackage = (XMLTypePackageImpl)EPackage.Registry.INSTANCE.getEPackage(XMLTypePackage.eNS_URI);
-
-        // Add supertypes to classes
-
-        // Initialize classes and features; add operations and parameters
-        initEClass(archiveTypeEClass, ArchiveType.class, "ArchiveType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEAttribute(getArchiveType_Path(), theXMLTypePackage.getString(), "path", null, 0, 1, ArchiveType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-        initEClass(classpathEClass, Classpath.class, "Classpath", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEAttribute(getClasspath_Group(), ecorePackage.getEFeatureMapEntry(), "group", null, 0, -1, Classpath.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getClasspath_Archive(), this.getArchiveType(), null, "archive", null, 1, -1, Classpath.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
-        initEAttribute(getClasspath_Id(), theXMLTypePackage.getString(), "id", null, 0, 1, Classpath.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getClasspath_IsLibrary(), theXMLTypePackage.getBoolean(), "isLibrary", null, 0, 1, Classpath.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-        initEClass(jndiConnectionEClass, JndiConnection.class, "JndiConnection", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEAttribute(getJndiConnection_ProviderUrl(), theXMLTypePackage.getString(), "providerUrl", null, 1, 1, JndiConnection.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getJndiConnection_Group(), ecorePackage.getEFeatureMapEntry(), "group", null, 0, -1, JndiConnection.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getJndiConnection_JndiProperty(), this.getJndiProperty(), null, "jndiProperty", null, 0, -1, JndiConnection.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
-        initEAttribute(getJndiConnection_InitialContextFactory(), theXMLTypePackage.getString(), "initialContextFactory", null, 1, 1, JndiConnection.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-        initEClass(jndiPropertyEClass, JndiProperty.class, "JndiProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEAttribute(getJndiProperty_Name(), theXMLTypePackage.getString(), "name", null, 1, 1, JndiProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getJndiProperty_Value(), theXMLTypePackage.getString(), "value", null, 1, 1, JndiProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-        initEClass(launchConfigurationEClass, LaunchConfiguration.class, "LaunchConfiguration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEAttribute(getLaunchConfiguration_MainClass(), theXMLTypePackage.getString(), "mainClass", null, 1, 1, LaunchConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getLaunchConfiguration_WorkingDirectory(), theXMLTypePackage.getString(), "workingDirectory", null, 1, 1, LaunchConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getLaunchConfiguration_ProgramArguments(), theXMLTypePackage.getString(), "programArguments", null, 1, 1, LaunchConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getLaunchConfiguration_VmParameters(), theXMLTypePackage.getString(), "vmParameters", null, 1, 1, LaunchConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getLaunchConfiguration_ClasspathReference(), theXMLTypePackage.getString(), "classpathReference", null, 1, 1, LaunchConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-        initEClass(moduleEClass, Module.class, "Module", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEAttribute(getModule_Type(), theXMLTypePackage.getString(), "type", null, 1, 1, Module.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getModule_PublishDir(), theXMLTypePackage.getString(), "publishDir", null, 1, 1, Module.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getModule_PublisherReference(), theXMLTypePackage.getString(), "publisherReference", null, 1, 1, Module.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-        initEClass(portEClass, Port.class, "Port", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEAttribute(getPort_No(), theXMLTypePackage.getString(), "no", null, 1, 1, Port.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getPort_Name(), theXMLTypePackage.getString(), "name", null, 1, 1, Port.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getPort_Protocol(), theXMLTypePackage.getString(), "protocol", null, 1, 1, Port.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-        initEClass(projectEClass, Project.class, "Project", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEAttribute(getProject_ClasspathReference(), theXMLTypePackage.getString(), "classpathReference", null, 1, 1, Project.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-        initEClass(propertyEClass, Property.class, "Property", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEAttribute(getProperty_Context(), theXMLTypePackage.getString(), "context", null, 0, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getProperty_Default(), theXMLTypePackage.getString(), "default", null, 0, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getProperty_Id(), theXMLTypePackage.getString(), "id", null, 0, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getProperty_Label(), theXMLTypePackage.getString(), "label", null, 0, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getProperty_Type(), theXMLTypePackage.getString(), "type", null, 0, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-        initEClass(publisherEClass, Publisher.class, "Publisher", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEAttribute(getPublisher_Group(), ecorePackage.getEFeatureMapEntry(), "group", null, 0, -1, Publisher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getPublisher_Publisherdata(), this.getPublisherData(), null, "publisherdata", null, 1, -1, Publisher.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
-        initEAttribute(getPublisher_Id(), theXMLTypePackage.getString(), "id", null, 0, 1, Publisher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-        initEClass(publisherDataEClass, PublisherData.class, "PublisherData", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEAttribute(getPublisherData_Dataname(), theXMLTypePackage.getString(), "dataname", null, 1, 1, PublisherData.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getPublisherData_Datavalue(), theXMLTypePackage.getString(), "datavalue", null, 1, 1, PublisherData.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-        initEClass(serverRuntimeEClass, ServerRuntime.class, "ServerRuntime", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEAttribute(getServerRuntime_Group(), ecorePackage.getEFeatureMapEntry(), "group", null, 0, -1, ServerRuntime.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getServerRuntime_Property(), this.getProperty(), null, "property", null, 0, -1, ServerRuntime.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
-        initEAttribute(getServerRuntime_Group1(), ecorePackage.getEFeatureMapEntry(), "group1", null, 0, -1, ServerRuntime.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getServerRuntime_Port(), this.getPort(), null, "port", null, 0, -1, ServerRuntime.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
-        initEAttribute(getServerRuntime_Group2(), ecorePackage.getEFeatureMapEntry(), "group2", null, 0, -1, ServerRuntime.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getServerRuntime_Module(), this.getModule(), null, "module", null, 1, -1, ServerRuntime.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
-        initEReference(getServerRuntime_Project(), this.getProject(), null, "project", null, 1, 1, ServerRuntime.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getServerRuntime_Start(), this.getLaunchConfiguration(), null, "start", null, 1, 1, ServerRuntime.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getServerRuntime_Stop(), this.getLaunchConfiguration(), null, "stop", null, 1, 1, ServerRuntime.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getServerRuntime_Group3(), ecorePackage.getEFeatureMapEntry(), "group3", null, 0, -1, ServerRuntime.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getServerRuntime_Publisher(), this.getPublisher(), null, "publisher", null, 0, -1, ServerRuntime.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
-        initEAttribute(getServerRuntime_Group4(), ecorePackage.getEFeatureMapEntry(), "group4", null, 0, -1, ServerRuntime.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getServerRuntime_Classpath(), this.getClasspath(), null, "classpath", null, 1, -1, ServerRuntime.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
-        initEReference(getServerRuntime_JndiConnection(), this.getJndiConnection(), null, "jndiConnection", null, 1, 1, ServerRuntime.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getServerRuntime_Name(), theXMLTypePackage.getString(), "name", null, 1, 1, ServerRuntime.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getServerRuntime_Version(), theXMLTypePackage.getString(), "version", null, 0, 1, ServerRuntime.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-        // Create resource
-        createResource(eNS_URI);
-
-        // Create annotations
-        // http:///org/eclipse/emf/ecore/util/ExtendedMetaData
-        createExtendedMetaDataAnnotations();
-    }
-
-    /**
-     * Initializes the annotations for <b>http:///org/eclipse/emf/ecore/util/ExtendedMetaData</b>.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected void createExtendedMetaDataAnnotations() {
-        String source = "http:///org/eclipse/emf/ecore/util/ExtendedMetaData";		
-        addAnnotation
-          (archiveTypeEClass, 
-           source, 
-           new String[] {
-             "name", "archive_._type",
-             "kind", "empty"
-           });		
-        addAnnotation
-          (getArchiveType_Path(), 
-           source, 
-           new String[] {
-             "kind", "attribute",
-             "name", "path"
-           });		
-        addAnnotation
-          (classpathEClass, 
-           source, 
-           new String[] {
-             "name", "Classpath",
-             "kind", "elementOnly"
-           });		
-        addAnnotation
-          (getClasspath_Group(), 
-           source, 
-           new String[] {
-             "kind", "group",
-             "name", "group:0"
-           });		
-        addAnnotation
-          (getClasspath_Archive(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "archive",
-             "group", "#group:0"
-           });		
-        addAnnotation
-          (getClasspath_Id(), 
-           source, 
-           new String[] {
-             "kind", "attribute",
-             "name", "id"
-           });		
-        addAnnotation
-          (getClasspath_IsLibrary(), 
-           source, 
-           new String[] {
-             "kind", "attribute",
-             "name", "isLibrary"
-           });		
-        addAnnotation
-          (jndiConnectionEClass, 
-           source, 
-           new String[] {
-             "name", "jndiConnection",
-             "kind", "elementOnly"
-           });		
-        addAnnotation
-          (getJndiConnection_ProviderUrl(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "providerUrl"
-           });		
-        addAnnotation
-          (getJndiConnection_Group(), 
-           source, 
-           new String[] {
-             "kind", "group",
-             "name", "group:1"
-           });		
-        addAnnotation
-          (getJndiConnection_JndiProperty(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "jndiProperty",
-             "group", "#group:1"
-           });		
-        addAnnotation
-          (getJndiConnection_InitialContextFactory(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "initialContextFactory"
-           });		
-        addAnnotation
-          (jndiPropertyEClass, 
-           source, 
-           new String[] {
-             "name", "jndiProperty",
-             "kind", "elementOnly"
-           });		
-        addAnnotation
-          (getJndiProperty_Name(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "name"
-           });		
-        addAnnotation
-          (getJndiProperty_Value(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "value"
-           });		
-        addAnnotation
-          (launchConfigurationEClass, 
-           source, 
-           new String[] {
-             "name", "LaunchConfiguration",
-             "kind", "elementOnly"
-           });		
-        addAnnotation
-          (getLaunchConfiguration_MainClass(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "mainClass"
-           });		
-        addAnnotation
-          (getLaunchConfiguration_WorkingDirectory(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "workingDirectory"
-           });		
-        addAnnotation
-          (getLaunchConfiguration_ProgramArguments(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "programArguments"
-           });		
-        addAnnotation
-          (getLaunchConfiguration_VmParameters(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "vmParameters"
-           });		
-        addAnnotation
-          (getLaunchConfiguration_ClasspathReference(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "classpathReference"
-           });		
-        addAnnotation
-          (moduleEClass, 
-           source, 
-           new String[] {
-             "name", "Module",
-             "kind", "elementOnly"
-           });		
-        addAnnotation
-          (getModule_Type(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "type"
-           });		
-        addAnnotation
-          (getModule_PublishDir(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "publishDir"
-           });		
-        addAnnotation
-          (getModule_PublisherReference(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "publisherReference"
-           });		
-        addAnnotation
-          (portEClass, 
-           source, 
-           new String[] {
-             "name", "Port",
-             "kind", "elementOnly"
-           });		
-        addAnnotation
-          (getPort_No(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "no"
-           });		
-        addAnnotation
-          (getPort_Name(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "name"
-           });		
-        addAnnotation
-          (getPort_Protocol(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "protocol"
-           });		
-        addAnnotation
-          (projectEClass, 
-           source, 
-           new String[] {
-             "name", "Project",
-             "kind", "elementOnly"
-           });		
-        addAnnotation
-          (getProject_ClasspathReference(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "classpathReference"
-           });		
-        addAnnotation
-          (propertyEClass, 
-           source, 
-           new String[] {
-             "name", "Property",
-             "kind", "empty"
-           });		
-        addAnnotation
-          (getProperty_Context(), 
-           source, 
-           new String[] {
-             "kind", "attribute",
-             "name", "context"
-           });		
-        addAnnotation
-          (getProperty_Default(), 
-           source, 
-           new String[] {
-             "kind", "attribute",
-             "name", "default"
-           });		
-        addAnnotation
-          (getProperty_Id(), 
-           source, 
-           new String[] {
-             "kind", "attribute",
-             "name", "id"
-           });		
-        addAnnotation
-          (getProperty_Label(), 
-           source, 
-           new String[] {
-             "kind", "attribute",
-             "name", "label"
-           });		
-        addAnnotation
-          (getProperty_Type(), 
-           source, 
-           new String[] {
-             "kind", "attribute",
-             "name", "type"
-           });		
-        addAnnotation
-          (publisherEClass, 
-           source, 
-           new String[] {
-             "name", "Publisher",
-             "kind", "elementOnly"
-           });		
-        addAnnotation
-          (getPublisher_Group(), 
-           source, 
-           new String[] {
-             "kind", "group",
-             "name", "group:0"
-           });		
-        addAnnotation
-          (getPublisher_Publisherdata(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "publisherdata",
-             "group", "#group:0"
-           });		
-        addAnnotation
-          (getPublisher_Id(), 
-           source, 
-           new String[] {
-             "kind", "attribute",
-             "name", "id"
-           });		
-        addAnnotation
-          (publisherDataEClass, 
-           source, 
-           new String[] {
-             "name", "PublisherData",
-             "kind", "elementOnly"
-           });		
-        addAnnotation
-          (getPublisherData_Dataname(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "dataname"
-           });		
-        addAnnotation
-          (getPublisherData_Datavalue(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "datavalue"
-           });			
-        addAnnotation
-          (serverRuntimeEClass, 
-           source, 
-           new String[] {
-             "name", "ServerRuntime",
-             "kind", "elementOnly"
-           });		
-        addAnnotation
-          (getServerRuntime_Group(), 
-           source, 
-           new String[] {
-             "kind", "group",
-             "name", "group:0"
-           });		
-        addAnnotation
-          (getServerRuntime_Property(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "property",
-             "group", "#group:0"
-           });		
-        addAnnotation
-          (getServerRuntime_Group1(), 
-           source, 
-           new String[] {
-             "kind", "group",
-             "name", "group:2"
-           });		
-        addAnnotation
-          (getServerRuntime_Port(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "port",
-             "group", "#group:2"
-           });		
-        addAnnotation
-          (getServerRuntime_Group2(), 
-           source, 
-           new String[] {
-             "kind", "group",
-             "name", "group:4"
-           });		
-        addAnnotation
-          (getServerRuntime_Module(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "module",
-             "group", "#group:4"
-           });		
-        addAnnotation
-          (getServerRuntime_Project(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "project"
-           });		
-        addAnnotation
-          (getServerRuntime_Start(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "start"
-           });		
-        addAnnotation
-          (getServerRuntime_Stop(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "stop"
-           });		
-        addAnnotation
-          (getServerRuntime_Group3(), 
-           source, 
-           new String[] {
-             "kind", "group",
-             "name", "group:9"
-           });		
-        addAnnotation
-          (getServerRuntime_Publisher(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "publisher",
-             "group", "#group:9"
-           });		
-        addAnnotation
-          (getServerRuntime_Group4(), 
-           source, 
-           new String[] {
-             "kind", "group",
-             "name", "group:11"
-           });		
-        addAnnotation
-          (getServerRuntime_Classpath(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "classpath",
-             "group", "#group:11"
-           });		
-        addAnnotation
-          (getServerRuntime_JndiConnection(), 
-           source, 
-           new String[] {
-             "kind", "element",
-             "name", "jndiConnection"
-           });		
-        addAnnotation
-          (getServerRuntime_Name(), 
-           source, 
-           new String[] {
-             "kind", "attribute",
-             "name", "name"
-           });		
-        addAnnotation
-          (getServerRuntime_Version(), 
-           source, 
-           new String[] {
-             "kind", "attribute",
-             "name", "version"
-           });
-    }
-
-} //ServerTypePackageImpl
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/util/ServerTypeAdapterFactory.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/util/ServerTypeAdapterFactory.java
deleted file mode 100644
index 151e8bb..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/util/ServerTypeAdapterFactory.java
+++ /dev/null
@@ -1,334 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: ServerTypeAdapterFactory.java,v 1.3 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.util;
-
-import org.eclipse.emf.common.notify.Adapter;
-import org.eclipse.emf.common.notify.Notifier;
-
-import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
-
-import org.eclipse.emf.ecore.EObject;
-
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-import org.eclipse.jst.server.generic.servertype.definition.*;
-
-/**
- * <!-- begin-user-doc -->
- * The <b>Adapter Factory</b> for the model.
- * It provides an adapter <code>createXXX</code> method for each class of the model.
- * <!-- end-user-doc -->
- * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage
- * @generated
- */
-public class ServerTypeAdapterFactory extends AdapterFactoryImpl {
-    /**
-     * The cached model package.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected static ServerTypePackage modelPackage;
-
-    /**
-     * Creates an instance of the adapter factory.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public ServerTypeAdapterFactory() {
-        if (modelPackage == null) {
-            modelPackage = ServerTypePackage.eINSTANCE;
-        }
-    }
-
-    /**
-     * Returns whether this factory is applicable for the type of the object.
-     * <!-- begin-user-doc -->
-	 * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
-	 * <!-- end-user-doc -->
-     * @return whether this factory is applicable for the type of the object.
-     * @generated
-     */
-	public boolean isFactoryForType(Object object) {
-        if (object == modelPackage) {
-            return true;
-        }
-        if (object instanceof EObject) {
-            return ((EObject)object).eClass().getEPackage() == modelPackage;
-        }
-        return false;
-    }
-
-    /**
-     * The switch the delegates to the <code>createXXX</code> methods.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected ServerTypeSwitch modelSwitch =
-        new ServerTypeSwitch() {
-            public Object caseArchiveType(ArchiveType object) {
-                return createArchiveTypeAdapter();
-            }
-            public Object caseClasspath(Classpath object) {
-                return createClasspathAdapter();
-            }
-            public Object caseJndiConnection(JndiConnection object) {
-                return createJndiConnectionAdapter();
-            }
-            public Object caseJndiProperty(JndiProperty object) {
-                return createJndiPropertyAdapter();
-            }
-            public Object caseLaunchConfiguration(LaunchConfiguration object) {
-                return createLaunchConfigurationAdapter();
-            }
-            public Object caseModule(Module object) {
-                return createModuleAdapter();
-            }
-            public Object casePort(Port object) {
-                return createPortAdapter();
-            }
-            public Object caseProject(Project object) {
-                return createProjectAdapter();
-            }
-            public Object caseProperty(Property object) {
-                return createPropertyAdapter();
-            }
-            public Object casePublisher(Publisher object) {
-                return createPublisherAdapter();
-            }
-            public Object casePublisherData(PublisherData object) {
-                return createPublisherDataAdapter();
-            }
-            public Object caseServerRuntime(ServerRuntime object) {
-                return createServerRuntimeAdapter();
-            }
-            public Object defaultCase(EObject object) {
-                return createEObjectAdapter();
-            }
-        };
-
-    /**
-     * Creates an adapter for the <code>target</code>.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param target the object to adapt.
-     * @return the adapter for the <code>target</code>.
-     * @generated
-     */
-	public Adapter createAdapter(Notifier target) {
-        return (Adapter)modelSwitch.doSwitch((EObject)target);
-    }
-
-
-    /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.jst.server.generic.servertype.definition.ArchiveType <em>Archive Type</em>}'.
-     * <!-- begin-user-doc -->
-	 * This default implementation returns null so that we can easily ignore cases;
-	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
-	 * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ArchiveType
-     * @generated
-     */
-	public Adapter createArchiveTypeAdapter() {
-        return null;
-    }
-
-    /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.jst.server.generic.servertype.definition.Classpath <em>Classpath</em>}'.
-     * <!-- begin-user-doc -->
-	 * This default implementation returns null so that we can easily ignore cases;
-	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
-	 * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Classpath
-     * @generated
-     */
-	public Adapter createClasspathAdapter() {
-        return null;
-    }
-
-    /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.jst.server.generic.servertype.definition.JndiConnection <em>Jndi Connection</em>}'.
-     * <!-- begin-user-doc -->
-     * This default implementation returns null so that we can easily ignore cases;
-     * it's useful to ignore a case when inheritance will catch all the cases anyway.
-     * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.jst.server.generic.servertype.definition.JndiConnection
-     * @generated
-     */
-    public Adapter createJndiConnectionAdapter() {
-        return null;
-    }
-
-    /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.jst.server.generic.servertype.definition.JndiProperty <em>Jndi Property</em>}'.
-     * <!-- begin-user-doc -->
-     * This default implementation returns null so that we can easily ignore cases;
-     * it's useful to ignore a case when inheritance will catch all the cases anyway.
-     * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.jst.server.generic.servertype.definition.JndiProperty
-     * @generated
-     */
-    public Adapter createJndiPropertyAdapter() {
-        return null;
-    }
-
-    /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration <em>Launch Configuration</em>}'.
-     * <!-- begin-user-doc -->
-	 * This default implementation returns null so that we can easily ignore cases;
-	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
-	 * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration
-     * @generated
-     */
-	public Adapter createLaunchConfigurationAdapter() {
-        return null;
-    }
-
-    /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.jst.server.generic.servertype.definition.Module <em>Module</em>}'.
-     * <!-- begin-user-doc -->
-	 * This default implementation returns null so that we can easily ignore cases;
-	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
-	 * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Module
-     * @generated
-     */
-	public Adapter createModuleAdapter() {
-        return null;
-    }
-
-    /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.jst.server.generic.servertype.definition.Port <em>Port</em>}'.
-     * <!-- begin-user-doc -->
-	 * This default implementation returns null so that we can easily ignore cases;
-	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
-	 * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Port
-     * @generated
-     */
-	public Adapter createPortAdapter() {
-        return null;
-    }
-
-    /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.jst.server.generic.servertype.definition.Project <em>Project</em>}'.
-     * <!-- begin-user-doc -->
-	 * This default implementation returns null so that we can easily ignore cases;
-	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
-	 * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Project
-     * @generated
-     */
-	public Adapter createProjectAdapter() {
-        return null;
-    }
-
-    /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.jst.server.generic.servertype.definition.Property <em>Property</em>}'.
-     * <!-- begin-user-doc -->
-	 * This default implementation returns null so that we can easily ignore cases;
-	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
-	 * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Property
-     * @generated
-     */
-	public Adapter createPropertyAdapter() {
-        return null;
-    }
-
-    /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.jst.server.generic.servertype.definition.Publisher <em>Publisher</em>}'.
-     * <!-- begin-user-doc -->
-	 * This default implementation returns null so that we can easily ignore cases;
-	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
-	 * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.jst.server.generic.servertype.definition.Publisher
-     * @generated
-     */
-	public Adapter createPublisherAdapter() {
-        return null;
-    }
-
-    /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.jst.server.generic.servertype.definition.PublisherData <em>Publisher Data</em>}'.
-     * <!-- begin-user-doc -->
-     * This default implementation returns null so that we can easily ignore cases;
-     * it's useful to ignore a case when inheritance will catch all the cases anyway.
-     * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.jst.server.generic.servertype.definition.PublisherData
-     * @generated
-     */
-    public Adapter createPublisherDataAdapter() {
-        return null;
-    }
-
-    /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime <em>Server Runtime</em>}'.
-     * <!-- begin-user-doc -->
-	 * This default implementation returns null so that we can easily ignore cases;
-	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
-	 * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerRuntime
-     * @generated
-     */
-	public Adapter createServerRuntimeAdapter() {
-        return null;
-    }
-
-    /**
-     * Creates a new adapter for the default case.
-     * <!-- begin-user-doc -->
-	 * This default implementation returns null.
-	 * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @generated
-     */
-	public Adapter createEObjectAdapter() {
-        return null;
-    }
-
-} //ServerTypeAdapterFactory
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/util/ServerTypeResourceFactoryImpl.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/util/ServerTypeResourceFactoryImpl.java
deleted file mode 100644
index 1417c90..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/util/ServerTypeResourceFactoryImpl.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: ServerTypeResourceFactoryImpl.java,v 1.1 2005/03/14 20:54:20 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.util;
-
-import org.eclipse.emf.common.util.URI;
-
-import org.eclipse.emf.ecore.resource.Resource;
-
-import org.eclipse.emf.ecore.util.ExtendedMetaData;
-
-import org.eclipse.emf.ecore.xmi.XMLResource;
-
-import org.eclipse.emf.ecore.xmi.impl.XMLResourceFactoryImpl;
-
-/**
- * <!-- begin-user-doc -->
- * The <b>Resource Factory</b> associated with the package.
- * <!-- end-user-doc -->
- * @see org.eclipse.jst.server.generic.internal.servertype.definition.util.ServerTypeResourceImpl
- * @generated
- */
-public class ServerTypeResourceFactoryImpl extends XMLResourceFactoryImpl {
-    /**
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected ExtendedMetaData extendedMetaData;
-
-    /**
-     * Creates an instance of the resource factory.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public ServerTypeResourceFactoryImpl() {
-        super();
-        extendedMetaData = ExtendedMetaData.INSTANCE;
-    }
-
-    /**
-     * Creates an instance of the resource.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public Resource createResource(URI uri) {
-        XMLResource result = new ServerTypeResourceImpl(uri);
-        result.getDefaultSaveOptions().put(XMLResource.OPTION_EXTENDED_META_DATA, extendedMetaData);
-        result.getDefaultLoadOptions().put(XMLResource.OPTION_EXTENDED_META_DATA, extendedMetaData);
-
-        result.getDefaultSaveOptions().put(XMLResource.OPTION_SCHEMA_LOCATION, Boolean.TRUE);
-        result.getDefaultSaveOptions().put(XMLResource.OPTION_USE_ENCODED_ATTRIBUTE_STYLE, Boolean.TRUE);
-
-        result.getDefaultLoadOptions().put(XMLResource.OPTION_USE_LEXICAL_HANDLER, Boolean.TRUE);
-        return result;
-    }
-
-} //ServerTypeResourceFactoryImpl
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/util/ServerTypeResourceImpl.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/util/ServerTypeResourceImpl.java
deleted file mode 100644
index 4a75fc7..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/util/ServerTypeResourceImpl.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: ServerTypeResourceImpl.java,v 1.1 2005/03/14 20:54:20 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.util;
-
-import org.eclipse.emf.common.util.URI;
-
-import org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl;
-
-/**
- * <!-- begin-user-doc -->
- * The <b>Resource </b> associated with the package.
- * <!-- end-user-doc -->
- * @see org.eclipse.jst.server.generic.internal.servertype.definition.util.ServerTypeResourceFactoryImpl
- * @generated
- */
-public class ServerTypeResourceImpl extends XMLResourceImpl {
-    /**
-     * Creates an instance of the resource.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param uri the URI of the new resource.
-     * @generated
-     */
-	public ServerTypeResourceImpl(URI uri) {
-        super(uri);
-    }
-
-} //ServerTypeResourceFactoryImpl
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/util/ServerTypeSwitch.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/util/ServerTypeSwitch.java
deleted file mode 100644
index a7cbf99..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/servertype/definition/util/ServerTypeSwitch.java
+++ /dev/null
@@ -1,388 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: ServerTypeSwitch.java,v 1.3 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.internal.servertype.definition.util;
-
-import java.util.List;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
-
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-import org.eclipse.jst.server.generic.servertype.definition.*;
-
-/**
- * <!-- begin-user-doc -->
- * The <b>Switch</b> for the model's inheritance hierarchy.
- * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
- * to invoke the <code>caseXXX</code> method for each class of the model,
- * starting with the actual class of the object
- * and proceeding up the inheritance hierarchy
- * until a non-null result is returned,
- * which is the result of the switch.
- * <!-- end-user-doc -->
- * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage
- * @generated
- */
-public class ServerTypeSwitch {
-    /**
-     * The cached model package
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	protected static ServerTypePackage modelPackage;
-
-    /**
-     * Creates an instance of the switch.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	public ServerTypeSwitch() {
-        if (modelPackage == null) {
-            modelPackage = ServerTypePackage.eINSTANCE;
-        }
-    }
-
-    /**
-     * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the first non-null result returned by a <code>caseXXX</code> call.
-     * @generated
-     */
-	public Object doSwitch(EObject theEObject) {
-        return doSwitch(theEObject.eClass(), theEObject);
-    }
-
-    /**
-     * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the first non-null result returned by a <code>caseXXX</code> call.
-     * @generated
-     */
-	protected Object doSwitch(EClass theEClass, EObject theEObject) {
-        if (theEClass.eContainer() == modelPackage) {
-            return doSwitch(theEClass.getClassifierID(), theEObject);
-        }
-        else {
-            List eSuperTypes = theEClass.getESuperTypes();
-            return
-                eSuperTypes.isEmpty() ?
-                    defaultCase(theEObject) :
-                    doSwitch((EClass)eSuperTypes.get(0), theEObject);
-        }
-    }
-
-    /**
-     * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the first non-null result returned by a <code>caseXXX</code> call.
-     * @generated
-     */
-	protected Object doSwitch(int classifierID, EObject theEObject) {
-        switch (classifierID) {
-            case ServerTypePackage.ARCHIVE_TYPE: {
-                ArchiveType archiveType = (ArchiveType)theEObject;
-                Object result = caseArchiveType(archiveType);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case ServerTypePackage.CLASSPATH: {
-                Classpath classpath = (Classpath)theEObject;
-                Object result = caseClasspath(classpath);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case ServerTypePackage.JNDI_CONNECTION: {
-                JndiConnection jndiConnection = (JndiConnection)theEObject;
-                Object result = caseJndiConnection(jndiConnection);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case ServerTypePackage.JNDI_PROPERTY: {
-                JndiProperty jndiProperty = (JndiProperty)theEObject;
-                Object result = caseJndiProperty(jndiProperty);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case ServerTypePackage.LAUNCH_CONFIGURATION: {
-                LaunchConfiguration launchConfiguration = (LaunchConfiguration)theEObject;
-                Object result = caseLaunchConfiguration(launchConfiguration);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case ServerTypePackage.MODULE: {
-                Module module = (Module)theEObject;
-                Object result = caseModule(module);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case ServerTypePackage.PORT: {
-                Port port = (Port)theEObject;
-                Object result = casePort(port);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case ServerTypePackage.PROJECT: {
-                Project project = (Project)theEObject;
-                Object result = caseProject(project);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case ServerTypePackage.PROPERTY: {
-                Property property = (Property)theEObject;
-                Object result = caseProperty(property);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case ServerTypePackage.PUBLISHER: {
-                Publisher publisher = (Publisher)theEObject;
-                Object result = casePublisher(publisher);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case ServerTypePackage.PUBLISHER_DATA: {
-                PublisherData publisherData = (PublisherData)theEObject;
-                Object result = casePublisherData(publisherData);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case ServerTypePackage.SERVER_RUNTIME: {
-                ServerRuntime serverRuntime = (ServerRuntime)theEObject;
-                Object result = caseServerRuntime(serverRuntime);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            default: return defaultCase(theEObject);
-        }
-    }
-
-    /**
-     * Returns the result of interpretting the object as an instance of '<em>Archive Type</em>'.
-     * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch.
-	 * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpretting the object as an instance of '<em>Archive Type</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
-	public Object caseArchiveType(ArchiveType object) {
-        return null;
-    }
-
-    /**
-     * Returns the result of interpretting the object as an instance of '<em>Classpath</em>'.
-     * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch.
-	 * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpretting the object as an instance of '<em>Classpath</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
-	public Object caseClasspath(Classpath object) {
-        return null;
-    }
-
-    /**
-     * Returns the result of interpretting the object as an instance of '<em>Jndi Connection</em>'.
-     * <!-- begin-user-doc -->
-     * This implementation returns null;
-     * returning a non-null result will terminate the switch.
-     * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpretting the object as an instance of '<em>Jndi Connection</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
-    public Object caseJndiConnection(JndiConnection object) {
-        return null;
-    }
-
-    /**
-     * Returns the result of interpretting the object as an instance of '<em>Jndi Property</em>'.
-     * <!-- begin-user-doc -->
-     * This implementation returns null;
-     * returning a non-null result will terminate the switch.
-     * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpretting the object as an instance of '<em>Jndi Property</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
-    public Object caseJndiProperty(JndiProperty object) {
-        return null;
-    }
-
-    /**
-     * Returns the result of interpretting the object as an instance of '<em>Launch Configuration</em>'.
-     * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch.
-	 * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpretting the object as an instance of '<em>Launch Configuration</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
-	public Object caseLaunchConfiguration(LaunchConfiguration object) {
-        return null;
-    }
-
-    /**
-     * Returns the result of interpretting the object as an instance of '<em>Module</em>'.
-     * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch.
-	 * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpretting the object as an instance of '<em>Module</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
-	public Object caseModule(Module object) {
-        return null;
-    }
-
-    /**
-     * Returns the result of interpretting the object as an instance of '<em>Port</em>'.
-     * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch.
-	 * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpretting the object as an instance of '<em>Port</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
-	public Object casePort(Port object) {
-        return null;
-    }
-
-    /**
-     * Returns the result of interpretting the object as an instance of '<em>Project</em>'.
-     * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch.
-	 * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpretting the object as an instance of '<em>Project</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
-	public Object caseProject(Project object) {
-        return null;
-    }
-
-    /**
-     * Returns the result of interpretting the object as an instance of '<em>Property</em>'.
-     * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch.
-	 * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpretting the object as an instance of '<em>Property</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
-	public Object caseProperty(Property object) {
-        return null;
-    }
-
-    /**
-     * Returns the result of interpretting the object as an instance of '<em>Publisher</em>'.
-     * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch.
-	 * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpretting the object as an instance of '<em>Publisher</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
-	public Object casePublisher(Publisher object) {
-        return null;
-    }
-
-    /**
-     * Returns the result of interpretting the object as an instance of '<em>Publisher Data</em>'.
-     * <!-- begin-user-doc -->
-     * This implementation returns null;
-     * returning a non-null result will terminate the switch.
-     * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpretting the object as an instance of '<em>Publisher Data</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
-    public Object casePublisherData(PublisherData object) {
-        return null;
-    }
-
-    /**
-     * Returns the result of interpretting the object as an instance of '<em>Server Runtime</em>'.
-     * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch.
-	 * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpretting the object as an instance of '<em>Server Runtime</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
-	public Object caseServerRuntime(ServerRuntime object) {
-        return null;
-    }
-
-    /**
-     * Returns the result of interpretting the object as an instance of '<em>EObject</em>'.
-     * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch, but this is the last case anyway.
-	 * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpretting the object as an instance of '<em>EObject</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject)
-     * @generated
-     */
-	public Object defaultCase(EObject object) {
-        return null;
-    }
-
-} //ServerTypeSwitch
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/xml/Resolver.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/xml/Resolver.java
deleted file mode 100644
index ddf43e4..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/xml/Resolver.java
+++ /dev/null
@@ -1,174 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     Naci M. Dai - initial API and implementation
- *     
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-
-package org.eclipse.jst.server.generic.internal.xml;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.jst.server.generic.servertype.definition.ArchiveType;
-import org.eclipse.jst.server.generic.servertype.definition.Property;
-import org.eclipse.jst.server.generic.servertype.definition.ServerRuntime;
-
-
-public class Resolver {
-
-
-
-	private Map fPropertyValues = new HashMap();
-	private ServerRuntime server;
-
-	/**
-	 * @param impl
-	 */
-	public Resolver(ServerRuntime runtime) {
-		this.server = runtime;
-	}
-	
-	public List resolveClasspathProperties(List cpList)
-	{
-		ArrayList list = new ArrayList(cpList.size());
-		for (int i = 0; i < cpList.size(); i++) {
-			ArchiveType item = (ArchiveType) cpList.get(i);
-			String cpath = resolveProperties(item.getPath());
-			list.add(cpath);
-		}
-		return list;
-	}	
-	public String resolveProperties(String proppedString) {
-		HashMap cache = new HashMap(getProperties().size());
-		Iterator itr = getProperties().iterator();
-		while (itr.hasNext()) {
-			Property element =(Property) itr.next();
-			String value = element.getDefault();
-			if(fPropertyValues != null && fPropertyValues.containsKey(element.getId()))
-			    value=(String)fPropertyValues.get(element.getId());
-			 cache.put(element.getId(), value);
-		}
-		//String vmPath = install.getInstallLocation().getCanonicalPath();
-		//vmPath = vmPath.replace('\\', '/');
-		cache.put("jrePath", "JRE");
-
-		String str = resolvePropertiesFromCache(proppedString, cache);
-		str = fixPassthroughProperties(str);
-		return str;
-	}
-
-	/**
-	 * @return
-	 */
-	private List getProperties() {
-		return this.server.getProperty();
-	}
-
-	/**
-	 * @param str
-	 * @return
-	 */
-	private String fixPassthroughProperties(String str) {
-		String resolvedString = str;
-		if (isPassPropertyLeft(resolvedString)) {
-			resolvedString = fixParam(resolvedString);
-			resolvedString = fixPassthroughProperties(resolvedString);
-		}
-		return resolvedString;
-	}
-
-	private String resolvePropertiesFromCache(
-		String proppedString,
-		HashMap cache) {
-		String resolvedString = proppedString;
-		int start = skipToProperty(resolvedString,cache);
-		if (start >= 0) {
-			resolvedString = resolveProperty(resolvedString, start, cache);
-			resolvedString = resolvePropertiesFromCache(resolvedString, cache);
-		}
-		return resolvedString;
-	}
-
-	private int skipToProperty(String str,HashMap cache) {
-		int start = -1; 
-		int end =  0;
-		String value = null;
-		do {
-			start =  str.indexOf("${",end);
-			if( start < 0)
-				return start;
-			end = str.indexOf("}", start);
-			
-			String key = str.substring(start + 2, end);
-			value = (String)cache.get(key);
-		}
-		while(value == null);
-		return start;
-	}
-	
-	private boolean isPassPropertyLeft(String str) {
-		return str.indexOf("%{") >= 0;
-	}
-
-	private String resolveProperty(String proppedString, int start, HashMap cache) {
-		String str = proppedString;
-		start = str.indexOf("${");
-		int end = str.indexOf("}", start);
-		String key = str.substring(start + 2, end);
-		String value = (String)cache.get(key);
-		if(value == null )
-			return str;
-		return str.substring(0, start)
-			+ value
-			+ str.substring(end + 1);
-	}
-	
-	private String fixParam(String proppedString) {
-		String str = proppedString;
-		int start = str.indexOf("%{");
-		return str.substring(0, start)
-			+ "${"
-			+ str.substring(start+2);
-	}
-	
-	/**
-	 * @return Returns the fPropertyValues.
-	 */
-	public Map getPropertyValues() {
-		return fPropertyValues;
-	}
-	/**
-	 * @param propertyValues The fPropertyValues to set.
-	 */
-	public void setPropertyValues(Map propertyValues) {
-		fPropertyValues = propertyValues;
-	}
-}
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/xml/XMLUtils.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/xml/XMLUtils.java
deleted file mode 100644
index f8e1642..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/internal/xml/XMLUtils.java
+++ /dev/null
@@ -1,171 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     Naci M. Dai - initial API and implementation
- *     
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-
-package org.eclipse.jst.server.generic.internal.xml;
-
-import java.net.URISyntaxException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Iterator;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.common.util.WrappedException;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
-import org.eclipse.jst.server.generic.core.internal.CorePlugin;
-import org.eclipse.jst.server.generic.internal.core.util.ExtensionPointUtil;
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-import org.eclipse.jst.server.generic.internal.servertype.definition.util.ServerTypeResourceFactoryImpl;
-import org.eclipse.jst.server.generic.servertype.definition.ServerRuntime;
-import org.osgi.framework.Bundle;
-
-public class XMLUtils {
-
-	
-    private ArrayList definitions;
-
-
-	public XMLUtils() {
-		refresh();
-	}
-
-	public void refresh() {
-		definitions= new ArrayList();
-         IExtension[] extensions = ExtensionPointUtil.getGenericServerDefinitionExtensions();
-        for (int i = 0; extensions!=null && i < extensions.length; i++) {
-            java.net.URI definitionFile=null;
-            IExtension extension = extensions[i];
-            IConfigurationElement[] elements = ExtensionPointUtil.getConfigurationElements(extension);
-            for (int j = 0; j < elements.length; j++) {
-                IConfigurationElement element = elements[j];
-                definitionFile = getDefinitionFile(element);
-                ServerRuntime runtime =readFile(definitionFile);
-                    if(runtime!=null){
-                        runtime.setId(element.getAttribute("id"));
-                        runtime.setConfigurationElementNamespace(element.getNamespace());
-                        definitions.add(runtime);
-                    }
-                }
-            }
-
-       }
-
-
-    /**
-     * @param extension
-     */
-    private java.net.URI getDefinitionFile(IConfigurationElement element) {
-        Bundle bundle = Platform.getBundle(element.getNamespace());
-        String definitionFile = element.getAttribute("definitionfile");
-		URL url = bundle.getEntry(definitionFile);
-		try {
-			java.net.URI uri = new java.net.URI(url.getProtocol(), url.getHost(),url.getPath(), url.getQuery());
-		    return uri;
-		} catch (URISyntaxException e) {
-			//ignore
-		}
-        return null;
-    }
-
-    public ServerRuntime readFile(java.net.URI file) {
-        // Create a resource set.
-        ResourceSet resourceSet = new ResourceSetImpl();
-
-        // Register the default resource factory -- only needed for
-        // stand-alone!
-        resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap()
-                .put(Resource.Factory.Registry.DEFAULT_EXTENSION,
-                        new ServerTypeResourceFactoryImpl());
-
-         ServerTypePackage gstPack = ServerTypePackage.eINSTANCE;
-
-        // Get the URI of the model file.
-        URI fileURI = URI.createURI(file.toString());
-
-        // Demand load the resource for this file.
-        Resource resource = null;
-        try {
-            resource = resourceSet.getResource(fileURI, true);
-        } catch (WrappedException e) {
-            // sth wrong with this .server file.
-            CorePlugin.getDefault().getLog().log(
-                    new Status(IStatus.ERROR, CorePlugin.PLUGIN_ID, 1,
-                            "Error loading the server type definition", e));
-        }
-
-        if (resource != null) {
-            ServerRuntime def = (ServerRuntime) resource.getContents().get(0);
-            if (def != null) {
-                def.setFilename(file.toString());
-                return def;
-            }
-        }
-        return null;
-
-    }
-
-
-	/**
-	 * @return ArrayList
-	 */
-	public ArrayList getServerTypeDefinitions() {
-		return definitions;
-	}
-
-    public ServerRuntime getServerTypeDefinition(String id) {
-        refresh();
-        Iterator defs = getServerTypeDefinitions().iterator();
-        while (defs.hasNext()) {
-            ServerRuntime elem = (ServerRuntime) defs.next();
-            if (id.equals(elem.getId()))
-                return elem;
-        }
-        return null;
-    }
-   
-	/**
-	 * Sets the definitions.
-	 * 
-	 * @param definitions
-	 *            The definitions to set
-	 */
-	public void setDefinitions(ArrayList definitions) {
-		this.definitions = definitions;
-	}
-
-	
-	
-}
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/ArchiveType.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/ArchiveType.java
deleted file mode 100644
index 68a8333..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/ArchiveType.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: ArchiveType.java,v 1.7 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.servertype.definition;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Archive Type</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.ArchiveType#getPath <em>Path</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getArchiveType()
- * @model extendedMetaData="name='archive_._type' kind='empty'"
- * @generated
- */
-public interface ArchiveType extends EObject{
-    /**
-     * Returns the value of the '<em><b>Path</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Path</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-     * 
-	 * </p>
-	 * @since 1.0
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Path</em>' attribute.
-     * @see #setPath(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getArchiveType_Path()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String"
-     *        extendedMetaData="kind='attribute' name='path'"
-     * @generated
-     */
-	String getPath();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.ArchiveType#getPath <em>Path</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * @since 1.0
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Path</em>' attribute.
-     * @see #getPath()
-     * @generated
-     */
-//	void setPath(String value);
-
-} // ArchiveType
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Classpath.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Classpath.java
deleted file mode 100644
index 44845ee..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Classpath.java
+++ /dev/null
@@ -1,173 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: Classpath.java,v 1.7 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.servertype.definition;
-
-import java.util.List;
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Classpath</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Classpath#getGroup <em>Group</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Classpath#getArchive <em>Archive</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Classpath#getId <em>Id</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Classpath#isIsLibrary <em>Is Library</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getClasspath()
- * @model extendedMetaData="name='Classpath' kind='elementOnly'"
- * @generated
- */
-public interface Classpath extends EObject{
-    /**
-     * Returns the value of the '<em><b>Group</b></em>' attribute list.
-     * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Group</em>' attribute list isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Group</em>' attribute list.
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getClasspath_Group()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true"
-     *        extendedMetaData="kind='group' name='group:0'"
-     * @generated
-     */
-//    FeatureMap getGroup();
-
-    /**
-     * Returns the value of the '<em><b>Archive</b></em>' containment reference list.
-     * The list contents are of type {@link org.eclipse.jst.server.generic.servertype.definition.ArchiveType}.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Archive</em>' containment reference list isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Archive</em>' containment reference list.
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getClasspath_Archive()
-     * @model type="org.eclipse.jst.server.generic.servertype.definition.ArchiveType" containment="true" resolveProxies="false" required="true" transient="true" volatile="true" derived="true"
-     *        extendedMetaData="kind='element' name='archive' group='#group:0'"
-     * @generated
-     */
-	List getArchive();
-
-    /**
-     * Returns the value of the '<em><b>Id</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Id</em>' attribute.
-     * @see #setId(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getClasspath_Id()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String"
-     *        extendedMetaData="kind='attribute' name='id'"
-     * @generated
-     */
-	String getId();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.Classpath#getId <em>Id</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Id</em>' attribute.
-     * @see #getId()
-     * @generated
-     */
-//	void setId(String value);
-
-    /**
-     * Returns the value of the '<em><b>Is Library</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Is Library</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Is Library</em>' attribute.
-     * @see #isSetIsLibrary()
-     * @see #unsetIsLibrary()
-     * @see #setIsLibrary(boolean)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getClasspath_IsLibrary()
-     * @model unique="false" unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean"
-     *        extendedMetaData="kind='attribute' name='isLibrary'"
-     * @generated
-     */
-	boolean isIsLibrary();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.Classpath#isIsLibrary <em>Is Library</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Is Library</em>' attribute.
-     * @see #isSetIsLibrary()
-     * @see #unsetIsLibrary()
-     * @see #isIsLibrary()
-     * @generated
-     */
-//	void setIsLibrary(boolean value);
-
-    /**
-     * Unsets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.Classpath#isIsLibrary <em>Is Library</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @see #isSetIsLibrary()
-     * @see #isIsLibrary()
-     * @see #setIsLibrary(boolean)
-     * @generated
-     */
-//	void unsetIsLibrary();
-
-    /**
-     * Returns whether the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.Classpath#isIsLibrary <em>Is Library</em>}' attribute is set.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return whether the value of the '<em>Is Library</em>' attribute is set.
-     * @see #unsetIsLibrary()
-     * @see #isIsLibrary()
-     * @see #setIsLibrary(boolean)
-     * @generated
-     */
-//	boolean isSetIsLibrary();
-
-} // Classpath
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/JndiConnection.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/JndiConnection.java
deleted file mode 100644
index 6965e13..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/JndiConnection.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: JndiConnection.java,v 1.3 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.servertype.definition;
-
-import java.util.List;
-import org.eclipse.emf.ecore.EObject;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Jndi Connection</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.JndiConnection#getProviderUrl <em>Provider Url</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.JndiConnection#getGroup <em>Group</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.JndiConnection#getJndiProperty <em>Jndi Property</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.JndiConnection#getInitialContextFactory <em>Initial Context Factory</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getJndiConnection()
- * @model extendedMetaData="name='jndiConnection' kind='elementOnly'"
- * @generated
- */
-public interface JndiConnection extends EObject{
-    /**
-     * Returns the value of the '<em><b>Provider Url</b></em>' attribute.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Provider Url</em>' attribute isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Provider Url</em>' attribute.
-     * @see #setProviderUrl(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getJndiConnection_ProviderUrl()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='providerUrl'"
-     * @generated
-     */
-    String getProviderUrl();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.JndiConnection#getProviderUrl <em>Provider Url</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Provider Url</em>' attribute.
-     * @see #getProviderUrl()
-     * @generated
-     */
-//    void setProviderUrl(String value);
-
-    /**
-     * Returns the value of the '<em><b>Group</b></em>' attribute list.
-     * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Group</em>' attribute list isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Group</em>' attribute list.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerTypePackage#getJndiConnection_Group()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true"
-     *        extendedMetaData="kind='group' name='group:1'"
-     * @generated
-     */
-//    FeatureMap getGroup();
-
-    /**
-     * Returns the value of the '<em><b>Jndi Property</b></em>' containment reference list.
-     * The list contents are of type {@link org.eclipse.jst.server.generic.servertype.definition.JndiProperty}.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Jndi Property</em>' containment reference list isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Jndi Property</em>' containment reference list.
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getJndiConnection_JndiProperty()
-     * @model type="org.eclipse.jst.server.generic.servertype.definition.JndiProperty" containment="true" resolveProxies="false" transient="true" volatile="true" derived="true"
-     *        extendedMetaData="kind='element' name='jndiProperty' group='#group:1'"
-     * @generated
-     */
-    List getJndiProperty();
-
-    /**
-     * Returns the value of the '<em><b>Initial Context Factory</b></em>' attribute.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Initial Context Factory</em>' attribute isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Initial Context Factory</em>' attribute.
-     * @see #setInitialContextFactory(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getJndiConnection_InitialContextFactory()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='initialContextFactory'"
-     * @generated
-     */
-    String getInitialContextFactory();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.JndiConnection#getInitialContextFactory <em>Initial Context Factory</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Initial Context Factory</em>' attribute.
-     * @see #getInitialContextFactory()
-     * @generated
-     */
-//    void setInitialContextFactory(String value);
-
-} // JndiConnection
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/JndiProperty.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/JndiProperty.java
deleted file mode 100644
index 1dc450e..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/JndiProperty.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: JndiProperty.java,v 1.3 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.servertype.definition;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Jndi Property</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.JndiProperty#getName <em>Name</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.JndiProperty#getValue <em>Value</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getJndiProperty()
- * @model extendedMetaData="name='jndiProperty' kind='elementOnly'"
- * @generated
- */
-public interface JndiProperty extends EObject {
-    /**
-     * Returns the value of the '<em><b>Name</b></em>' attribute.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Name</em>' attribute isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Name</em>' attribute.
-     * @see #setName(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getJndiProperty_Name()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='name'"
-     * @generated
-     */
-    String getName();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.JndiProperty#getName <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Name</em>' attribute.
-     * @see #getName()
-     * @generated
-     */
-//    void setName(String value);
-
-    /**
-     * Returns the value of the '<em><b>Value</b></em>' attribute.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Value</em>' attribute isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Value</em>' attribute.
-     * @see #setValue(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getJndiProperty_Value()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='value'"
-     * @generated
-     */
-    String getValue();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.JndiProperty#getValue <em>Value</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Value</em>' attribute.
-     * @see #getValue()
-     * @generated
-     */
-//    void setValue(String value);
-
-} // JndiProperty
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/LaunchConfiguration.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/LaunchConfiguration.java
deleted file mode 100644
index a35c726..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/LaunchConfiguration.java
+++ /dev/null
@@ -1,193 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: LaunchConfiguration.java,v 1.6 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.servertype.definition;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Launch Configuration</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getMainClass <em>Main Class</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getWorkingDirectory <em>Working Directory</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getProgramArguments <em>Program Arguments</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getVmParameters <em>Vm Parameters</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getClasspathReference <em>Classpath Reference</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getLaunchConfiguration()
- * @model extendedMetaData="name='LaunchConfiguration' kind='elementOnly'"
- * @generated
- */
-public interface LaunchConfiguration extends EObject{
-    /**
-     * Returns the value of the '<em><b>Main Class</b></em>' attribute.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Main Class</em>' attribute isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Main Class</em>' attribute.
-     * @see #setMainClass(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getLaunchConfiguration_MainClass()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='mainClass'"
-     * @generated
-     */
-    String getMainClass();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getMainClass <em>Main Class</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Main Class</em>' attribute.
-     * @see #getMainClass()
-     * @generated
-     */
-//    void setMainClass(String value);
-
-    /**
-     * Returns the value of the '<em><b>Working Directory</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Working Directory</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Working Directory</em>' attribute.
-     * @see #setWorkingDirectory(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getLaunchConfiguration_WorkingDirectory()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='workingDirectory'"
-     * @generated
-     */
-	String getWorkingDirectory();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getWorkingDirectory <em>Working Directory</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Working Directory</em>' attribute.
-     * @see #getWorkingDirectory()
-     * @generated
-     */
-//	void setWorkingDirectory(String value);
-
-    /**
-     * Returns the value of the '<em><b>Program Arguments</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Program Arguments</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Program Arguments</em>' attribute.
-     * @see #setProgramArguments(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getLaunchConfiguration_ProgramArguments()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='programArguments'"
-     * @generated
-     */
-	String getProgramArguments();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getProgramArguments <em>Program Arguments</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Program Arguments</em>' attribute.
-     * @see #getProgramArguments()
-     * @generated
-     */
-//	void setProgramArguments(String value);
-
-    /**
-     * Returns the value of the '<em><b>Vm Parameters</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Vm Parameters</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Vm Parameters</em>' attribute.
-     * @see #setVmParameters(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getLaunchConfiguration_VmParameters()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='vmParameters'"
-     * @generated
-     */
-	String getVmParameters();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getVmParameters <em>Vm Parameters</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Vm Parameters</em>' attribute.
-     * @see #getVmParameters()
-     * @generated
-     */
-//	void setVmParameters(String value);
-
-    /**
-     * Returns the value of the '<em><b>Classpath Reference</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Classpath Reference</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Classpath Reference</em>' attribute.
-     * @see #setClasspathReference(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getLaunchConfiguration_ClasspathReference()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='classpathReference'"
-     * @generated
-     */
-	String getClasspathReference();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.LaunchConfiguration#getClasspathReference <em>Classpath Reference</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Classpath Reference</em>' attribute.
-     * @see #getClasspathReference()
-     * @generated
-     */
-//	void setClasspathReference(String value);
-
-} // LaunchConfiguration
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Module.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Module.java
deleted file mode 100644
index 87d1544..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Module.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: Module.java,v 1.5 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.servertype.definition;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Module</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Module#getType <em>Type</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Module#getPublishDir <em>Publish Dir</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Module#getPublisherReference <em>Publisher Reference</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getModule()
- * @model extendedMetaData="name='Module' kind='elementOnly'"
- * @generated
- */
-public interface Module extends EObject{
-    /**
-     * Returns the value of the '<em><b>Type</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Type</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Type</em>' attribute.
-     * @see #setType(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getModule_Type()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='type'"
-     * @generated
-     */
-	String getType();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.Module#getType <em>Type</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Type</em>' attribute.
-     * @see #getType()
-     * @generated
-     */
-//	void setType(String value);
-
-    /**
-     * Returns the value of the '<em><b>Publish Dir</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Publish Dir</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Publish Dir</em>' attribute.
-     * @see #setPublishDir(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getModule_PublishDir()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='publishDir'"
-     * @generated
-     */
-	String getPublishDir();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.Module#getPublishDir <em>Publish Dir</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Publish Dir</em>' attribute.
-     * @see #getPublishDir()
-     * @generated
-     */
-//	void setPublishDir(String value);
-
-    /**
-     * Returns the value of the '<em><b>Publisher Reference</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Publisher Reference</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Publisher Reference</em>' attribute.
-     * @see #setPublisherReference(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getModule_PublisherReference()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='publisherReference'"
-     * @generated
-     */
-	String getPublisherReference();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.Module#getPublisherReference <em>Publisher Reference</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Publisher Reference</em>' attribute.
-     * @see #getPublisherReference()
-     * @generated
-     */
-//	void setPublisherReference(String value);
-
-} // Module
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Port.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Port.java
deleted file mode 100644
index 8189aa6..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Port.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: Port.java,v 1.5 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.servertype.definition;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Port</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Port#getNo <em>No</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Port#getName <em>Name</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Port#getProtocol <em>Protocol</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getPort()
- * @model extendedMetaData="name='Port' kind='elementOnly'"
- * @generated
- */
-public interface Port extends EObject{
-    /**
-     * Returns the value of the '<em><b>No</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>No</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>No</em>' attribute.
-     * @see #setNo(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getPort_No()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='no'"
-     * @generated
-     */
-	String getNo();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.Port#getNo <em>No</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>No</em>' attribute.
-     * @see #getNo()
-     * @generated
-     */
-//	void setNo(String value);
-
-    /**
-     * Returns the value of the '<em><b>Name</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Name</em>' attribute.
-     * @see #setName(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getPort_Name()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='name'"
-     * @generated
-     */
-	String getName();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.Port#getName <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Name</em>' attribute.
-     * @see #getName()
-     * @generated
-     */
-//	void setName(String value);
-
-    /**
-     * Returns the value of the '<em><b>Protocol</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Protocol</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Protocol</em>' attribute.
-     * @see #setProtocol(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getPort_Protocol()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='protocol'"
-     * @generated
-     */
-	String getProtocol();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.Port#getProtocol <em>Protocol</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Protocol</em>' attribute.
-     * @see #getProtocol()
-     * @generated
-     */
-//	void setProtocol(String value);
-
-} // Port
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Project.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Project.java
deleted file mode 100644
index 46e0ac9..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Project.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: Project.java,v 1.6 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.servertype.definition;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Project</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Project#getClasspathReference <em>Classpath Reference</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getProject()
- * @model extendedMetaData="name='Project' kind='elementOnly'"
- * @generated
- */
-public interface Project extends EObject{
-    /**
-     * Returns the value of the '<em><b>Classpath Reference</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Classpath Reference</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Classpath Reference</em>' attribute.
-     * @see #setClasspathReference(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getProject_ClasspathReference()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='classpathReference'"
-     * @generated
-     */
-	String getClasspathReference();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.Project#getClasspathReference <em>Classpath Reference</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Classpath Reference</em>' attribute.
-     * @see #getClasspathReference()
-     * @generated
-     */
-//	void setClasspathReference(String value);
-
-} // Project
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Property.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Property.java
deleted file mode 100644
index 8ab0b72..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Property.java
+++ /dev/null
@@ -1,196 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: Property.java,v 1.5 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.servertype.definition;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Property</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Property#getContext <em>Context</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Property#getDefault <em>Default</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Property#getId <em>Id</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Property#getLabel <em>Label</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Property#getType <em>Type</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getProperty()
- * @model extendedMetaData="name='Property' kind='empty'"
- * @generated
- */
-public interface Property extends EObject{
-	String CONTEXT_RUNTIME = "runtime";
-	String CONTEXT_SERVER = "server";
-
-    /**
-     * Returns the value of the '<em><b>Context</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Context</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Context</em>' attribute.
-     * @see #setContext(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getProperty_Context()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String"
-     *        extendedMetaData="kind='attribute' name='context'"
-     * @generated
-     */
-	String getContext();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.Property#getContext <em>Context</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Context</em>' attribute.
-     * @see #getContext()
-     * @generated
-     */
-//	void setContext(String value);
-
-    /**
-     * Returns the value of the '<em><b>Default</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Default</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Default</em>' attribute.
-     * @see #setDefault(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getProperty_Default()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String"
-     *        extendedMetaData="kind='attribute' name='default'"
-     * @generated
-     */
-	String getDefault();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.Property#getDefault <em>Default</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Default</em>' attribute.
-     * @see #getDefault()
-     * @generated
-     */
-//	void setDefault(String value);
-
-    /**
-     * Returns the value of the '<em><b>Id</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Id</em>' attribute.
-     * @see #setId(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getProperty_Id()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String"
-     *        extendedMetaData="kind='attribute' name='id'"
-     * @generated
-     */
-	String getId();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.Property#getId <em>Id</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Id</em>' attribute.
-     * @see #getId()
-     * @generated
-     */
-//	void setId(String value);
-
-    /**
-     * Returns the value of the '<em><b>Label</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Label</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Label</em>' attribute.
-     * @see #setLabel(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getProperty_Label()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String"
-     *        extendedMetaData="kind='attribute' name='label'"
-     * @generated
-     */
-	String getLabel();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.Property#getLabel <em>Label</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Label</em>' attribute.
-     * @see #getLabel()
-     * @generated
-     */
-//	void setLabel(String value);
-
-    /**
-     * Returns the value of the '<em><b>Type</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Type</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Type</em>' attribute.
-     * @see #setType(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getProperty_Type()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String"
-     *        extendedMetaData="kind='attribute' name='type'"
-     * @generated
-     */
-	String getType();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.Property#getType <em>Type</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Type</em>' attribute.
-     * @see #getType()
-     * @generated
-     */
-//	void setType(String value);
-
-} // Property
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Publisher.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Publisher.java
deleted file mode 100644
index f908334..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/Publisher.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: Publisher.java,v 1.7 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.servertype.definition;
-
-import java.util.List;
-import org.eclipse.emf.ecore.EObject;
-
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Publisher</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Publisher#getGroup <em>Group</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Publisher#getPublisherdata <em>Publisherdata</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.Publisher#getId <em>Id</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getPublisher()
- * @model extendedMetaData="name='Publisher' kind='elementOnly'"
- * @generated
- */
-public interface Publisher extends EObject{
-    /**
-     * Returns the value of the '<em><b>Group</b></em>' attribute list.
-     * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Group</em>' attribute list isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Group</em>' attribute list.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerTypePackage#getPublisher_Group()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true"
-     *        extendedMetaData="kind='group' name='group:0'"
-     * @generated NOT
-     */
-//    FeatureMap getGroup();
-
-    /**
-     * Returns the value of the '<em><b>Publisherdata</b></em>' containment reference list.
-     * The list contents are of type {@link org.eclipse.jst.server.generic.servertype.definition.PublisherData}.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Publisherdata</em>' containment reference list isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Publisherdata</em>' containment reference list.
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getPublisher_Publisherdata()
-     * @model type="org.eclipse.jst.server.generic.servertype.definition.PublisherData" containment="true" resolveProxies="false" required="true" transient="true" volatile="true" derived="true"
-     *        extendedMetaData="kind='element' name='publisherdata' group='#group:0'"
-     * @generated
-     */
-    List getPublisherdata();
-
-    /**
-     * Returns the value of the '<em><b>Id</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Id</em>' attribute.
-     * @see #setId(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getPublisher_Id()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String"
-     *        extendedMetaData="kind='attribute' name='id'"
-     * @generated
-     */
-	String getId();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.Publisher#getId <em>Id</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Id</em>' attribute.
-     * @see #getId()
-     * @generated
-     */
-//	void setId(String value);
-
-} // Publisher
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/PublisherData.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/PublisherData.java
deleted file mode 100644
index bbd9753..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/PublisherData.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/**
- * <copyright>
- * </copyright>
- *
- * $Id: PublisherData.java,v 1.4 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.servertype.definition;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Publisher Data</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.PublisherData#getDataname <em>Dataname</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.PublisherData#getDatavalue <em>Datavalue</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getPublisherData()
- * @model extendedMetaData="name='PublisherData' kind='elementOnly'"
- * @generated
- */
-public interface PublisherData extends EObject{
-    /**
-     * Returns the value of the '<em><b>Dataname</b></em>' attribute.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Dataname</em>' attribute isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Dataname</em>' attribute.
-     * @see #setDataname(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getPublisherData_Dataname()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='dataname'"
-     * @generated
-     */
-    String getDataname();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.PublisherData#getDataname <em>Dataname</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Dataname</em>' attribute.
-     * @see #getDataname()
-     * @generated
-     */
-//    void setDataname(String value);
-
-    /**
-     * Returns the value of the '<em><b>Datavalue</b></em>' attribute.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Datavalue</em>' attribute isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Datavalue</em>' attribute.
-     * @see #setDatavalue(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getPublisherData_Datavalue()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='element' name='datavalue'"
-     * @generated
-     */
-    String getDatavalue();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.PublisherData#getDatavalue <em>Datavalue</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Datavalue</em>' attribute.
-     * @see #getDatavalue()
-     * @generated
-     */
-//    void setDatavalue(String value);
-
-} // PublisherData
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/ServerRuntime.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/ServerRuntime.java
deleted file mode 100644
index 64de67d..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/ServerRuntime.java
+++ /dev/null
@@ -1,476 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: ServerRuntime.java,v 1.7 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.servertype.definition;
-
-import java.util.List;
-import java.util.Map;
-import org.eclipse.emf.ecore.EObject;
-
-import org.eclipse.jst.server.generic.internal.xml.Resolver;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Server Runtime</b></em>'.
- * <!-- end-user-doc -->
- *
- * <!-- begin-model-doc -->
- *       Generic Server Type Definition. It must have a list of      properties.     
- * <!-- end-model-doc -->
- *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getGroup <em>Group</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getProperty <em>Property</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getGroup1 <em>Group1</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getPort <em>Port</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getGroup2 <em>Group2</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getModule <em>Module</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getProject <em>Project</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getStart <em>Start</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getStop <em>Stop</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getGroup3 <em>Group3</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getPublisher <em>Publisher</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getGroup4 <em>Group4</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getClasspath <em>Classpath</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getJndiConnection <em>Jndi Connection</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getName <em>Name</em>}</li>
- *   <li>{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getVersion <em>Version</em>}</li>
- * </ul>
- * </p>
- *
- * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getServerRuntime()
- * @model extendedMetaData="name='ServerRuntime' kind='elementOnly'"
- * @generated
- */
-public interface ServerRuntime extends EObject{
-    /**
-     * Returns the value of the '<em><b>Group</b></em>' attribute list.
-     * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Group</em>' attribute list isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Group</em>' attribute list.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerTypePackage#getServerRuntime_Group()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true"
-     *        extendedMetaData="kind='group' name='group:0'"
-     * @generated
-     */
-//    FeatureMap getGroup();
-
-    /**
-     * Returns the value of the '<em><b>Property</b></em>' containment reference list.
-     * The list contents are of type {@link org.eclipse.jst.server.generic.servertype.definition.Property}.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Property</em>' containment reference list isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Property</em>' containment reference list.
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getServerRuntime_Property()
-     * @model type="org.eclipse.jst.server.generic.servertype.definition.Property" containment="true" resolveProxies="false" transient="true" volatile="true" derived="true"
-     *        extendedMetaData="kind='element' name='property' group='#group:0'"
-     * @generated
-     */
-    List getProperty();
-
-    /**
-     * Returns the value of the '<em><b>Group1</b></em>' attribute list.
-     * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Group1</em>' attribute list isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Group1</em>' attribute list.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerTypePackage#getServerRuntime_Group1()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true"
-     *        extendedMetaData="kind='group' name='group:2'"
-     * @generated
-     */
-//    FeatureMap getGroup1();
-
-    /**
-     * Returns the value of the '<em><b>Port</b></em>' containment reference list.
-     * The list contents are of type {@link org.eclipse.jst.server.generic.servertype.definition.Port}.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Port</em>' containment reference list isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Port</em>' containment reference list.
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getServerRuntime_Port()
-     * @model type="org.eclipse.jst.server.generic.servertype.definition.Port" containment="true" resolveProxies="false" transient="true" volatile="true" derived="true"
-     *        extendedMetaData="kind='element' name='port' group='#group:2'"
-     * @generated
-     */
-    List getPort();
-
-    /**
-     * Returns the value of the '<em><b>Group2</b></em>' attribute list.
-     * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Group2</em>' attribute list isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Group2</em>' attribute list.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerTypePackage#getServerRuntime_Group2()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true"
-     *        extendedMetaData="kind='group' name='group:4'"
-     * @generated
-     */
-//    FeatureMap getGroup2();
-
-    /**
-     * Returns the value of the '<em><b>Module</b></em>' containment reference list.
-     * The list contents are of type {@link org.eclipse.jst.server.generic.servertype.definition.Module}.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Module</em>' containment reference list isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Module</em>' containment reference list.
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getServerRuntime_Module()
-     * @model type="org.eclipse.jst.server.generic.servertype.definition.Module" containment="true" resolveProxies="false" required="true" transient="true" volatile="true" derived="true"
-     *        extendedMetaData="kind='element' name='module' group='#group:4'"
-     * @generated
-     */
-    List getModule();
-
-    /**
-     * Returns the value of the '<em><b>Project</b></em>' containment reference.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Project</em>' containment reference isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Project</em>' containment reference.
-     * @see #setProject(Project)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getServerRuntime_Project()
-     * @model containment="true" resolveProxies="false" required="true"
-     *        extendedMetaData="kind='element' name='project'"
-     * @generated
-     */
-	Project getProject();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getProject <em>Project</em>}' containment reference.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Project</em>' containment reference.
-     * @see #getProject()
-     * @generated
-     */
-//	void setProject(Project value);
-
-    /**
-     * Returns the value of the '<em><b>Start</b></em>' containment reference.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Start</em>' containment reference isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Start</em>' containment reference.
-     * @see #setStart(LaunchConfiguration)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getServerRuntime_Start()
-     * @model containment="true" resolveProxies="false" required="true"
-     *        extendedMetaData="kind='element' name='start'"
-     * @generated
-     */
-	LaunchConfiguration getStart();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getStart <em>Start</em>}' containment reference.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Start</em>' containment reference.
-     * @see #getStart()
-     * @generated
-     */
-//	void setStart(LaunchConfiguration value);
-
-    /**
-     * Returns the value of the '<em><b>Stop</b></em>' containment reference.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Stop</em>' containment reference isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Stop</em>' containment reference.
-     * @see #setStop(LaunchConfiguration)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getServerRuntime_Stop()
-     * @model containment="true" resolveProxies="false" required="true"
-     *        extendedMetaData="kind='element' name='stop'"
-     * @generated
-     */
-	LaunchConfiguration getStop();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getStop <em>Stop</em>}' containment reference.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Stop</em>' containment reference.
-     * @see #getStop()
-     * @generated
-     */
-//	void setStop(LaunchConfiguration value);
-
-    /**
-     * Returns the value of the '<em><b>Group3</b></em>' attribute list.
-     * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Group3</em>' attribute list isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Group3</em>' attribute list.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerTypePackage#getServerRuntime_Group3()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true"
-     *        extendedMetaData="kind='group' name='group:9'"
-     * @generated
-     */
-//    FeatureMap getGroup3();
-
-    /**
-     * Returns the value of the '<em><b>Publisher</b></em>' containment reference list.
-     * The list contents are of type {@link org.eclipse.jst.server.generic.servertype.definition.Publisher}.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Publisher</em>' containment reference list isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Publisher</em>' containment reference list.
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getServerRuntime_Publisher()
-     * @model type="org.eclipse.jst.server.generic.servertype.definition.Publisher" containment="true" resolveProxies="false" transient="true" volatile="true" derived="true"
-     *        extendedMetaData="kind='element' name='publisher' group='#group:9'"
-     * @generated
-     */
-    List getPublisher();
-
-    /**
-     * Returns the value of the '<em><b>Group4</b></em>' attribute list.
-     * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Group4</em>' attribute list isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Group4</em>' attribute list.
-     * @see org.eclipse.jst.server.generic.servertype.definition.ServerTypePackage#getServerRuntime_Group4()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true"
-     *        extendedMetaData="kind='group' name='group:11'"
-     * @generated
-     */
-//    FeatureMap getGroup4();
-
-    /**
-     * Returns the value of the '<em><b>Classpath</b></em>' containment reference list.
-     * The list contents are of type {@link org.eclipse.jst.server.generic.servertype.definition.Classpath}.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Classpath</em>' containment reference list isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Classpath</em>' containment reference list.
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getServerRuntime_Classpath()
-     * @model type="org.eclipse.jst.server.generic.servertype.definition.Classpath" containment="true" resolveProxies="false" required="true" transient="true" volatile="true" derived="true"
-     *        extendedMetaData="kind='element' name='classpath' group='#group:11'"
-     * @generated
-     */
-    List getClasspath();
-
-    /**
-     * Returns the value of the '<em><b>Jndi Connection</b></em>' containment reference.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Jndi Connection</em>' containment reference isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Jndi Connection</em>' containment reference.
-     * @see #setJndiConnection(JndiConnection)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getServerRuntime_JndiConnection()
-     * @model containment="true" resolveProxies="false" required="true"
-     *        extendedMetaData="kind='element' name='jndiConnection'"
-     * @generated
-     */
-    JndiConnection getJndiConnection();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getJndiConnection <em>Jndi Connection</em>}' containment reference.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Jndi Connection</em>' containment reference.
-     * @see #getJndiConnection()
-     * @generated
-     */
-//    void setJndiConnection(JndiConnection value);
-
-    /**
-     * Returns the value of the '<em><b>Name</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Name</em>' attribute.
-     * @see #setName(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getServerRuntime_Name()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
-     *        extendedMetaData="kind='attribute' name='name'"
-     * @generated
-     */
-	String getName();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getName <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Name</em>' attribute.
-     * @see #getName()
-     * @generated
-     */
-//	void setName(String value);
-
-    /**
-     * Returns the value of the '<em><b>Version</b></em>' attribute.
-     * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Version</em>' attribute isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-     * @return the value of the '<em>Version</em>' attribute.
-     * @see #setVersion(String)
-     * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage#getServerRuntime_Version()
-     * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String"
-     *        extendedMetaData="kind='attribute' name='version'"
-     * @generated
-     */
-	String getVersion();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.jst.server.generic.servertype.definition.ServerRuntime#getVersion <em>Version</em>}' attribute.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Version</em>' attribute.
-     * @see #getVersion()
-     * @generated
-     */
-//	void setVersion(String value);
-
-	/**
-	 * @param id the id of the '<em>Publisher</em>' attribute.
-	 * @return
-	 * @generated NOT
-	 */
-	Publisher getPublisher(String id);
-
-	/**
-	 * @param type the type of the '<em>Module</em>' attribute.
-	 * @return
-	 * @generated NOT
-	 */
-	Module getModule(String type);
-
-	/**
-	 * @param cpRef the reference id of the '<em>Classpath</em>' attribute.
-	 * @return
-	 * @generated NOT
-	 */
-	Classpath getClasspath(String cpRef);
-
-    
-    /**
-     * @generated NOT
-     */
-    String getId();
-    
-    /**
-     * @generated NOT
-     * @param id
-     */
-    void setId(String id);
-    
-    
-    
-    
-	/**
-	 * @generated NOT
-	 */
-	String getFilename();
-
-    
-	/**
-	 * @generated NOT
- */
-	void setFilename(String fn);
-
-	/**
-	 * @generated NOT
-	 */
-	void setPropertyValues(Map properties);
-
-	/**
-	 * @generated NOT
-	 */
-	Resolver getResolver();
-	
-    /**
-     * @generated NOT
-     */
-    String getConfigurationElementNamespace();
-    /**
-     * @generated NOT
-     * @param namespace
-     */
-    void setConfigurationElementNamespace(String namespace);
-    
-} // ServerRuntime
diff --git a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/ServerTypeFactory.java b/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/ServerTypeFactory.java
deleted file mode 100644
index dd0cf25..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/src/org/eclipse/jst/server/generic/servertype/definition/ServerTypeFactory.java
+++ /dev/null
@@ -1,172 +0,0 @@
-/**
- * <copyright>
- *******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************
- * </copyright>
- *
- * $Id: ServerTypeFactory.java,v 1.5 2005/04/19 17:49:01 gercan Exp $
- */
-package org.eclipse.jst.server.generic.servertype.definition;
-
-import org.eclipse.emf.ecore.EFactory;
-import org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage;
-
-/**
- * <!-- begin-user-doc -->
- * The <b>Factory</b> for the model.
- * It provides a create method for each non-abstract class of the model.
- * <!-- end-user-doc -->
- * @see org.eclipse.jst.server.generic.internal.servertype.definition.ServerTypePackage
- * @generated
- */
-public interface ServerTypeFactory extends EFactory{
-    /**
-     * The singleton instance of the factory.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @generated
-     */
-	ServerTypeFactory eINSTANCE = new org.eclipse.jst.server.generic.internal.servertype.definition.impl.ServerTypeFactoryImpl();
-
-    /**
-     * Returns a new object of class '<em>Archive Type</em>'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return a new object of class '<em>Archive Type</em>'.
-     * @generated
-     */
-	ArchiveType createArchiveType();
-
-    /**
-     * Returns a new object of class '<em>Classpath</em>'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return a new object of class '<em>Classpath</em>'.
-     * @generated
-     */
-	Classpath createClasspath();
-
-    /**
-     * Returns a new object of class '<em>Jndi Connection</em>'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return a new object of class '<em>Jndi Connection</em>'.
-     * @generated
-     */
-    JndiConnection createJndiConnection();
-
-    /**
-     * Returns a new object of class '<em>Jndi Property</em>'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return a new object of class '<em>Jndi Property</em>'.
-     * @generated
-     */
-    JndiProperty createJndiProperty();
-
-    /**
-     * Returns a new object of class '<em>Launch Configuration</em>'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return a new object of class '<em>Launch Configuration</em>'.
-     * @generated
-     */
-	LaunchConfiguration createLaunchConfiguration();
-
-    /**
-     * Returns a new object of class '<em>Module</em>'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return a new object of class '<em>Module</em>'.
-     * @generated
-     */
-	Module createModule();
-
-    /**
-     * Returns a new object of class '<em>Port</em>'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return a new object of class '<em>Port</em>'.
-     * @generated
-     */
-	Port createPort();
-
-    /**
-     * Returns a new object of class '<em>Project</em>'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return a new object of class '<em>Project</em>'.
-     * @generated
-     */
-	Project createProject();
-
-    /**
-     * Returns a new object of class '<em>Property</em>'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return a new object of class '<em>Property</em>'.
-     * @generated
-     */
-	Property createProperty();
-
-    /**
-     * Returns a new object of class '<em>Publisher</em>'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return a new object of class '<em>Publisher</em>'.
-     * @generated
-     */
-	Publisher createPublisher();
-
-    /**
-     * Returns a new object of class '<em>Publisher Data</em>'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return a new object of class '<em>Publisher Data</em>'.
-     * @generated
-     */
-    PublisherData createPublisherData();
-
-    /**
-     * Returns a new object of class '<em>Server Runtime</em>'.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return a new object of class '<em>Server Runtime</em>'.
-     * @generated
-     */
-	ServerRuntime createServerRuntime();
-
-    /**
-     * Returns the package supported by this factory.
-     * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-     * @return the package supported by this factory.
-     * @generated
-     */
-	ServerTypePackage getServerTypePackage();
-
-} //ServerTypeFactory
diff --git a/plugins/org.eclipse.jst.server.generic.core/xsd/ServerTypeDefinitionSchema.xsd b/plugins/org.eclipse.jst.server.generic.core/xsd/ServerTypeDefinitionSchema.xsd
deleted file mode 100644
index 8976a2b..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/xsd/ServerTypeDefinitionSchema.xsd
+++ /dev/null
@@ -1,127 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<schema targetNamespace="http://eclipse.org/jst/server/generic/ServerTypeDefinition" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:jst="http://eclipse.org/jst/server/generic/ServerTypeDefinition">
-
-
-
-	<complexType name="ServerRuntime">
-		<annotation>
-			<documentation>
-				Generic Server Type Definition. It must have a list of
-				properties.
-			</documentation>
-		</annotation>
-
-		<sequence maxOccurs="1" minOccurs="1">
-			<sequence maxOccurs="unbounded" minOccurs="0">
-				<element name="property" type="jst:Property"/>
-			</sequence>
-
-			<sequence maxOccurs="unbounded" minOccurs="0">
-				<element name="port" type="jst:Port"/>
-			</sequence>
-
-			<sequence maxOccurs="unbounded" minOccurs="1">
-				<element name="module" type="jst:Module"/>
-			</sequence>
-			<element name="project" type="jst:Project"/>
-			<element name="start" type="jst:LaunchConfiguration"/>
-			<element name="stop" type="jst:LaunchConfiguration"/>
-
-			<sequence maxOccurs="unbounded" minOccurs="0">
-				<element name="publisher" type="jst:Publisher"/>
-			</sequence>
-
-			<sequence maxOccurs="unbounded" minOccurs="1">
-				<element name="classpath" type="jst:Classpath"/>
-			</sequence>
-			<element name="jndiConnection" type="jst:jndiConnection"/>
-		</sequence>
-
-		<attribute name="name" type="string" use="required"/>
-		<attribute name="version" type="string"/>
-	</complexType>
-
-	<complexType name="Property">
-		<attribute name="id" type="string"/>
-		<attribute name="label" type="string"/>
-		<attribute name="type" type="string"/>
-		<attribute name="context" type="string"/>
-		<attribute name="default" type="string"/>
-	</complexType>
-
-	<complexType name="Module">
-		<sequence>
-			<element name="type" type="string"/>
-			<element name="publishDir" type="string"/>
-			<element name="publisherReference" type="string"/>
-		</sequence>
-	</complexType>
-
-	<complexType name="LaunchConfiguration">
-		<sequence>
-			<element name="mainClass" type="string"/>
-			<element name="workingDirectory" type="string"/>
-			<element name="programArguments" type="string"/>
-			<element name="vmParameters" type="string"/>
-			<element name="classpathReference" type="string"/>
-		</sequence>
-	</complexType>
-
-	<complexType name="Port">
-		<sequence>
-			<element name="no" type="string"/>
-			<element name="name" type="string"/>
-			<element name="protocol" type="string"/>
-		</sequence>
-	</complexType>
-
-	<complexType name="Classpath">
-		<sequence maxOccurs="unbounded" minOccurs="1">
-			<element name="archive">
-				<complexType>
-					<attribute name="path" type="string"/>
-				</complexType>
-			</element>
-		</sequence>
-		<attribute name="id" type="string"/>
-		<attribute name="isLibrary" type="boolean" use="optional"/>
-	</complexType>
-
-	<complexType name="Publisher">
-		<sequence maxOccurs="unbounded" minOccurs="1">
-            <element name="publisherdata" type="jst:PublisherData">
-      </element>
-        </sequence>
-		<attribute name="id" type="string"/>
-	</complexType>
-
-	<complexType name="Project">
-		<sequence maxOccurs="1" minOccurs="1">
-		<element name="classpathReference" type="string"/>
-		</sequence>
-	</complexType>
-
-    <complexType name="PublisherData">
-    <sequence maxOccurs="1" minOccurs="1">
-      <element name="dataname" type="string"/>
-      <element name="datavalue" type="string"/>
-    </sequence>
-  </complexType>
-    <complexType name="jndiConnection">
-    	<sequence>
-    		<element name="providerUrl" type="string"/>
-    		<sequence maxOccurs="unbounded" minOccurs="0">
-    			<element name="jndiProperty" type="jst:jndiProperty"/>
-    		</sequence>
-    		<element name="initialContextFactory" type="string"/>
-    	</sequence>
-    </complexType>
-
-    <complexType name="jndiProperty">
-    	<all maxOccurs="1" minOccurs="1">
-    		<element name="name" type="string"/>
-    		<element name="value" type="string"/>
-    	</all>
-    </complexType>
-
-</schema>
diff --git a/plugins/org.eclipse.jst.server.generic.core/xsd/org.eclipse.jst.server.generic.servertype.ecore b/plugins/org.eclipse.jst.server.generic.core/xsd/org.eclipse.jst.server.generic.servertype.ecore
deleted file mode 100644
index aaa2133..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/xsd/org.eclipse.jst.server.generic.servertype.ecore
+++ /dev/null
@@ -1,437 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ecore:EPackage xmi:version="2.0"
-    xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="definition"
-    nsURI="http://eclipse.org/jst/server/generic/ServerTypeDefinition" nsPrefix="definition">
-  <eClassifiers xsi:type="ecore:EClass" name="ArchiveType">
-    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-      <details key="name" value="archive_._type"/>
-      <details key="kind" value="empty"/>
-    </eAnnotations>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="path" unique="false" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="attribute"/>
-        <details key="name" value="path"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="Classpath">
-    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-      <details key="name" value="Classpath"/>
-      <details key="kind" value="elementOnly"/>
-    </eAnnotations>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="group" unique="false" upperBound="-1"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="group"/>
-        <details key="name" value="group:0"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="archive" lowerBound="1"
-        upperBound="-1" eType="#//ArchiveType" volatile="true" transient="true" derived="true"
-        containment="true" resolveProxies="false">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="archive"/>
-        <details key="group" value="#group:0"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" unique="false" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="attribute"/>
-        <details key="name" value="id"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="isLibrary" unique="false"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"
-        unsettable="true">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="attribute"/>
-        <details key="name" value="isLibrary"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="JndiConnection">
-    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-      <details key="name" value="jndiConnection"/>
-      <details key="kind" value="elementOnly"/>
-    </eAnnotations>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="providerUrl" unique="false"
-        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="providerUrl"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="group" unique="false" upperBound="-1"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="group"/>
-        <details key="name" value="group:1"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="jndiProperty" upperBound="-1"
-        eType="#//JndiProperty" volatile="true" transient="true" derived="true" containment="true"
-        resolveProxies="false">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="jndiProperty"/>
-        <details key="group" value="#group:1"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="initialContextFactory"
-        unique="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="initialContextFactory"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="JndiProperty">
-    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-      <details key="name" value="jndiProperty"/>
-      <details key="kind" value="elementOnly"/>
-    </eAnnotations>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" unique="false" lowerBound="1"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="name"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" unique="false" lowerBound="1"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="value"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="LaunchConfiguration">
-    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-      <details key="name" value="LaunchConfiguration"/>
-      <details key="kind" value="elementOnly"/>
-    </eAnnotations>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="mainClass" unique="false"
-        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="mainClass"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="workingDirectory" unique="false"
-        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="workingDirectory"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="programArguments" unique="false"
-        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="programArguments"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="vmParameters" unique="false"
-        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="vmParameters"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="classpathReference" unique="false"
-        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="classpathReference"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="Module">
-    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-      <details key="name" value="Module"/>
-      <details key="kind" value="elementOnly"/>
-    </eAnnotations>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" unique="false" lowerBound="1"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="type"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="publishDir" unique="false"
-        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="publishDir"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="publisherReference" unique="false"
-        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="publisherReference"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="Port">
-    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-      <details key="name" value="Port"/>
-      <details key="kind" value="elementOnly"/>
-    </eAnnotations>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="no" unique="false" lowerBound="1"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="no"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" unique="false" lowerBound="1"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="name"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="protocol" unique="false"
-        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="protocol"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="Project">
-    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-      <details key="name" value="Project"/>
-      <details key="kind" value="elementOnly"/>
-    </eAnnotations>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="classpathReference" unique="false"
-        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="classpathReference"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="Property">
-    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-      <details key="name" value="Property"/>
-      <details key="kind" value="empty"/>
-    </eAnnotations>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="context" unique="false"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="attribute"/>
-        <details key="name" value="context"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="default" unique="false"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="attribute"/>
-        <details key="name" value="default"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" unique="false" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="attribute"/>
-        <details key="name" value="id"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="label" unique="false" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="attribute"/>
-        <details key="name" value="label"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" unique="false" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="attribute"/>
-        <details key="name" value="type"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="Publisher">
-    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-      <details key="name" value="Publisher"/>
-      <details key="kind" value="elementOnly"/>
-    </eAnnotations>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="group" unique="false" upperBound="-1"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="group"/>
-        <details key="name" value="group:0"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="publisherdata" lowerBound="1"
-        upperBound="-1" eType="#//PublisherData" volatile="true" transient="true"
-        derived="true" containment="true" resolveProxies="false">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="publisherdata"/>
-        <details key="group" value="#group:0"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" unique="false" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="attribute"/>
-        <details key="name" value="id"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="PublisherData">
-    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-      <details key="name" value="PublisherData"/>
-      <details key="kind" value="elementOnly"/>
-    </eAnnotations>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="dataname" unique="false"
-        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="dataname"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="datavalue" unique="false"
-        lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="datavalue"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="ServerRuntime">
-    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-      <details key="documentation" value="

-				Generic Server Type Definition. It must have a list of

-				properties.

-			"/>
-    </eAnnotations>
-    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-      <details key="name" value="ServerRuntime"/>
-      <details key="kind" value="elementOnly"/>
-    </eAnnotations>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="group" unique="false" upperBound="-1"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="group"/>
-        <details key="name" value="group:0"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="property" upperBound="-1"
-        eType="#//Property" volatile="true" transient="true" derived="true" containment="true"
-        resolveProxies="false">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="property"/>
-        <details key="group" value="#group:0"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="group1" unique="false"
-        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="group"/>
-        <details key="name" value="group:2"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="port" upperBound="-1" eType="#//Port"
-        volatile="true" transient="true" derived="true" containment="true" resolveProxies="false">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="port"/>
-        <details key="group" value="#group:2"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="group2" unique="false"
-        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="group"/>
-        <details key="name" value="group:4"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="module" lowerBound="1"
-        upperBound="-1" eType="#//Module" volatile="true" transient="true" derived="true"
-        containment="true" resolveProxies="false">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="module"/>
-        <details key="group" value="#group:4"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="project" lowerBound="1"
-        eType="#//Project" containment="true" resolveProxies="false">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="project"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="start" lowerBound="1" eType="#//LaunchConfiguration"
-        containment="true" resolveProxies="false">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="start"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="stop" lowerBound="1" eType="#//LaunchConfiguration"
-        containment="true" resolveProxies="false">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="stop"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="group3" unique="false"
-        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="group"/>
-        <details key="name" value="group:9"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="publisher" upperBound="-1"
-        eType="#//Publisher" volatile="true" transient="true" derived="true" containment="true"
-        resolveProxies="false">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="publisher"/>
-        <details key="group" value="#group:9"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="group4" unique="false"
-        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="group"/>
-        <details key="name" value="group:11"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="classpath" lowerBound="1"
-        upperBound="-1" eType="#//Classpath" volatile="true" transient="true" derived="true"
-        containment="true" resolveProxies="false">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="classpath"/>
-        <details key="group" value="#group:11"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="jndiConnection" lowerBound="1"
-        eType="#//JndiConnection" containment="true" resolveProxies="false">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="element"/>
-        <details key="name" value="jndiConnection"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" unique="false" lowerBound="1"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="attribute"/>
-        <details key="name" value="name"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" unique="false"
-        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
-      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
-        <details key="kind" value="attribute"/>
-        <details key="name" value="version"/>
-      </eAnnotations>
-    </eStructuralFeatures>
-  </eClassifiers>
-</ecore:EPackage>
diff --git a/plugins/org.eclipse.jst.server.generic.core/xsd/servertype.genmodel b/plugins/org.eclipse.jst.server.generic.core/xsd/servertype.genmodel
deleted file mode 100644
index f181963..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/xsd/servertype.genmodel
+++ /dev/null
@@ -1,87 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<genmodel:GenModel xmi:version="2.0"
-    xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
-    xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.jst.server.generic.core/src"
-    editDirectory="/org.eclipse.jst.server.generic.model.edit/src" editorDirectory="/org.eclipse.jst.server.generic.model.editor/src"
-    modelPluginID="org.eclipse.jst.server.generic.model" runtimeJar="true" modelName="Servertype"
-    editPluginClass="org.eclipse.jst.server.generic.server.type.definition.provider.ServertypeEditPlugin"
-    editorPluginClass="org.eclipse.jst.server.generic.server.type.definition.presentation.ServertypeEditorPlugin"
-    suppressEMFTypes="true" runtimeCompatibility="false">
-  <foreignModel>ServerTypeDefinitionSchema.xsd</foreignModel>
-  <genPackages prefix="ServerType" basePackage="org.eclipse.jst.server.generic.servertype"
-      resource="XML" ecorePackage="org.eclipse.jst.server.generic.servertype.ecore#/">
-    <genClasses ecoreClass="org.eclipse.jst.server.generic.servertype.ecore#//ArchiveType">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//ArchiveType/path"/>
-    </genClasses>
-    <genClasses ecoreClass="org.eclipse.jst.server.generic.servertype.ecore#//Classpath">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//Classpath/group"/>
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference org.eclipse.jst.server.generic.servertype.ecore#//Classpath/archive"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//Classpath/id"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//Classpath/isLibrary"/>
-    </genClasses>
-    <genClasses ecoreClass="org.eclipse.jst.server.generic.servertype.ecore#//JndiConnection">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//JndiConnection/providerUrl"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//JndiConnection/group"/>
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference org.eclipse.jst.server.generic.servertype.ecore#//JndiConnection/jndiProperty"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//JndiConnection/initialContextFactory"/>
-    </genClasses>
-    <genClasses ecoreClass="org.eclipse.jst.server.generic.servertype.ecore#//JndiProperty">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//JndiProperty/name"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//JndiProperty/value"/>
-    </genClasses>
-    <genClasses ecoreClass="org.eclipse.jst.server.generic.servertype.ecore#//LaunchConfiguration">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//LaunchConfiguration/mainClass"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//LaunchConfiguration/workingDirectory"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//LaunchConfiguration/programArguments"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//LaunchConfiguration/vmParameters"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//LaunchConfiguration/classpathReference"/>
-    </genClasses>
-    <genClasses ecoreClass="org.eclipse.jst.server.generic.servertype.ecore#//Module">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//Module/type"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//Module/publishDir"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//Module/publisherReference"/>
-    </genClasses>
-    <genClasses ecoreClass="org.eclipse.jst.server.generic.servertype.ecore#//Port">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//Port/no"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//Port/name"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//Port/protocol"/>
-    </genClasses>
-    <genClasses ecoreClass="org.eclipse.jst.server.generic.servertype.ecore#//Project">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//Project/classpathReference"/>
-    </genClasses>
-    <genClasses ecoreClass="org.eclipse.jst.server.generic.servertype.ecore#//Property">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//Property/context"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//Property/default"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//Property/id"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//Property/label"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//Property/type"/>
-    </genClasses>
-    <genClasses ecoreClass="org.eclipse.jst.server.generic.servertype.ecore#//Publisher">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//Publisher/group"/>
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference org.eclipse.jst.server.generic.servertype.ecore#//Publisher/publisherdata"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//Publisher/id"/>
-    </genClasses>
-    <genClasses ecoreClass="org.eclipse.jst.server.generic.servertype.ecore#//PublisherData">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//PublisherData/dataname"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//PublisherData/datavalue"/>
-    </genClasses>
-    <genClasses ecoreClass="org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/group"/>
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/property"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/group1"/>
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/port"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/group2"/>
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/module"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/project"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/start"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/stop"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/group3"/>
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/publisher"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/group4"/>
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/classpath"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/jndiConnection"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/name"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/version"/>
-    </genClasses>
-  </genPackages>
-</genmodel:GenModel>
diff --git a/plugins/org.eclipse.jst.server.generic.core/xsd/servertype.xsd2ecore b/plugins/org.eclipse.jst.server.generic.core/xsd/servertype.xsd2ecore
deleted file mode 100644
index 999e4e4..0000000
--- a/plugins/org.eclipse.jst.server.generic.core/xsd/servertype.xsd2ecore
+++ /dev/null
@@ -1,132 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<xsd2ecore:XSD2EcoreMappingRoot xmi:version="2.0"
-    xmlns:xmi="http://www.omg.org/XMI" xmlns:xsd2ecore="http://www.eclipse.org/emf/2002/XSD2Ecore" inputs="ServerTypeDefinitionSchema.xsd#/"
-    outputs="org.eclipse.jst.server.generic.servertype.ecore#/" topToBottom="true">
-  <nested inputs="bundleentry://175/cache/www.w3.org/2001/XMLSchema.xsd#//string;XSDSimpleTypeDefinition=7"
-      outputs="http://www.eclipse.org/emf/2003/XMLType#//String"/>
-  <nested inputs="ServerTypeDefinitionSchema.xsd#//Classpath;XSDComplexTypeDefinition=5/XSDParticle/XSDModelGroup/XSDParticle/archive;XSDElementDeclaration/XSDComplexTypeDefinition"
-      outputs="org.eclipse.jst.server.generic.servertype.ecore#//ArchiveType">
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Classpath;XSDComplexTypeDefinition=5/XSDParticle/XSDModelGroup/XSDParticle/archive;XSDElementDeclaration/XSDComplexTypeDefinition/XSDAttributeUse"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//ArchiveType/path"/>
-  </nested>
-  <nested inputs="bundleentry://175/cache/www.w3.org/2001/XMLSchema.xsd#//boolean;XSDSimpleTypeDefinition=8"
-      outputs="http://www.eclipse.org/emf/2003/XMLType#//Boolean"/>
-  <nested inputs="ServerTypeDefinitionSchema.xsd#//Classpath;XSDComplexTypeDefinition=5"
-      outputs="org.eclipse.jst.server.generic.servertype.ecore#//Classpath">
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Classpath;XSDComplexTypeDefinition=5/XSDParticle"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Classpath/group"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Classpath;XSDComplexTypeDefinition=5/XSDParticle/XSDModelGroup/XSDParticle"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Classpath/archive"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Classpath;XSDComplexTypeDefinition=5/XSDAttributeUse"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Classpath/id"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Classpath;XSDComplexTypeDefinition=5/XSDAttributeUse=1"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Classpath/isLibrary"/>
-  </nested>
-  <nested inputs="ServerTypeDefinitionSchema.xsd#//LaunchConfiguration;XSDComplexTypeDefinition=3"
-      outputs="org.eclipse.jst.server.generic.servertype.ecore#//LaunchConfiguration">
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//LaunchConfiguration;XSDComplexTypeDefinition=3/XSDParticle/XSDModelGroup/XSDParticle"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//LaunchConfiguration/class"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//LaunchConfiguration;XSDComplexTypeDefinition=3/XSDParticle/XSDModelGroup/XSDParticle=1"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//LaunchConfiguration/workingDirectory"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//LaunchConfiguration;XSDComplexTypeDefinition=3/XSDParticle/XSDModelGroup/XSDParticle=2"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//LaunchConfiguration/programArguments"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//LaunchConfiguration;XSDComplexTypeDefinition=3/XSDParticle/XSDModelGroup/XSDParticle=3"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//LaunchConfiguration/vmParameters"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//LaunchConfiguration;XSDComplexTypeDefinition=3/XSDParticle/XSDModelGroup/XSDParticle=4"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//LaunchConfiguration/classpathReference"/>
-  </nested>
-  <nested inputs="ServerTypeDefinitionSchema.xsd#//Module;XSDComplexTypeDefinition=2"
-      outputs="org.eclipse.jst.server.generic.servertype.ecore#//Module">
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Module;XSDComplexTypeDefinition=2/XSDParticle/XSDModelGroup/XSDParticle"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Module/type"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Module;XSDComplexTypeDefinition=2/XSDParticle/XSDModelGroup/XSDParticle=1"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Module/publishDir"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Module;XSDComplexTypeDefinition=2/XSDParticle/XSDModelGroup/XSDParticle=2"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Module/publisherReference"/>
-  </nested>
-  <nested inputs="ServerTypeDefinitionSchema.xsd#//Port;XSDComplexTypeDefinition=4"
-      outputs="org.eclipse.jst.server.generic.servertype.ecore#//Port">
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Port;XSDComplexTypeDefinition=4/XSDParticle/XSDModelGroup/XSDParticle"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Port/no"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Port;XSDComplexTypeDefinition=4/XSDParticle/XSDModelGroup/XSDParticle=1"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Port/name"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Port;XSDComplexTypeDefinition=4/XSDParticle/XSDModelGroup/XSDParticle=2"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Port/protocol"/>
-  </nested>
-  <nested inputs="ServerTypeDefinitionSchema.xsd#//Project;XSDComplexTypeDefinition=7"
-      outputs="org.eclipse.jst.server.generic.servertype.ecore#//Project">
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Project;XSDComplexTypeDefinition=7/XSDParticle/XSDModelGroup/XSDParticle"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Project/classpathReference"/>
-  </nested>
-  <nested inputs="ServerTypeDefinitionSchema.xsd#//Property;XSDComplexTypeDefinition=1"
-      outputs="org.eclipse.jst.server.generic.servertype.ecore#//Property">
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Property;XSDComplexTypeDefinition=1/XSDAttributeUse=3"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Property/context"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Property;XSDComplexTypeDefinition=1/XSDAttributeUse=4"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Property/default"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Property;XSDComplexTypeDefinition=1/XSDAttributeUse"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Property/id"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Property;XSDComplexTypeDefinition=1/XSDAttributeUse=1"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Property/label"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Property;XSDComplexTypeDefinition=1/XSDAttributeUse=2"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Property/type"/>
-  </nested>
-  <nested inputs="ServerTypeDefinitionSchema.xsd#//Publisher;XSDComplexTypeDefinition=6/XSDParticle/XSDModelGroup/XSDParticle/publish;XSDElementDeclaration/XSDComplexTypeDefinition"
-      outputs="org.eclipse.jst.server.generic.servertype.ecore#//PublishType">
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Publisher;XSDComplexTypeDefinition=6/XSDParticle/XSDModelGroup/XSDParticle/publish;XSDElementDeclaration/XSDComplexTypeDefinition/XSDParticle/XSDModelGroup/XSDParticle"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//PublishType/task"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Publisher;XSDComplexTypeDefinition=6/XSDParticle/XSDModelGroup/XSDParticle/publish;XSDElementDeclaration/XSDComplexTypeDefinition/XSDParticle/XSDModelGroup/XSDParticle=1"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//PublishType/classpathReference"/>
-  </nested>
-  <nested inputs="ServerTypeDefinitionSchema.xsd#//Publisher;XSDComplexTypeDefinition=6/XSDParticle/XSDModelGroup/XSDParticle=1/unpublish;XSDElementDeclaration/XSDComplexTypeDefinition"
-      outputs="org.eclipse.jst.server.generic.servertype.ecore#//UnpublishType">
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Publisher;XSDComplexTypeDefinition=6/XSDParticle/XSDModelGroup/XSDParticle=1/unpublish;XSDElementDeclaration/XSDComplexTypeDefinition/XSDParticle/XSDModelGroup/XSDParticle"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//UnpublishType/task"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Publisher;XSDComplexTypeDefinition=6/XSDParticle/XSDModelGroup/XSDParticle=1/unpublish;XSDElementDeclaration/XSDComplexTypeDefinition/XSDParticle/XSDModelGroup/XSDParticle=1"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//UnpublishType/classpathReference"/>
-  </nested>
-  <nested inputs="ServerTypeDefinitionSchema.xsd#//Publisher;XSDComplexTypeDefinition=6"
-      outputs="org.eclipse.jst.server.generic.servertype.ecore#//Publisher">
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Publisher;XSDComplexTypeDefinition=6/XSDParticle"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Publisher/group"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Publisher;XSDComplexTypeDefinition=6/XSDParticle/XSDModelGroup/XSDParticle"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Publisher/publish"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Publisher;XSDComplexTypeDefinition=6/XSDParticle/XSDModelGroup/XSDParticle=1"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Publisher/unpublish"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//Publisher;XSDComplexTypeDefinition=6/XSDAttributeUse"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//Publisher/id"/>
-  </nested>
-  <nested inputs="ServerTypeDefinitionSchema.xsd#//ServerRuntime;XSDComplexTypeDefinition"
-      outputs="org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime">
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//ServerRuntime;XSDComplexTypeDefinition/XSDParticle/XSDModelGroup/XSDParticle"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/group"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//ServerRuntime;XSDComplexTypeDefinition/XSDParticle/XSDModelGroup/XSDParticle/XSDModelGroup/XSDParticle"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/property"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//ServerRuntime;XSDComplexTypeDefinition/XSDParticle/XSDModelGroup/XSDParticle=1"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/group1"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//ServerRuntime;XSDComplexTypeDefinition/XSDParticle/XSDModelGroup/XSDParticle=1/XSDModelGroup/XSDParticle"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/port"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//ServerRuntime;XSDComplexTypeDefinition/XSDParticle/XSDModelGroup/XSDParticle=2"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/group2"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//ServerRuntime;XSDComplexTypeDefinition/XSDParticle/XSDModelGroup/XSDParticle=2/XSDModelGroup/XSDParticle"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/module"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//ServerRuntime;XSDComplexTypeDefinition/XSDParticle/XSDModelGroup/XSDParticle=3"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/project"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//ServerRuntime;XSDComplexTypeDefinition/XSDParticle/XSDModelGroup/XSDParticle=4"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/start"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//ServerRuntime;XSDComplexTypeDefinition/XSDParticle/XSDModelGroup/XSDParticle=5"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/stop"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//ServerRuntime;XSDComplexTypeDefinition/XSDParticle/XSDModelGroup/XSDParticle=6"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/group3"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//ServerRuntime;XSDComplexTypeDefinition/XSDParticle/XSDModelGroup/XSDParticle=6/XSDModelGroup/XSDParticle"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/publisher"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//ServerRuntime;XSDComplexTypeDefinition/XSDParticle/XSDModelGroup/XSDParticle=7"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/group4"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//ServerRuntime;XSDComplexTypeDefinition/XSDParticle/XSDModelGroup/XSDParticle=7/XSDModelGroup/XSDParticle"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/classpath"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//ServerRuntime;XSDComplexTypeDefinition/XSDAttributeUse"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/name"/>
-    <nested inputs="ServerTypeDefinitionSchema.xsd#//ServerRuntime;XSDComplexTypeDefinition/XSDAttributeUse=1"
-        outputs="org.eclipse.jst.server.generic.servertype.ecore#//ServerRuntime/version"/>
-  </nested>
-</xsd2ecore:XSD2EcoreMappingRoot>
diff --git a/plugins/org.eclipse.jst.server.generic.modules/.cvsignore b/plugins/org.eclipse.jst.server.generic.modules/.cvsignore
deleted file mode 100644
index 42654c1..0000000
--- a/plugins/org.eclipse.jst.server.generic.modules/.cvsignore
+++ /dev/null
@@ -1,5 +0,0 @@
-bin
-build.xml
-commonmodules.jar
-org.eclipse.jst.server.generic.modules_1.0.0.jar
-temp.folder
diff --git a/plugins/org.eclipse.jst.server.generic.modules/.project b/plugins/org.eclipse.jst.server.generic.modules/.project
deleted file mode 100644
index af14ba8..0000000
--- a/plugins/org.eclipse.jst.server.generic.modules/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jst.server.generic.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.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.jst.server.generic.ui/.classpath b/plugins/org.eclipse.jst.server.generic.ui/.classpath
deleted file mode 100644
index 065ac06..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.jst.server.generic.ui/.cvsignore b/plugins/org.eclipse.jst.server.generic.ui/.cvsignore
deleted file mode 100644
index 058a1b7..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/.cvsignore
+++ /dev/null
@@ -1,5 +0,0 @@
-bin
-build.xml
-genericui.jar
-org.eclipse.jst.server.generic.ui_1.0.0.jar
-temp.folder
diff --git a/plugins/org.eclipse.jst.server.generic.ui/.project b/plugins/org.eclipse.jst.server.generic.ui/.project
deleted file mode 100644
index af14ba8..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jst.server.generic.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.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.jst.server.generic.ui/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.server.generic.ui/META-INF/MANIFEST.MF
deleted file mode 100644
index 3b18ef2..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,19 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.jst.server.generic.ui; singleton:=true
-Bundle-Version: 1.0.0
-Bundle-ClassPath: genericui.jar
-Bundle-Activator: org.eclipse.jst.server.generic.ui.internal.GenericUiPlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.jst.server.generic.ui.internal
-Require-Bundle: org.eclipse.ui,
- org.eclipse.core.runtime,
- org.eclipse.wst.server.ui,
- org.eclipse.debug.ui,
- org.eclipse.jdt.debug.ui,
- org.eclipse.jst.server.generic.core,
- org.eclipse.wst.server.core,
- org.eclipse.jst.server.core
-Eclipse-AutoStart: true
diff --git a/plugins/org.eclipse.jst.server.generic.ui/build.properties b/plugins/org.eclipse.jst.server.generic.ui/build.properties
deleted file mode 100644
index 3fcb722..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/build.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-source.genericui.jar = src/
-output.genericui.jar = bin/
-bin.includes = plugin.xml,\
-               genericui.jar,\
-               icons/,\
-               plugin.properties,\
-               META-INF/
-src.includes = icons/,\
-               plugin.xml,\
-               plugin.properties,\
-               src/
diff --git a/plugins/org.eclipse.jst.server.generic.ui/icons/obj16/server.gif b/plugins/org.eclipse.jst.server.generic.ui/icons/obj16/server.gif
deleted file mode 100644
index b51ae39..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/icons/obj16/server.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.generic.ui/icons/wizban/new_server_wiz.gif b/plugins/org.eclipse.jst.server.generic.ui/icons/wizban/new_server_wiz.gif
deleted file mode 100644
index 30de91f..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/icons/wizban/new_server_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.generic.ui/plugin.properties b/plugins/org.eclipse.jst.server.generic.ui/plugin.properties
deleted file mode 100644
index 0f78cc4..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/plugin.properties
+++ /dev/null
@@ -1,4 +0,0 @@
-pluginName=Generic Server Plugin UI
-providerName=Eclipse.org
-pluginDescription=UI Components for the generic server plugin.
-
diff --git a/plugins/org.eclipse.jst.server.generic.ui/plugin.xml b/plugins/org.eclipse.jst.server.generic.ui/plugin.xml
deleted file mode 100644
index 318f5c2..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/plugin.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-     <!--<extension point="org.eclipse.wst.server.ui.editorPages">
-      <page
-         id="org.eclipse.jst.server.generic.configuration.editor.webmodule"
-         order="20"
-         name="Lomboz server Edit"
-         typeIds="org.eclipse.jst.server.generic.*"
-         class="org.eclipse.jst.server.generic.ui.internal.GenericServerEditorPartFactory"/>
-   </extension>
-   
-    <extension point="org.eclipse.wst.server.ui.editorPageSections">
-      <section
-         id="org.eclipse.jst.server.generic.editor.general"
-         order="0"
-         insertionId="org.eclipse.wst.server.editor.overview.left"
-         typeIds="org.eclipse.jst.server.generic.*"
-         class="org.eclipse.jst.server.generic.ui.internal.GenericServerEditorSectionFactory"/>       
-   </extension>-->
- 	
-  <extension point="org.eclipse.debug.ui.launchConfigurationTypeImages">
-    <launchConfigurationTypeImage
-      id="org.eclipse.jst.server.generic.image.ui.launchConfigurationTypeImage"
-      configTypeID="org.eclipse.jst.server.generic.core.launchConfigurationType"
-      icon="icons/obj16/server.gif">
-    </launchConfigurationTypeImage>
-  </extension>
-  
-  <extension point="org.eclipse.debug.ui.launchConfigurationTabGroups">
-    <launchConfigurationTabGroup
-      id="org.eclipse.jst.server.generic.ui.internal.launchConfigurationTabGroup"
-      type="org.eclipse.jst.server.generic.core.launchConfigurationType"
-      class="org.eclipse.jst.server.generic.ui.internal.GenericLaunchConfigurationTabGroup">
-    </launchConfigurationTabGroup>
-  </extension>
-
-</plugin>
diff --git a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericLaunchConfigurationTabGroup.java b/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericLaunchConfigurationTabGroup.java
deleted file mode 100644
index 0be4475..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericLaunchConfigurationTabGroup.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     Gorkem Ercan - initial API and implementation
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-package org.eclipse.jst.server.generic.ui.internal;
-
-import org.eclipse.debug.ui.AbstractLaunchConfigurationTabGroup;
-import org.eclipse.debug.ui.CommonTab;
-import org.eclipse.debug.ui.EnvironmentTab;
-import org.eclipse.debug.ui.ILaunchConfigurationDialog;
-import org.eclipse.debug.ui.ILaunchConfigurationTab;
-import org.eclipse.debug.ui.sourcelookup.SourceLookupTab;
-import org.eclipse.jdt.debug.ui.launchConfigurations.JavaArgumentsTab;
-import org.eclipse.jdt.debug.ui.launchConfigurations.JavaClasspathTab;
-import org.eclipse.jdt.debug.ui.launchConfigurations.JavaJRETab;
-import org.eclipse.wst.server.ui.ServerLaunchConfigurationTab;
-
-
-public class GenericLaunchConfigurationTabGroup extends AbstractLaunchConfigurationTabGroup{
-	/**
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTabGroup ILaunchConfigurationTabGroup#createTabs(ILaunchConfigurationDialog, String)
-	 */
-	public void createTabs(ILaunchConfigurationDialog dialog, String mode) {
-		ILaunchConfigurationTab[] tabs = new ILaunchConfigurationTab[7];
-		//FIXME: get the server type ids from the servertypedefinition extension point.
-		tabs[0] = new ServerLaunchConfigurationTab(new String[] { "org.eclipse.jst.server.generic" });
-		tabs[0].setLaunchConfigurationDialog(dialog);
-		tabs[1] = new JavaArgumentsTab();
-		tabs[1].setLaunchConfigurationDialog(dialog);
-		tabs[2] = new JavaClasspathTab();
-		tabs[2].setLaunchConfigurationDialog(dialog);
-		tabs[3] = new SourceLookupTab();
-		tabs[3].setLaunchConfigurationDialog(dialog);
-		tabs[4] = new EnvironmentTab();
-		tabs[4].setLaunchConfigurationDialog(dialog);
-		tabs[5] = new JavaJRETab();
-		tabs[5].setLaunchConfigurationDialog(dialog);	 
-		tabs[6] = new CommonTab();
-		tabs[6].setLaunchConfigurationDialog(dialog);
-		setTabs(tabs);
-	}}
diff --git a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerComposite.java b/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerComposite.java
deleted file mode 100644
index 22621da..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerComposite.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package org.eclipse.jst.server.generic.ui.internal;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-
-public class GenericServerComposite extends Composite {
-
-	private GenericServerCompositeDecorator[] fDecorators;
-	public GenericServerComposite(Composite parent, GenericServerCompositeDecorator[] decorators) {
-		super(parent, SWT.NONE);
-		fDecorators = decorators;
-        setLayoutData(new GridData(GridData.FILL_BOTH));
-        setLayout(new GridLayout(3,false));
-		createControl();
-	}
-
-	private void createControl(){
-		for (int i = 0; fDecorators!= null && i < fDecorators.length; i++) {
-			fDecorators[i].decorate(this);
-		}
-	}
-}
diff --git a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerCompositeDecorator.java b/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerCompositeDecorator.java
deleted file mode 100644
index ce71a7a..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerCompositeDecorator.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package org.eclipse.jst.server.generic.ui.internal;
-
-
-/**
- * 
- * @author Gorkem Ercan
- */
-public interface GenericServerCompositeDecorator 
-{
-	/**
-	 * 
-	 * @param composite
-	 */
-	public abstract void decorate(GenericServerComposite composite);
-    /**
-	 * Called if all the fields are valid. This gives subclasses opportunity to
-	 * validate and take necessary actions.
-	 * 
-	 * @return
-	 */
-	public abstract boolean validate();
-}
diff --git a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerRuntimeWizardFragment.java b/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerRuntimeWizardFragment.java
deleted file mode 100644
index 2b2c407..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerRuntimeWizardFragment.java
+++ /dev/null
@@ -1,183 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     Gorkem Ercan - initial API and implementation
- *     Naci M. Dai
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-package org.eclipse.jst.server.generic.ui.internal;
-
-import java.util.Map;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.jst.server.generic.core.internal.GenericServerRuntime;
-import org.eclipse.jst.server.generic.servertype.definition.ServerRuntime;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.wst.server.core.IRuntime;
-import org.eclipse.wst.server.core.IRuntimeType;
-import org.eclipse.wst.server.core.IRuntimeWorkingCopy;
-import org.eclipse.wst.server.core.ServerCore;
-import org.eclipse.wst.server.core.TaskModel;
-import org.eclipse.wst.server.core.model.RuntimeDelegate;
-import org.eclipse.wst.server.ui.wizard.IWizardHandle;
-
-/**
- * A serverDefinitionType aware wizard for defining runtimes.
- * 
- * @author Gorkem Ercan
- */
-public class GenericServerRuntimeWizardFragment extends ServerDefinitionTypeAwareWizardFragment {
-	
-	private GenericServerRuntime fRuntimeDelegate;
-    
-	private GenericServerCompositeDecorator[] fDecorators;
-	
-	/**
-	 * Constructor
-	 */
-	public GenericServerRuntimeWizardFragment() {
-		super();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.ui.wizard.IWizardFragment#isComplete()
-	 */
-	public boolean isComplete() {
-	  	RuntimeDelegate runtime = getRuntimeDelegate();
-		if (runtime == null)
-			return false;
-		IStatus status = runtime.validate();
-		return (status != null && status.isOK());
-	}
-	
-	public void createContent(Composite parent, IWizardHandle handle) {
-        Map properties= null;
-		ServerRuntime definition=null;
-        if(getRuntimeDelegate()!=null)
-		{
-			properties = getRuntimeDelegate().getServerInstanceProperties();
-			definition = getServerTypeDefinition(getServerDefinitionId(),properties);
-		}
-		fDecorators =new GenericServerCompositeDecorator[2]; 
-		fDecorators[0]= new JRESelectDecorator(getRuntimeDelegate());
-		fDecorators[1]= new ServerTypeDefinitionRuntimeDecorator(definition,properties,getWizard(),getRuntimeDelegate());
-		GenericServerComposite composite = new GenericServerComposite(parent,fDecorators);
-	}
-
-	
-	private String getServerDefinitionId(){
-		String currentDefinition= null;
-		if(getRuntimeDelegate()!=null)
-			currentDefinition =  getRuntimeDelegate().getRuntime().getRuntimeType().getId();
-		if(currentDefinition!= null && currentDefinition.length()>0)
-		{	
-			return currentDefinition;
-		}
-		return null;
-	}
-	
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.ui.wizard.IWizardFragment#enter()
-	 */
-	public void enter() {
-		getRuntimeDelegate().getRuntimeWorkingCopy().setName(createName());
-		for (int i = 0; i < fDecorators.length; i++) {
-			if(fDecorators[i].validate())
-				return;
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.ui.wizard.IWizardFragment#exit()
-	 */
-	public void exit() {
-	    try {
-	    	getRuntimeDelegate().getRuntimeWorkingCopy().save(true,new NullProgressMonitor());
-	    }
-	    catch(Exception e){//unhandled
-	    }
-        fRuntimeDelegate=null;
-   }
-
-	private String createName()
-	{
-	    RuntimeDelegate dl = getRuntimeDelegate();
-	    IRuntimeType runtimeType = dl.getRuntime().getRuntimeType();
-	    String name = GenericServerUIMessages.bind(GenericServerUIMessages.runtimeName,runtimeType.getName());
-		IRuntime[] list = ServerCore.getRuntimes();
-		int suffix = 1;
-		String suffixName=name;
-		for(int i=0;i<list.length;i++)
-	    {
-	        if(list[i].getName().equals(name)|| list[i].getName().equals(suffixName))
-	            suffix++;
-	        suffixName= name+" "+suffix;
-	    }
-	    
-		if(suffix>1)
-		    return suffixName;
-	    return name;
-	}
-	
-	private GenericServerRuntime getRuntimeDelegate()
-	{
-		if(fRuntimeDelegate == null)
-		{	
-		    IRuntimeWorkingCopy wc = (IRuntimeWorkingCopy)getTaskModel().getObject(TaskModel.TASK_RUNTIME);
-		    if(wc==null)
-		        return null;
-		    fRuntimeDelegate = (GenericServerRuntime)wc.getAdapter(RuntimeDelegate.class);
-		}
-		return fRuntimeDelegate;
-	}
-    /* (non-Javadoc)
-     * @see org.eclipse.jst.server.generic.internal.ui.ServerDefinitionTypeAwareWizardFragment#description()
-     */
-    public String description() {
-        String rName = getRuntimeName();
-        if(rName == null || rName.length()<1)
-            rName="Generic";      
-        return  GenericServerUIMessages.bind(GenericServerUIMessages.runtimeWizardDescription,rName);
-    }
-    /* (non-Javadoc)
-     * @see org.eclipse.jst.server.generic.internal.ui.ServerDefinitionTypeAwareWizardFragment#title()
-     */
-    public String title() {
-        String rName = getRuntimeName();
-        if(rName == null || rName.length()<1)
-            rName="Generic";
-       return GenericServerUIMessages.bind(GenericServerUIMessages.runtimeWizardTitle,rName);
-    }
-    
-    private String getRuntimeName()
-    {
-       if(getRuntimeDelegate()!=null && getRuntimeDelegate().getRuntime()!=null)
-            return getRuntimeDelegate().getRuntime().getName();
-        return null;
-    }
-    
-}
diff --git a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerUIMessages.java b/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerUIMessages.java
deleted file mode 100644
index 1e0385f..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerUIMessages.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package org.eclipse.jst.server.generic.ui.internal;
-
-import org.eclipse.osgi.util.NLS;
-
-/**
- * Helper class to get messages
- * 
- * @author Gorkem Ercan
- */
-public class GenericServerUIMessages extends NLS{
-
-	private static final String RESOURCE_BUNDLE= "org.eclipse.jst.server.generic.ui.internal.GenericServerUIMessages";//$NON-NLS-1$
-	public static String serverTypeGroup_label_browse;
-	public static String runtimeName;
-	public static String runtimeWizardDescription;
-	public static String runtimeWizardTitle;
-	public static String serverName;
-	public static String serverWizardDescription;
-	public static String serverWizardTitle;
-	public static String installed_jre_link;
-	public static String jre_select_label;
-	public static String defaultJRE;
-	public static String invalidPath;
-	
-	static{
-		  NLS.initializeMessages(RESOURCE_BUNDLE, GenericServerUIMessages.class);
-	}
-
-}
diff --git a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerUIMessages.properties b/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerUIMessages.properties
deleted file mode 100644
index 0fb6fdf..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerUIMessages.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-serverWizardTitle=New {0} Server
-serverWizardDescription=Create a new {0} server 
-runtimeWizardTitle=New {0} Runtime
-runtimeWizardDescription=Define a new {0} runtime
-serverTypeGroup_label_browse=Browse...
-serverName = {0}(Generic)
-runtimeName= {0}(Generic)
-installed_jre_link = You can use <a>Installed JRE preferences</a> to create a new JRE
-jre_select_label= JRE:
-defaultJRE = Default JRE
-invalidPath = {0} is not valid
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerWizardFragment.java b/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerWizardFragment.java
deleted file mode 100644
index 1dd060d..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericServerWizardFragment.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     Gorkem Ercan - initial API and implementation
- *     Naci M. Dai
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-package org.eclipse.jst.server.generic.ui.internal;
-
-import java.util.Map;
-
-import org.eclipse.jst.server.generic.core.internal.GenericServer;
-import org.eclipse.jst.server.generic.core.internal.GenericServerRuntime;
-import org.eclipse.jst.server.generic.servertype.definition.ServerRuntime;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.wst.server.core.IRuntimeWorkingCopy;
-import org.eclipse.wst.server.core.IServerWorkingCopy;
-import org.eclipse.wst.server.core.TaskModel;
-import org.eclipse.wst.server.ui.wizard.IWizardHandle;
-/**
- * 
- *
- * @author Gorkem Ercan
- */
-public class GenericServerWizardFragment extends ServerDefinitionTypeAwareWizardFragment 
-{
-	private GenericServerCompositeDecorator[] fDecorators;
-
-	/**
-	 * 
-	 */
-	public boolean isComplete() {
-		for (int i = 0; fDecorators!=null && i < fDecorators.length; i++) {
-			if(fDecorators[i].validate())
-				return false;
-		}
-		ServerRuntime serverRuntime = getServerTypeDefinitionFor(getServer());
-		if(serverRuntime==null)
-		    return false;
-		return true;
-	}
-
-	public void createContent(Composite parent, IWizardHandle handle){
-		IServerWorkingCopy server = getServer();
-		GenericServer dl= (GenericServer)server.getAdapter(GenericServer.class);
-		ServerRuntime definition = getServerTypeDefinitionFor(server);
-		fDecorators = new GenericServerCompositeDecorator[1];
-		fDecorators[0]=new ServerTypeDefinitionServerDecorator(definition,null,getWizard(),dl);
-		new GenericServerComposite(parent,fDecorators);
-		
-	}
-	/**
-     * @param server
-     * @return
-     */
-    private ServerRuntime getServerTypeDefinitionFor(IServerWorkingCopy server) {        
-        GenericServerRuntime runtime = (GenericServerRuntime)server.getRuntime().getAdapter(GenericServerRuntime.class);
-        if(runtime==null){
-            IRuntimeWorkingCopy wc = (IRuntimeWorkingCopy)getTaskModel().getObject(TaskModel.TASK_RUNTIME);
-            runtime= (GenericServerRuntime)wc.getAdapter(GenericServerRuntime.class);
-        }        
-        String id = runtime.getRuntime().getRuntimeType().getId();
-        if(id==null){   
-            return null;
-        }
-        Map runtimeProperties = runtime.getServerInstanceProperties();
-		ServerRuntime definition = getServerTypeDefinition(id,runtimeProperties);
-        return definition;
-    }
-
-    /**
-     * @return
-     */
-    private IServerWorkingCopy getServer() {
-        IServerWorkingCopy server = (IServerWorkingCopy)getTaskModel().getObject(TaskModel.TASK_SERVER);
-        return server;
-    }
-
-    public void enter() {
-    	getServer().setName(GenericServerUIMessages.bind(GenericServerUIMessages.serverName,getServerTypeDefinitionFor(getServer()).getName()));
-    			
-    }
-    
-	public void exit(){
-
-	}
-	
-	
-    /* (non-Javadoc)
-     * @see org.eclipse.jst.server.generic.internal.ui.ServerDefinitionTypeAwareWizardFragment#description()
-     */
-    public String description() {
-        String sName = getServerName();
-        if(sName==null || sName.length()<1)
-            sName="Generic";
-        return  GenericServerUIMessages.bind(GenericServerUIMessages.serverWizardDescription,sName);
-    }
-
-    private String getServerName()
-    {
-        if(getServer()!=null && getServer().getRuntime()!=null)
-           return getServer().getRuntime().getRuntimeType().getName();
-        return null;
-    }
-    /* (non-Javadoc)
-     * @see org.eclipse.jst.server.generic.internal.ui.ServerDefinitionTypeAwareWizardFragment#title()
-     */
-    public String title() {
-        String sName= getServerName();
-        if(sName==null || sName.length()<1)
-            sName="Generic";
-        return  GenericServerUIMessages.bind(GenericServerUIMessages.serverWizardTitle,sName);
-    }
-}
diff --git a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericUiPlugin.java b/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericUiPlugin.java
deleted file mode 100644
index 715f349..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/GenericUiPlugin.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- * 
- * Contributors:
- *     Gorkem Ercan - initial API and implementation
- *     Naci M. Dai
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-package org.eclipse.jst.server.generic.ui.internal;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.ui.plugin.*;
-import org.osgi.framework.BundleContext;
-import java.util.*;
-
-/**
- * The main plugin class to be used in the desktop.
- * 
- * @author Gorkem Ercan
- */
-public class GenericUiPlugin extends AbstractUIPlugin {
-	
-    public static final String WIZBAN_IMAGE = "genericlogo";
-    //The shared instance.
-	private static GenericUiPlugin plugin;
-	//Resource bundle.
-	private ResourceBundle resourceBundle;
-	
-	/**
-	 * The constructor.
-	 */
-	public GenericUiPlugin() {
-		super();
-		plugin = this;
-		try {
-			resourceBundle = ResourceBundle.getBundle("org.eclipse.jst.server.generic.ui.GenericUiPluginResources");
-		} catch (MissingResourceException x) {
-			resourceBundle = null;
-		}
-	}
-
-	/**
-	 * This method is called upon plug-in activation
-	 */
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-	}
-
-	/**
-	 * This method is called when the plug-in is stopped
-	 */
-	public void stop(BundleContext context) throws Exception {
-		super.stop(context);
-	}
-
-	/**
-	 * Returns the shared instance.
-	 */
-	public static GenericUiPlugin getDefault() {
-		return plugin;
-	}
-
-	/**
-	 * Returns the string from the plugin's resource bundle,
-	 * or 'key' if not found.
-	 */
-	public static String getResourceString(String key) {
-		ResourceBundle bundle = GenericUiPlugin.getDefault().getResourceBundle();
-		try {
-			return (bundle != null) ? bundle.getString(key) : key;
-		} catch (MissingResourceException e) {
-			return key;
-		}
-	}
-
-    protected ImageRegistry createImageRegistry() {
-        ImageRegistry registry = new ImageRegistry();
-        ImageDescriptor desc = ImageDescriptor.createFromURL(getDefault().getBundle().getEntry("/icons/wizban/new_server_wiz.gif"));
-        registry.put(WIZBAN_IMAGE,desc);
-        return registry;
-    }
-  	public ImageDescriptor imageDescriptor(String key){
-		return getImageRegistry().getDescriptor(key);
-	}
-	/**
-	 * Returns the plugin's resource bundle,
-	 */
-	public ResourceBundle getResourceBundle() {
-		return resourceBundle;
-	}
-}
diff --git a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/JRESelectDecorator.java b/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/JRESelectDecorator.java
deleted file mode 100644
index 60180e2..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/JRESelectDecorator.java
+++ /dev/null
@@ -1,131 +0,0 @@
-package org.eclipse.jst.server.generic.ui.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.jdt.launching.IVMInstall;
-import org.eclipse.jdt.launching.IVMInstallType;
-import org.eclipse.jdt.launching.JavaRuntime;
-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.generic.core.internal.GenericServerRuntime;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Link;
-import org.eclipse.ui.PlatformUI;
-
-
-public class JRESelectDecorator implements GenericServerCompositeDecorator {
-	private List installedJREs;
-	private String[] jreNames;
-	private GenericServerRuntime fRuntime;
-	public JRESelectDecorator(GenericServerRuntime runtime){
-		super();
-		fRuntime = runtime;
-	}
-	
-	public void decorate(final GenericServerComposite composite) {
-		updateJREs();
-		Link link = new Link(composite,SWT.NONE);
-		link.setLayoutData(new GridData(SWT.FILL,SWT.NONE,true,false,3,1));
-		link.setText(GenericServerUIMessages.installed_jre_link);
-		
-		Label label = new Label(composite, SWT.NONE);
-		label.setText(GenericServerUIMessages.jre_select_label);
-		
-		final Combo combo = new Combo(composite, SWT.DROP_DOWN | SWT.READ_ONLY);
-		combo.setItems(jreNames);
-		GridData data = new GridData(SWT.FILL,SWT.NONE,false,false,2,1);
-		
-		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);
-			
-				fRuntime.setVMInstall(vmInstall);
-				validate();
-			}
-
-			public void widgetDefaultSelected(SelectionEvent e) {
-				widgetSelected(e);
-			}
-		});
-		
-		link.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				String currentVM = combo.getText();
-				if (showPreferencePage(composite)) {
-					updateJREs();
-					combo.setItems(jreNames);
-					combo.setText(currentVM);
-					if (combo.getSelectionIndex() == -1)
-						combo.select(0);
-				}
-			}
-		});
-
-		if (fRuntime!=null){
-			if(fRuntime.isUsingDefaultJRE()){
-				combo.select(0);
-			}else{
-				combo.setText(fRuntime.getVMInstall().getName());
-			}
-		}
-	}
-
-	
-	protected boolean showPreferencePage(GenericServerComposite composite) {
-		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(composite.getShell(), manager2);
-		final boolean[] result = new boolean[] { false };
-		BusyIndicator.showWhile(composite.getDisplay(), new Runnable() {
-			public void run() {
-				dialog.create();
-				if (dialog.open() == Window.OK)
-					result[0] = true;
-			}
-		});
-		return result[0];
-	}
-	
-	protected void updateJREs() {
-		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]);
-			}
-		}
-		
-		size = installedJREs.size();
-		jreNames = new String[size+1];
-		jreNames[0] = GenericServerUIMessages.defaultJRE;
-		for (int i = 0; i < size; i++) {
-			IVMInstall vmInstall = (IVMInstall) installedJREs.get(i);
-			jreNames[i+1] = vmInstall.getName();
-		}
-	}
-	
-	
-	
-	public boolean validate() {
-		return false;
-	}
-}
diff --git a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/ServerDefinitionTypeAwareWizardFragment.java b/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/ServerDefinitionTypeAwareWizardFragment.java
deleted file mode 100644
index ccf3228..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/ServerDefinitionTypeAwareWizardFragment.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Created on Oct 19, 2004
- */
-package org.eclipse.jst.server.generic.ui.internal;
-
-import java.util.Map;
-
-import org.eclipse.jst.server.generic.core.internal.CorePlugin;
-import org.eclipse.jst.server.generic.servertype.definition.ServerRuntime;
-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.wst.server.ui.wizard.IWizardHandle;
-import org.eclipse.wst.server.ui.wizard.WizardFragment;
-
-/**
- * A wizard fragment that provides support for serverdef files.
- *
- * @author Gorkem Ercan
- */
-public abstract class ServerDefinitionTypeAwareWizardFragment extends WizardFragment {
-
-    private IWizardHandle fWizard;
-	
-    public boolean hasComposite() {
-		return true;
-	}
-
-	public Composite createComposite(Composite parent, IWizardHandle handle) {
-	    
-	    this.fWizard = handle;
-	    Composite container = new Composite(parent, SWT.NONE);
-		container.setLayoutData(new GridData(GridData.FILL_BOTH));
-		GridLayout grid = new GridLayout(1,false);
-		container.setLayout(grid);
-		handle.setImageDescriptor(GenericUiPlugin.getDefault().imageDescriptor(GenericUiPlugin.WIZBAN_IMAGE));
-		handle.setTitle(title());
-		handle.setDescription(description());
-		createContent(container,handle);
-		return container;
-	}
-	public IWizardHandle getWizard(){
-	    return fWizard;
-	}
-	/**
-	 * Returns the description to be displayed on the wizard head.
-	 * @return
-	 */
-	public abstract String description();
-	/**
-	 * Returns the title of the wizard.
-	 * @return
-	 */
-	public abstract String title();
-	/**
-	 * Create the real content
-	 * @param parent
-	 * @param handle
-	 */
-	public abstract void createContent(Composite parent, IWizardHandle handle);
-
-	/**
-	 * Retuns the ServerRuntime.
-	 * @param definitionID
-	 * @param properties
-	 * @return
-	 */	
-	protected ServerRuntime getServerTypeDefinition(String definitionID, Map properties)
-	{
-	    return CorePlugin.getDefault().getServerTypeDefinitionManager().getServerRuntimeDefinition(definitionID,properties);
-	}
-}
diff --git a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/ServerTypeDefinitionDecorator.java b/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/ServerTypeDefinitionDecorator.java
deleted file mode 100644
index e8a5d6f..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/ServerTypeDefinitionDecorator.java
+++ /dev/null
@@ -1,265 +0,0 @@
-package org.eclipse.jst.server.generic.ui.internal;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import org.eclipse.jface.dialogs.IMessageProvider;
-import org.eclipse.jst.server.generic.servertype.definition.Property;
-import org.eclipse.jst.server.generic.servertype.definition.ServerRuntime;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.DirectoryDialog;
-import org.eclipse.swt.widgets.FileDialog;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.wst.server.ui.internal.SWTUtil;
-import org.eclipse.wst.server.ui.wizard.IWizardHandle;
-/**
- * Provides the UI objects for gathering user information
- * for server properties.
- * 
- * @author Gorkem Ercan
- */
-public abstract class ServerTypeDefinitionDecorator implements GenericServerCompositeDecorator {
-
-	protected static final String CONTEXT_RUNTIME = Property.CONTEXT_RUNTIME;
-	protected static final String CONTEXT_SERVER = Property.CONTEXT_SERVER;
-	private ServerRuntime fDefinition;
-    private Map fProperties;
-	private String fContext;
-	private GenericServerComposite fComposite;
-	private Map fStatusMap= new HashMap();
-	private String fLastMessage = null;
-	protected IWizardHandle fWizard;
-	private List fPropertyControls= new ArrayList();
-
-	private final class PathModifyListener implements ModifyListener {
-		public void modifyText(ModifyEvent e) {
-			String path = ((Text) e.widget).getText();
-			if(!pathExist(path)){
-				fLastMessage = GenericServerUIMessages.bind(GenericServerUIMessages.invalidPath,path);
-				fWizard.setMessage(fLastMessage,IMessageProvider.ERROR);
-			}else{
-				if(fLastMessage!=null && fLastMessage.equals(fWizard.getMessage())){
-					fLastMessage=null;
-					fWizard.setMessage(null,IMessageProvider.NONE);
-				}
-				validate();
-			}
-		}
-		private boolean pathExist(String path){
-			File f = new File(path);
-			return f.exists();
-		}
-	}
-
-	
-	public ServerTypeDefinitionDecorator(ServerRuntime definition, Map initialProperties, String context, IWizardHandle handle) {
-		super();
-		fDefinition = definition;
-		fProperties = initialProperties;
-		fContext = context;
-		fWizard = handle;
-	}
-
-	public void decorate(GenericServerComposite composite) {
-		fComposite=composite;
-		List properties =null; 
-		if(fDefinition==null){
-			properties= new ArrayList(0);
-		}
-		else{
-			properties= fDefinition.getProperty();
-		}
-		for (int i = 0; i < properties.size(); i++) {
-			Property property = (Property) properties.get(i);
-			if (this.fContext.equals(property.getContext()))
-				createPropertyControl(composite, property);
-		}
-	}
-
-	
-    private void createPropertyControl(Composite parent, Property property){
-    	if( "directory".equals(property.getType())) {
-    		Text path = createLabeledPath(property.getLabel(),getPropertyValue(property),parent);
-    		path.setData(property);
-    		registerControl(path);
-     	} else if( "file".equals(property.getType())) {
-    	    Text file = createLabeledFile(property.getLabel(),getPropertyValue(property),parent);
-    		file.setData(property);
-    		registerControl(file);
-       	} else if( "string".equals(property.getType())) {
-    	    Text str = createLabeledText(property.getLabel(),getPropertyValue(property),parent);
-    		str.setData(property);
-    		registerControl(str);
-       	} else if( "boolean".equals(property.getType())) {
-    	    Button bool =createLabeledCheck(property.getLabel(),("true".equals( getPropertyValue(property))),	parent);
-    		bool.setData(property);
-    		registerControl(bool);
-       	} else  {
-    	    Text defaultText= createLabeledText(property.getLabel(),getPropertyValue(property),parent);
-    		defaultText.setData(property);
-    		registerControl(defaultText);
-    	}
-    }
-    private void registerControl(Control control)
-    {
-    	fPropertyControls.add(control);
-    }
-    private Button createLabeledCheck(String title, boolean value, Composite defPanel) {
-    	GridData gridData;
-    	Label label = new Label(defPanel, SWT.WRAP);
-    	gridData = new GridData();
-    	label.setLayoutData(gridData);
-    	label.setText(title);
-
-    	Button fButton = new Button(defPanel, SWT.CHECK);
-    	
-    	gridData = new GridData(GridData.FILL_HORIZONTAL
-    			| GridData.GRAB_HORIZONTAL);
-    	gridData.horizontalSpan = 2;
-    	fButton.setLayoutData(gridData);
-    	fButton.setSelection(value);
-    	fButton.addSelectionListener(new SelectionListener() {
-            public void widgetSelected(SelectionEvent e) {
-              
-            }
-
-            public void widgetDefaultSelected(SelectionEvent e) {
-  
-            }
-        });
-    	
-    	return fButton;
-    }
-    private Text createLabeledFile(String title, String value,final Composite defPanel) {
-    	GridData gridData;
-    	Label label = new Label(defPanel, SWT.WRAP);
-    	gridData = new GridData();
-    	label.setLayoutData(gridData);
-    	label.setText(title);
-    
-    	final Text fText = new Text(defPanel, SWT.SHADOW_IN | SWT.BORDER);
-    	gridData = new GridData(GridData.FILL_HORIZONTAL
-    			| GridData.GRAB_HORIZONTAL);
-    	gridData.horizontalSpan = 1;
-    	fText.setLayoutData(gridData);
-    	fText.setText(value);
-    	fText.addModifyListener(new PathModifyListener());
-    	Button fButton = SWTUtil.createButton(defPanel,GenericServerUIMessages.serverTypeGroup_label_browse);
-    	
-    	fButton.addSelectionListener(new SelectionListener() {
-    		public void widgetSelected(SelectionEvent e) {
-    			FileDialog dlg = new FileDialog(defPanel.getShell());
-    			dlg.setFileName(fText.getText());
-    			String res = dlg.open();
-    			if (res != null) {
-    				fText.setText(res);
-
-    			}
-    		}
-    
-    		public void widgetDefaultSelected(SelectionEvent e) {
-    			widgetSelected(e);
-    		}
-    
-    	});
-    
-    	return fText;
-    }
-	
-    private Text createLabeledPath(String title, String value,
-    		final Composite parent) {
-    	GridData gridData;
-    	Label label = new Label(parent, SWT.WRAP);
-    	gridData = new GridData();
-    	label.setLayoutData(gridData);
-    	label.setText(title);
-    
-    	final Text fText = new Text(parent, SWT.SHADOW_IN | SWT.BORDER);
-    	gridData = new GridData(GridData.FILL_HORIZONTAL);
-    	gridData.horizontalSpan = 1;
-    	fText.setLayoutData(gridData);
-    	fText.setText(value);
-    	fText.addModifyListener(new PathModifyListener());
-    	Button fButton = SWTUtil.createButton(parent,GenericServerUIMessages.serverTypeGroup_label_browse);
-    	fButton.addSelectionListener(new SelectionListener() {
-    		public void widgetSelected(SelectionEvent e) {
-    			DirectoryDialog dlg = new DirectoryDialog(parent.getShell());
-    			dlg.setFilterPath(fText.getText());
-    			String res = dlg.open();
-    			if (res != null) {
-    				fText.setText(res);
-
-    			}
-    		}
-    
-    		public void widgetDefaultSelected(SelectionEvent e) {
-    			widgetSelected(e);
-    		}
-    
-    	});
-    
-    	return fText;
-    }
-    private Text createLabeledText(String title, String value,
-    		Composite defPanel) {
-    	GridData gridData;
-    	Label label = new Label(defPanel, SWT.WRAP);
-    	gridData = new GridData();
-    	label.setLayoutData(gridData);
-    	label.setText(title);
-    
-    	Text fText = new Text(defPanel, SWT.SHADOW_IN | SWT.BORDER);
-    	gridData = new GridData(GridData.FILL_HORIZONTAL
-    			| GridData.GRAB_HORIZONTAL);
-    	gridData.horizontalSpan = 2;
-    	fText.setLayoutData(gridData);
-    	fText.setText(value);
-//    	fText.addModifyListener(new PropertyModifyListener());
-    	return fText;
-    }
-	private String getPropertyValue(Property property)
-	{
-		String value = property.getDefault();
-		if(fProperties!=null && fProperties.isEmpty()==false)
-			value=(String)fProperties.get(property.getId()); 
-		return value;
-	}	
-
-
-	
-   /**
-    * Returns the property name/value pairs.
-    * @return
-    */
-	public Map getValues()
-    {
-		Map propertyMap = new HashMap();
-    	for(int i=0; i<fPropertyControls.size();i++)
-    	{
-    		if(fPropertyControls.get(i)instanceof Button)
-    		{
-    			Button button = (Button)fPropertyControls.get(i);
-    			Property prop = (Property)button.getData();
-    			propertyMap.put(prop.getId(),Boolean.toString(button.getSelection()));
-    		}
-    		else
-    		{
-    			Text text = (Text)fPropertyControls.get(i);
-    			Property prop = (Property)text.getData();
-    			propertyMap.put(prop.getId(),text.getText());
-    		}
-    	}
-    	return propertyMap;
-    }
-}
diff --git a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/ServerTypeDefinitionRuntimeDecorator.java b/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/ServerTypeDefinitionRuntimeDecorator.java
deleted file mode 100644
index 6594b0b..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/ServerTypeDefinitionRuntimeDecorator.java
+++ /dev/null
@@ -1,44 +0,0 @@
-package org.eclipse.jst.server.generic.ui.internal;
-
-import java.util.Map;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jface.dialogs.IMessageProvider;
-import org.eclipse.jst.server.generic.core.internal.GenericServerRuntime;
-import org.eclipse.jst.server.generic.servertype.definition.ServerRuntime;
-import org.eclipse.wst.server.ui.wizard.IWizardHandle;
-
-public class ServerTypeDefinitionRuntimeDecorator extends ServerTypeDefinitionDecorator {
-
-	private GenericServerRuntime fRuntime;
-	public ServerTypeDefinitionRuntimeDecorator(ServerRuntime definition, Map initialProperties, IWizardHandle wizard, GenericServerRuntime runtime) {
-		super(definition, initialProperties,CONTEXT_RUNTIME,wizard);
-		fRuntime=runtime;
-	}
-
-	public boolean validate(){
-
-		if(fRuntime==null)
-			return false;
-		fRuntime.setServerDefinitionId(fRuntime.getRuntime().getRuntimeType().getId());
-        fRuntime.setServerInstanceProperties(getValues());
-       
-		IStatus status = fRuntime.validate();
-		
-		if (status == null || status.isOK()){
-
-			fWizard.setMessage(null, IMessageProvider.NONE);
-			fWizard.update();
-	        String wDir = fRuntime.getServerTypeDefinition().getResolver().resolveProperties(fRuntime.getServerTypeDefinition().getStart().getWorkingDirectory()); 
-	        fRuntime.getRuntimeWorkingCopy().setLocation(new Path(wDir));
-
-			return false;
-		}else
-		{
-			fWizard.setMessage(status.getMessage(), IMessageProvider.ERROR);
-			fWizard.update();
-			return true;
-		} 
-	}
-}
diff --git a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/ServerTypeDefinitionServerDecorator.java b/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/ServerTypeDefinitionServerDecorator.java
deleted file mode 100644
index 04e1d8f..0000000
--- a/plugins/org.eclipse.jst.server.generic.ui/src/org/eclipse/jst/server/generic/ui/internal/ServerTypeDefinitionServerDecorator.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004 Eteration Bilisim A.S.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     Gorkem Ercan - initial API and implementation
- * 
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED.  IN NO EVENT SHALL ETERATION A.S. OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Eteration Bilisim A.S.  For more
- * information on eteration, please see
- * <http://www.eteration.com/>.
- ***************************************************************************/
-package org.eclipse.jst.server.generic.ui.internal;
-
-import java.util.Map;
-
-import org.eclipse.jst.server.generic.core.internal.GenericServer;
-import org.eclipse.jst.server.generic.servertype.definition.ServerRuntime;
-import org.eclipse.wst.server.ui.wizard.IWizardHandle;
-/**
- * Server properties decorator.
- * @author Gorkem Ercan
- */
-public class ServerTypeDefinitionServerDecorator extends
-		ServerTypeDefinitionDecorator {
-	
-	private GenericServer fServer;
-	public ServerTypeDefinitionServerDecorator(ServerRuntime definition, Map initialProperties,IWizardHandle wizard,GenericServer server) {
-		super(definition, initialProperties,CONTEXT_SERVER, wizard);
-		fServer=server;
-	}
-
-	public boolean validate() {
-		fServer.setServerInstanceProperties(getValues());
-		return false;
-	}
-
-}
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/.classpath b/plugins/org.eclipse.jst.server.tomcat.core/.classpath
deleted file mode 100644
index df44c2e..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="tomcatcore/"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/.cvsignore b/plugins/org.eclipse.jst.server.tomcat.core/.cvsignore
deleted file mode 100644
index b39eed9..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/.cvsignore
+++ /dev/null
@@ -1,5 +0,0 @@
-bin
-build.xml
-org.eclipse.jst.server.tomcat.core_3.0.0.jar
-tomcatcore.jar
-temp.folder
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/.options b/plugins/org.eclipse.jst.server.tomcat.core/.options
deleted file mode 100644
index ceeae58..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/.options
+++ /dev/null
@@ -1,4 +0,0 @@
-# Debugging options for the org.eclipse.jst.server.tomcat.core plugin
-
-# Turn on general debugging
-org.eclipse.jst.server.tomcat.core/debug=true
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/.project b/plugins/org.eclipse.jst.server.tomcat.core/.project
deleted file mode 100644
index 31bbe42..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jst.server.tomcat.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.tomcat.core/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.server.tomcat.core/META-INF/MANIFEST.MF
deleted file mode 100644
index 86d3f12..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,22 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.jst.server.tomcat.core; singleton:=true
-Bundle-Version: 1.0.0
-Bundle-Activator: org.eclipse.jst.server.tomcat.core.internal.TomcatPlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.jst.server.tomcat.core.internal;x-friends:="org.eclipse.jst.server.tomcat.ui",
- org.eclipse.jst.server.tomcat.core.internal.command;x-friends:="org.eclipse.jst.server.tomcat.ui",
- org.eclipse.jst.server.tomcat.core.internal.xml;x-friends:="org.eclipse.jst.server.tomcat.ui",
- org.eclipse.jst.server.tomcat.core.internal.xml.server32;x-friends:="org.eclipse.jst.server.tomcat.ui",
- org.eclipse.jst.server.tomcat.core.internal.xml.server40;x-friends:="org.eclipse.jst.server.tomcat.ui"
-Require-Bundle: org.eclipse.core.runtime,
- org.eclipse.core.resources,
- org.eclipse.core.commands,
- org.eclipse.debug.core,
- org.eclipse.jdt.core,
- org.eclipse.jdt.launching,
- org.eclipse.wst.server.core,
- org.eclipse.jst.server.core
-Eclipse-AutoStart: true
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/build.properties b/plugins/org.eclipse.jst.server.tomcat.core/build.properties
deleted file mode 100644
index 53a961e..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.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,\
-               verifyInstall.properties,\
-               .options,\
-               .,\
-               META-INF/
-bin.excludes = bin/**,\
-               @dot/**,\
-               temp.folder/**
-src.includes = schema/,\
-               build.properties
-source.. = tomcatcore/
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/plugin.properties b/plugins/org.eclipse.jst.server.tomcat.core/plugin.properties
deleted file mode 100644
index 2232a5a..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/plugin.properties
+++ /dev/null
@@ -1,54 +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=Apache Tomcat Support
-providerName=Eclipse.org
-
-# --------------- Runtime Types ---------------
-apache=Apache
-runtimeTypeTomcat32Label=Apache Tomcat v3.2
-runtimeTypeTomcat32Description=Apache Tomcat v3.2 supports J2EE 1.2 Web modules.
-runtimeTypeTomcat40Label=Apache Tomcat v4.0
-runtimeTypeTomcat40Description=Apache Tomcat v4.0 supports J2EE 1.2 and 1.3 Web modules.
-runtimeTypeTomcat41Label=Apache Tomcat v4.1
-runtimeTypeTomcat41Description=Apache Tomcat v4.1 supports J2EE 1.2 and 1.3 Web modules.
-runtimeTypeTomcat50Label=Apache Tomcat v5.0
-runtimeTypeTomcat50Description=Apache Tomcat v5.0 supports J2EE 1.2, 1.3, and 1.4 Web modules.
-runtimeTypeTomcat55Label=Apache Tomcat v5.5
-runtimeTypeTomcat55Description=Apache Tomcat v5.5 supports J2EE 1.2, 1.3, and 1.4 Web modules.
-
-# runtime target
-target32runtime=Tomcat v3.2 runtime
-target40runtime=Tomcat v4.0 runtime
-target41runtime=Tomcat v4.1 runtime
-target50runtime=Tomcat v5.0 runtime
-target55runtime=Tomcat v5.5 runtime
-
-# --------------- Servers ---------------
-tomcat32ServerType=Tomcat v3.2 Server
-tomcat32ServerDescription=Publishes and runs J2EE Web projects and server configurations to a local Tomcat server.
-
-tomcat40ServerType=Tomcat v4.0 Server
-tomcat40ServerDescription=Publishes and runs J2EE Web projects and server configurations to a local Tomcat server.
-
-tomcat41ServerType=Tomcat v4.1 Server
-tomcat41ServerDescription=Publishes and runs J2EE Web projects and server configurations to a local Tomcat server.
-
-tomcat50ServerType=Tomcat v5.0 Server
-tomcat50ServerDescription=Publishes and runs J2EE Web projects and server configurations to a local Tomcat server.
-
-tomcat55ServerType=Tomcat v5.5 Server
-tomcat55ServerDescription=Publishes and runs J2EE Web projects and server configurations to a local Tomcat server.
-
-tomcatLaunchConfigurationType=Apache Tomcat
-
-# --------------- General ---------------
-canAddModule=Web module can be added to the server.
-canModifyModules=Web modules can be modified.
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/plugin.xml b/plugins/org.eclipse.jst.server.tomcat.core/plugin.xml
deleted file mode 100644
index 6d1fba8..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/plugin.xml
+++ /dev/null
@@ -1,197 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-
-<plugin>
-  <extension point="org.eclipse.wst.server.core.runtimeTypes">
-    <runtimeType
-       id="org.eclipse.jst.server.tomcat.runtime.32"
-       name="%runtimeTypeTomcat32Label"
-       description="%runtimeTypeTomcat32Description"
-       vendor="%apache"
-       version="3.2"
-       class="org.eclipse.jst.server.tomcat.core.internal.TomcatRuntime">
-       <moduleType
-         types="j2ee.web"
-         versions="1.2"/>
-    </runtimeType>
-
-    <runtimeType
-       id="org.eclipse.jst.server.tomcat.runtime.40"
-       name="%runtimeTypeTomcat40Label"
-       description="%runtimeTypeTomcat40Description"
-       vendor="%apache"
-       version="4.0"
-       class="org.eclipse.jst.server.tomcat.core.internal.TomcatRuntime">
-       <moduleType
-         types="j2ee.web"
-         versions="1.2, 1.3"/>
-    </runtimeType>
-
-    <runtimeType
-       id="org.eclipse.jst.server.tomcat.runtime.41"
-       name="%runtimeTypeTomcat41Label"
-       description="%runtimeTypeTomcat41Description"
-       vendor="%apache"
-       version="4.1"
-       class="org.eclipse.jst.server.tomcat.core.internal.TomcatRuntime">
-       <moduleType
-         types="j2ee.web"
-         versions="1.2, 1.3"/>
-    </runtimeType>
-
-    <runtimeType
-       id="org.eclipse.jst.server.tomcat.runtime.50"
-       name="%runtimeTypeTomcat50Label"
-       description="%runtimeTypeTomcat50Description"
-       vendor="%apache"
-       version="5.0"
-       class="org.eclipse.jst.server.tomcat.core.internal.TomcatRuntime">
-       <moduleType
-         types="j2ee.web"
-         versions="1.2, 1.3, 1.4"/>
-    </runtimeType>
-
-    <runtimeType
-       id="org.eclipse.jst.server.tomcat.runtime.55"
-       name="%runtimeTypeTomcat55Label"
-       description="%runtimeTypeTomcat55Description"
-       vendor="%apache"
-       version="5.5"
-       class="org.eclipse.jst.server.tomcat.core.internal.TomcatRuntime">
-       <moduleType
-         types="j2ee.web"
-         versions="1.2, 1.3, 1.4"/>
-    </runtimeType>
-
-  </extension>
-
-  <extension point="org.eclipse.wst.server.core.runtimeLocators">
-    <runtimeLocator
-       id="org.eclipse.jst.server.tomcat.runtime.locator"
-       typeIds="org.eclipse.jst.server.tomcat.runtime.*"
-       class="org.eclipse.jst.server.tomcat.core.internal.TomcatRuntimeLocator"/>
-  </extension>
-
-  <extension point="org.eclipse.wst.server.core.runtimeTargetHandlers">
-     <runtimeTargetHandler
-        id="org.eclipse.jst.server.tomcat.runtimeTarget"
-        runtimeTypeIds="org.eclipse.jst.server.tomcat.runtime.*"
-        class="org.eclipse.jst.server.tomcat.core.internal.TomcatRuntimeTargetHandler"/>
-   </extension>
-
-  <extension point="org.eclipse.wst.server.core.serverTypes">
-     <serverType
-       id="org.eclipse.jst.server.tomcat.32"
-       name="%tomcat32ServerType"
-       description="%tomcat32ServerDescription"
-       supportsRemoteHosts="false"
-       runtime="true"
-       startTimeout="45000"
-       stopTimeout="15000"
-       initialState="stopped"
-       hasConfiguration="true"
-       launchConfigId="org.eclipse.jst.server.tomcat.core.launchConfigurationType"
-       runtimeTypeId="org.eclipse.jst.server.tomcat.runtime.32"
-       class="org.eclipse.jst.server.tomcat.core.internal.TomcatServer"
-       behaviourClass="org.eclipse.jst.server.tomcat.core.internal.TomcatServerBehaviour">
-     </serverType>
-     <serverType
-       id="org.eclipse.jst.server.tomcat.40"
-       name="%tomcat40ServerType"
-       description="%tomcat40ServerDescription"
-       supportsRemoteHosts="false"
-       runtime="true"
-       startTimeout="45000"
-       stopTimeout="15000"
-       initialState="stopped"
-       hasConfiguration="true"
-       launchConfigId="org.eclipse.jst.server.tomcat.core.launchConfigurationType"
-       runtimeTypeId="org.eclipse.jst.server.tomcat.runtime.40"
-       class="org.eclipse.jst.server.tomcat.core.internal.TomcatServer"
-       behaviourClass="org.eclipse.jst.server.tomcat.core.internal.TomcatServerBehaviour">
-     </serverType>
-     <serverType
-       id="org.eclipse.jst.server.tomcat.41"
-       name="%tomcat41ServerType"
-       description="%tomcat41ServerDescription"
-       supportsRemoteHosts="false"
-       runtime="true"
-       startTimeout="45000"
-       stopTimeout="15000"
-       initialState="stopped"
-       hasConfiguration="true"
-       launchConfigId="org.eclipse.jst.server.tomcat.core.launchConfigurationType"
-       runtimeTypeId="org.eclipse.jst.server.tomcat.runtime.41"
-       class="org.eclipse.jst.server.tomcat.core.internal.TomcatServer"
-       behaviourClass="org.eclipse.jst.server.tomcat.core.internal.TomcatServerBehaviour">
-     </serverType>
-     <serverType
-       id="org.eclipse.jst.server.tomcat.50"
-       name="%tomcat50ServerType"
-       description="%tomcat50ServerDescription"
-       supportsRemoteHosts="false"
-       runtime="true"
-       startTimeout="45000"
-       stopTimeout="15000"
-       initialState="stopped"
-       hasConfiguration="true"
-       launchConfigId="org.eclipse.jst.server.tomcat.core.launchConfigurationType"
-       runtimeTypeId="org.eclipse.jst.server.tomcat.runtime.50"
-       class="org.eclipse.jst.server.tomcat.core.internal.TomcatServer"
-       behaviourClass="org.eclipse.jst.server.tomcat.core.internal.TomcatServerBehaviour">
-     </serverType>
-     <serverType
-       id="org.eclipse.jst.server.tomcat.55"
-       name="%tomcat55ServerType"
-       description="%tomcat55ServerDescription"
-       supportsRemoteHosts="false"
-       runtime="true"
-       startTimeout="45000"
-       stopTimeout="15000"
-       initialState="stopped"
-       hasConfiguration="true"
-       launchConfigId="org.eclipse.jst.server.tomcat.core.launchConfigurationType"
-       runtimeTypeId="org.eclipse.jst.server.tomcat.runtime.55"
-       class="org.eclipse.jst.server.tomcat.core.internal.TomcatServer"
-       behaviourClass="org.eclipse.jst.server.tomcat.core.internal.TomcatServerBehaviour">
-     </serverType>
-  </extension>
-
-  <extension point="org.eclipse.wst.server.core.serverLocators">
-    <serverLocator
-       id="org.eclipse.jst.server.tomcat.server.locator"
-       supportsRemoteHosts="false"
-       typeIds="org.eclipse.jst.server.tomcat.*"
-       class="org.eclipse.jst.server.tomcat.core.internal.TomcatServerLocator"/>
-  </extension>
-
-  <extension point="org.eclipse.wst.server.core.launchableAdapters">
-     <launchableAdapter
-        class="org.eclipse.jst.server.tomcat.core.internal.TomcatLaunchableAdapterDelegate"
-        id="org.eclipse.jst.server.tomcat.web"/>
-  </extension>
-   
-  <extension point="org.eclipse.debug.core.sourcePathComputers">
-     <sourcePathComputer
-        id="org.eclipse.jst.server.tomcat.core.sourcePathComputer"
-        class="org.eclipse.jst.server.tomcat.core.internal.TomcatSourcePathComputerDelegate"/>
-  </extension>
-   
-  <extension point="org.eclipse.debug.core.launchConfigurationTypes">
-     <launchConfigurationType
-        id="org.eclipse.jst.server.tomcat.core.launchConfigurationType"
-        name="%tomcatLaunchConfigurationType"
-        delegate="org.eclipse.jst.server.tomcat.core.internal.TomcatLaunchConfigurationDelegate"
-        modes="run, debug"
-        sourceLocatorId="org.eclipse.jdt.launching.sourceLocator.JavaSourceLookupDirector"
-        sourcePathComputerId="org.eclipse.jst.server.tomcat.core.sourcePathComputer"/>
-  </extension>
-
-  <extension point="org.eclipse.wst.server.core.publishTasks">
-     <publishTask
-        id="org.eclipse.jst.server.tomcat.core.contextTask"
-        typeIds="org.eclipse.jst.server.tomcat.*"
-        class="org.eclipse.jst.server.tomcat.core.internal.ContextPublishTaskDelegate"/>
-  </extension>
-
-</plugin>
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ClassDetector.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ClassDetector.java
deleted file mode 100644
index 2ff8737..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ClassDetector.java
+++ /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
- *******************************************************************************/
-package org.eclipse.jst.server.tomcat.core.internal;
-/**
- * Utility class to check for the existence of a class given as an
- * argument. 
- */
-public class ClassDetector {
-	public static void main(String[] args) {
-		if (args == null || args.length != 1) {
-			System.out.println("Usage: ClassDetector [className]");
-			return;
-		}
-		
-		try {
-			Class.forName(args[0]);
-			System.out.println("true");
-		} catch (Exception e) {
-			System.out.println("false");
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ContextPublishTaskDelegate.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ContextPublishTaskDelegate.java
deleted file mode 100644
index e16beb8..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ContextPublishTaskDelegate.java
+++ /dev/null
@@ -1,56 +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.tomcat.core.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.jst.server.core.IWebModule;
-import org.eclipse.jst.server.tomcat.core.internal.command.FixModuleContextRootTask;
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.model.PublishOperation;
-import org.eclipse.wst.server.core.model.PublishTaskDelegate;
-
-public class ContextPublishTaskDelegate extends PublishTaskDelegate {
-	public PublishOperation[] getTasks(IServer server, List modules) {
-		if (modules == null)
-			return null;
-	
-		TomcatServer tomcatServer = (TomcatServer) server.loadAdapter(TomcatServer.class, null);
-		TomcatConfiguration configuration = null;
-		try {
-			configuration = tomcatServer.getTomcatConfiguration();
-		} catch (Exception e) {
-			return null;
-		}
-		
-		List tasks = new ArrayList();
-		int size = modules.size();
-		for (int i = 0; i < size; i++) {
-			IModule[] module = (IModule[]) modules.get(i);
-			IModule m = module[module.length - 1];
-			IWebModule webModule = (IWebModule) m.loadAdapter(IWebModule.class, null);
-			WebModule webModule2 = configuration.getWebModule(m);
-			if (webModule != null && webModule2 != null) {
-				String contextRoot = webModule.getContextRoot();
-				if (contextRoot != null && !contextRoot.startsWith("/"))
-					contextRoot = "/" + contextRoot;
-				if (!contextRoot.equals(webModule2.getPath())) {
-					int index = configuration.getWebModules().indexOf(webModule2);
-					FixModuleContextRootTask task = new FixModuleContextRootTask(m, index, webModule.getContextRoot());
-					tasks.add(task);
-				}
-			}
-		}
-		
-		return (PublishOperation[]) tasks.toArray(new PublishOperation[tasks.size()]);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/FileUtil.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/FileUtil.java
deleted file mode 100644
index a7574bc..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/FileUtil.java
+++ /dev/null
@@ -1,280 +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.tomcat.core.internal;
-
-import java.io.*;
-import java.net.URL;
-import org.eclipse.core.runtime.*;
-import org.eclipse.osgi.util.NLS;
-/**
- * Utility class with an assortment of useful file methods.
- */
-public class FileUtil {
-	// 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 FileUtil() {
-		super();
-	}
-
-	/**
-	 * Copys a directory from a to b.
-	 *
-	 * @param from java.lang.String
-	 * @param to java.lang.String
-	 * @param monitor a progress monitor, or <code>null</code>
-	 */
-	public static void copyDirectory(String from, String to, IProgressMonitor monitor) {
-		try {
-			File fromDir = new File(from);
-			File toDir = new File(to);
-	
-			File[] files = fromDir.listFiles();
-	
-			toDir.mkdir();
-	
-			// cycle through files
-			int size = files.length;
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(NLS.bind(Messages.copyingTask, new String[] {from, to}), size * 50);
-	
-			for (int i = 0; i < size; i++) {
-				File current = files[i];
-				String fromFile = current.getAbsolutePath();
-				String toFile = to;
-				if (!toFile.endsWith(File.separator))
-					toFile += File.separator;
-				toFile += current.getName();
-				if (current.isFile()) {
-					copyFile(fromFile, toFile);
-					monitor.worked(50);
-				} else if (current.isDirectory()) {
-					monitor.subTask(NLS.bind(Messages.copyingTask, new String[] {fromFile, toFile}));
-					copyDirectory(fromFile, toFile, ProgressUtil.getSubMonitorFor(monitor, 50));
-				}
-				if (monitor.isCanceled())
-					return;
-			}
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error copying directory", e);
-		}
-	}
-
-	/**
-	 * 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 new Status(IStatus.OK, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.copyingTask, new String[] {to}), null);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error copying file", e);
-			return new Status(IStatus.ERROR, TomcatPlugin.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.
-	 *
-	 * @param from java.lang.String
-	 * @param to java.lang.String
-	 * @return a status
-	 */
-	public static IStatus copyFile(String from, String to) {
-		try {
-			return copyFile(new FileInputStream(from), to);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error copying file", e);
-			return new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCopyingFile, new String[] {to, e.getLocalizedMessage()}), e);
-		}
-	}
-
-	/**
-	 * Copy a file from a to b.
-	 *
-	 * @param from java.net.URL
-	 * @param to java.lang.String
-	 * @return a status
-	 */
-	public static IStatus copyFile(URL from, String to) {
-		try {
-			return copyFile(from.openStream(), to);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error copying file", e);
-			return new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCopyingFile, new String[] {to, e.getLocalizedMessage()}), e);
-		}
-	}
-
-	/**
-	 * 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);
-		}
-	}
-
-	/**
-	 * Copys a directory from a to b, only modifying as needed
-	 * and deleting old files and directories.
-	 *
-	 * @param from a directory
-	 * @param to a directory
-	 * @param monitor a progress monitor
-	 */
-	public static void smartCopyDirectory(String from, String to, IProgressMonitor monitor) {
-		try {
-			File fromDir = new File(from);
-			File toDir = new File(to);
-	
-			File[] fromFiles = fromDir.listFiles();
-			int fromSize = fromFiles.length;
-	
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(NLS.bind(Messages.copyingTask, new String[] {from, to}), 550);
-	
-			File[] toFiles = null;
-	
-			// delete old files and directories from this directory
-			if (toDir.exists() && toDir.isDirectory()) {
-				toFiles = toDir.listFiles();
-				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(fromFiles[j].getName()) && isDir == fromFiles[j].isDirectory())
-							found = true;
-					}
-	
-					// delete file if it can't be found or isn't the correct type
-					if (!found) {
-						if (isDir)
-							deleteDirectory(toFiles[i], new NullProgressMonitor());
-						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++) {
-				File current = fromFiles[i];
-	
-				// check if this is a new or newer file
-				boolean copy = true;
-				if (!current.isDirectory()) {
-					String name = current.getName();
-					long mod = current.lastModified();
-					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();
-					String toFile = to;
-					if (!toFile.endsWith(File.separator))
-						toFile += File.separator;
-					toFile += current.getName();
-					if (current.isFile()) {
-						copyFile(fromFile, toFile);
-						monitor.worked(dw);
-					} else if (current.isDirectory()) {
-						monitor.subTask(NLS.bind(Messages.copyingTask, new String[] {fromFile, toFile}));
-						smartCopyDirectory(fromFile, toFile, ProgressUtil.getSubMonitorFor(monitor, dw));
-					}
-				}
-				if (monitor.isCanceled())
-					return;
-			}
-			monitor.worked(500 - dw * toSize);
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error smart copying directory " + from + " - " + to, e);
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/IMimeMapping.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/IMimeMapping.java
deleted file mode 100644
index ee5946f..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/IMimeMapping.java
+++ /dev/null
@@ -1,29 +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.jst.server.tomcat.core.internal;
-/**
- * 
- */
-public interface IMimeMapping {
-	/**
-	 * Returns the extension.
-	 * 
-	 * @return the extension
-	 */
-	public String getExtension();
-
-	/**
-	 * Returns the mime type.
-	 * 
-	 * @return the mime type
-	 */
-	public String getMimeType();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatConfiguration.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatConfiguration.java
deleted file mode 100644
index b9bada1..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatConfiguration.java
+++ /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
- *******************************************************************************/
-package org.eclipse.jst.server.tomcat.core.internal;
-
-import java.util.List;
-/**
- * 
- */
-public interface ITomcatConfiguration {
-	/**
-	 * Returns a list of mime mappings.
-	 * 
-	 * @return mime mappings
-	 */
-	public List getMimeMappings();
-	
-	/**
-	 * Returns a list of ServerPorts that this configuration uses.
-	 *
-	 * @return the server ports
-	 */
-	public List getServerPorts();
-
-	/**
-	 * Return a list of the web modules in this server.
-	 * 
-	 * @return the web modules
-	 */
-	public List getWebModules();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatConfigurationWorkingCopy.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatConfigurationWorkingCopy.java
deleted file mode 100644
index 73a5c1b..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatConfigurationWorkingCopy.java
+++ /dev/null
@@ -1,70 +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.jst.server.tomcat.core.internal;
-
-
-public interface ITomcatConfigurationWorkingCopy extends ITomcatConfiguration {
-	/**
-	 * Add a web module.
-	 *
-	 * @param index int
-	 * @param module org.eclipse.jst.server.tomcat.WebModule
-	 */
-	public void addWebModule(int index, ITomcatWebModule module);
-	
-	/**
-	 * Change a web module.
-	 * 
-	 * @param index int
-	 * @param docBase java.lang.String
-	 * @param path java.lang.String
-	 * @param reloadable boolean
-	 */
-	public void modifyWebModule(int index, String docBase, String path, boolean reloadable);
-
-	/**
-	 * Remove a web module.
-	 * 
-	 * @param index int
-	 */
-	public void removeWebModule(int index);
-
-	/**
-	 * Adds a mime mapping.
-	 *
-	 * @param index int
-	 * @param map MimeMapping
-	 */
-	public void addMimeMapping(int index, IMimeMapping map);
-
-	/**
-	 * Change a mime mapping.
-	 * 
-	 * @param index int
-	 * @param map MimeMapping
-	 */
-	public void modifyMimeMapping(int index, IMimeMapping map);
-
-	/**
-	 * Modify the port with the given id.
-	 *
-	 * @param id java.lang.String
-	 * @param port int
-	 */
-	public void modifyServerPort(String id, int port);
-
-	/**
-	 * Remove a mime mapping.
-	 * 
-	 * @param index int
-	 */
-	public void removeMimeMapping(int index);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatRuntime.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatRuntime.java
deleted file mode 100644
index 35edfcd..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatRuntime.java
+++ /dev/null
@@ -1,37 +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.jst.server.tomcat.core.internal;
-
-import java.util.List;
-
-import org.eclipse.jdt.launching.IVMInstall;
-/**
- * 
- * 
- * @since 1.0
- */
-public interface ITomcatRuntime {
-	/**
-	 * Return the VM install (installed JRE) that this runtime is using.
-	 * 
-	 * @return the current VM install
-	 */
-	public IVMInstall getVMInstall();
-	
-	public boolean isUsingDefaultJRE();
-
-	/**
-	 * Returns the runtime classpath that is used by this runtime.
-	 * 
-	 * @return the runtime classpath
-	 */
-	public List getRuntimeClasspath();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatRuntimeWorkingCopy.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatRuntimeWorkingCopy.java
deleted file mode 100644
index e3e25e9..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatRuntimeWorkingCopy.java
+++ /dev/null
@@ -1,26 +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.jst.server.tomcat.core.internal;
-
-import org.eclipse.jdt.launching.IVMInstall;
-/**
- *
- * @since 1.0
- */
-public interface ITomcatRuntimeWorkingCopy extends ITomcatRuntime {
-	/**
-	 * 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.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatServer.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatServer.java
deleted file mode 100644
index 1cd0044..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatServer.java
+++ /dev/null
@@ -1,27 +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.tomcat.core.internal;
-
-import org.eclipse.wst.server.core.model.IURLProvider;
-/**
- * 
- * @since 1.0
- */
-public interface ITomcatServer extends IURLProvider {
-	public static final String PROPERTY_TEST_ENVIRONMENT = "testEnvironment";
-	/**
-	 * Returns true if this is a test (publish and run code out of the
-	 * workbench) environment server.
-	 *
-	 * @return boolean
-	 */
-	public boolean isTestEnvironment();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatServerBehaviour.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatServerBehaviour.java
deleted file mode 100644
index 0311604..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatServerBehaviour.java
+++ /dev/null
@@ -1,47 +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.jst.server.tomcat.core.internal;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IProcess;
-/**
- * 
- * @since 1.0
- */
-public interface ITomcatServerBehaviour {
-	/**
-	 * Returns the main class that is used to launch the Tomcat server.
-	 * 
-	 * @return the main runtime class
-	 */
-	public String getRuntimeClass();
-
-	/**
-	 * Set the process that is monitored for Tomcat startup and shutdown.
-	 * Warning: Do not call this method unless you know what you're doing;
-	 * it should only be used in rare cases.
-	 * 
-	 * @param newProcess
-	 */
-	public void setProcess(IProcess newProcess);
-	
-	/**
-	 * Setup for starting the server.
-	 * 
-	 * @param launch ILaunch
-	 * @param launchMode String
-	 * @param monitor IProgressMonitor
-	 * @throws CoreException if anything goes wrong
-	 */
-	public void setupLaunch(ILaunch launch, String launchMode, IProgressMonitor monitor) throws CoreException;
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatServerWorkingCopy.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatServerWorkingCopy.java
deleted file mode 100644
index 6d97523..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatServerWorkingCopy.java
+++ /dev/null
@@ -1,23 +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.tomcat.core.internal;
-/**
- * 
- * @since 1.0
- */
-public interface ITomcatServerWorkingCopy extends ITomcatServer {
-	/**
-	 * Sets this server to test environment mode.
-	 * 
-	 * @param b boolean
-	 */
-	public void setTestEnvironment(boolean b);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatVersionHandler.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatVersionHandler.java
deleted file mode 100644
index a19083e..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatVersionHandler.java
+++ /dev/null
@@ -1,58 +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.tomcat.core.internal;
-
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.jst.server.core.IWebModule;
-/**
- * 
- */
-public interface ITomcatVersionHandler {
-	public boolean verifyInstallPath(IPath installPath);
-	
-	public String getRuntimeClass();
-	
-	public List getRuntimeClasspath(IPath installPath);
-	
-	/**
-	 * Return the program's runtime arguments.
-	 * 
-	 * @param configPath a config path
-	 * @param debug <code>true</code> if debug mode is on
-	 * @param starting <code>true</code> if the server is starting
-	 * @return a string array of program arguments
-	 */
-	public String[] getRuntimeProgramArguments(IPath configPath, boolean debug, boolean starting);
-	
-	public String[] getRuntimeVMArguments(IPath installPath, IPath configPath, boolean isTestEnv, boolean isSecure);
-
-	/**
-	 * Returns true if the given project is supported by this
-	 * server, and false otherwise.
-	 *
-	 * @param module a web module
-	 * @return the status
-	 */
-	public IStatus canAddModule(IWebModule module);
-	
-	/**
-	 * Returns the runtime base path for relative paths in the server
-	 * configuration.
-	 * 
-	 * @param serverBehaviour TomcatServerBehaviour instance from
-	 * which to determine the base path
-	 * @return the base path
-	 */
-	public IPath getRuntimeBaseDirectory(TomcatServerBehaviour serverBehaviour);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatWebModule.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatWebModule.java
deleted file mode 100644
index 7cb88b8..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ITomcatWebModule.java
+++ /dev/null
@@ -1,43 +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.jst.server.tomcat.core.internal;
-/**
- * A Web module deployed on Tomcat.
- */
-public interface ITomcatWebModule {
-	/**
-	 * Get the document base.
-	 *
-	 * @return java.lang.String
-	 */
-	public String getDocumentBase();
-
-	/**
-	 * Return the path. (context root)
-	 *
-	 * @return java.lang.String
-	 */
-	public String getPath();
-
-	/**
-	 * Return the memento.
-	 *
-	 * @return java.lang.String
-	 */
-	public String getMemento();
-
-	/**
-	 * Return true if the web module is auto-reloadable.
-	 *
-	 * @return java.lang.String
-	 */
-	public boolean isReloadable();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Messages.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Messages.java
deleted file mode 100644
index 70f91cb..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Messages.java
+++ /dev/null
@@ -1,92 +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.tomcat.core.internal;
-
-import org.eclipse.osgi.util.NLS;
-/**
- * Translated messages.
- */
-public class Messages extends NLS {
-	public static String copyingTask;
-	public static String errorCopyingFile;
-	public static String deletingTask;
-	public static String errorInstallDir;
-	public static String errorInstallDirTrailingSlash;
-	public static String errorJRE;
-	public static String warningJRE;
-	public static String target32runtime;
-	public static String target40runtime;
-	public static String target41runtime;
-	public static String target50runtime;
-	public static String target55runtime;
-	public static String portUnknown;
-	public static String loadingTask;
-	public static String errorCouldNotLoadConfiguration;
-	public static String savingTask;
-	public static String errorCouldNotSaveConfiguration;
-	public static String updatingConfigurationTask;
-	public static String canAddModule;
-	public static String errorSpec32;
-	public static String errorSpec40;
-	public static String errorSpec41;
-	public static String errorSpec50;
-	public static String errorSpec55;
-	public static String portServer;
-	public static String runtimeDirPrepared;
-	public static String publishConfigurationTask;
-	public static String publishContextConfigTask;
-	public static String savingContextConfigTask;
-	public static String checkingContextTask;
-	public static String serverPostProcessingComplete;
-	public static String errorPublishConfiguration;
-	public static String cleanupServerTask;
-	public static String detectingRemovedProjects;
-	public static String deletingContextFilesTask;
-	public static String deletingContextFile;
-	public static String deletedContextFile;
-	public static String errorCouldNotDeleteContextFile;
-	public static String errorCleanupServer;
-	public static String publisherPublishTask;
-	public static String errorNoConfiguration;
-	public static String errorWebModulesOnly;
-	public static String publishServerTask;
-	public static String errorPortInvalid;
-	public static String errorPortInUse;
-	public static String errorPortsInUse;
-	public static String configurationEditorActionModifyPortDescription;
-	public static String configurationEditorActionModifyPort;
-	public static String configurationEditorActionModifyMimeMappingDescription;
-	public static String configurationEditorActionModifyMimeMapping;
-	public static String configurationEditorActionAddMimeMappingDescription;
-	public static String configurationEditorActionAddMimeMapping;
-	public static String configurationEditorActionAddWebModuleDescription;
-	public static String configurationEditorActionAddWebModule;
-	public static String configurationEditorActionModifyWebModuleDescription;
-	public static String configurationEditorActionModifyWebModule;
-	public static String configurationEditorActionRemoveMimeMappingDescription;
-	public static String configurationEditorActionRemoveMimeMapping;
-	public static String configurationEditorActionRemoveWebModuleDescription;
-	public static String configurationEditorActionRemoveWebModule;
-	public static String serverEditorActionSetDebugModeDescription;
-	public static String serverEditorActionSetDebugMode;
-	public static String serverEditorActionSetSecureDescription;
-	public static String serverEditorActionSetSecure;
-	public static String serverEditorActionSetTestEnvironmentDescription;
-	public static String serverEditorActionSetTestEnvironment;
-	public static String configurationEditorActionEditWebModuleDescription;
-	public static String configurationEditorActionEditWebModulePath;
-	public static String fixModuleContextRootDescription;
-	public static String fixModuleContextRoot;
-
-	static {
-		NLS.initializeMessages(TomcatPlugin.PLUGIN_ID + ".internal.Messages", Messages.class);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Messages.properties b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Messages.properties
deleted file mode 100644
index ce0dab6..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Messages.properties
+++ /dev/null
@@ -1,98 +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
-###############################################################################
-
-# runtime target
-target32runtime=Tomcat v3.2 runtime
-target40runtime=Tomcat v4.0 runtime
-target41runtime=Tomcat v4.1 runtime
-target50runtime=Tomcat v5.0 runtime
-target55runtime=Tomcat v5.5 runtime
-
-# --------------- Tasks (progress monitors) ---------------
-savingTask=Saving...
-loadingTask=Loading...
-updatingConfigurationTask=Updating run-time configuration...
-publishServerTask=Publishing to server...
-publishConfigurationTask=Publishing the configuration...
-publisherPublishTask=Publishing {0}...
-fixModuleContextRoot=Update context root for Web module {0}
-fixModuleContextRootDescription=Update the context root of the Web module to match the current settings
-
-publishContextConfigTask=Publishing META-INF/context.xml configurations...
-checkingContextTask=Checking Context {0} for context.xml...
-savingContextConfigTask=Saving context configuration updates...
-serverPostProcessingComplete=Context configurations added.
-
-cleanupServerTask=Removing obsolete files from server...
-detectingRemovedProjects=Preparing list of removed projects...
-deletingContextFilesTask=Deleting obsolete context files from server...
-deletingContextFile=Deleting obsolete context file {0}...
-deletedContextFile=Context file {0} removed
-runtimeDirPrepared=Runtime directory prepared
-copyingTask=Copying from {0} to {1}
-deletingTask=Deleting {0}
-errorCopyingFile=Error copying file to {0}: {1}
-
-# Editor commands (used in undo/redo menus)
-configurationEditorActionAddMimeMapping=add MIME mapping
-configurationEditorActionAddMimeMappingDescription=Add a MIME mapping
-configurationEditorActionModifyMimeMapping=modify MIME mapping
-configurationEditorActionModifyMimeMappingDescription=Modify the MIME mapping
-configurationEditorActionRemoveMimeMapping=remove MIME mapping
-configurationEditorActionRemoveMimeMappingDescription=Remove a MIME mapping
-configurationEditorActionAddWebModule=add Web module
-configurationEditorActionAddWebModuleDescription=Add a Web module
-configurationEditorActionModifyWebModule=modify Web module
-configurationEditorActionModifyWebModuleDescription=Modify the Web module
-configurationEditorActionRemoveWebModule=remove Web module
-configurationEditorActionRemoveWebModuleDescription=Remove Web module {0}
-configurationEditorActionModifyPort=set port number
-configurationEditorActionModifyPortDescription=Set the port number
-configurationEditorActionEditWebModulePath=edit Web module path
-configurationEditorActionEditWebModuleDescription=Change Web module path from {0} to {1}
-
-# --------------- General ---------------
-canAddModule=Web module can be added to the server.
-portServer=Tomcat admin port
-portUnknown=unknown port
-
-# --------------- Errors and Info ---------------
-errorInstallDir=The Tomcat installation directory is not correct. It does not point to a valid Tomcat installation.
-errorInstallDirTrailingSlash=The Tomcat installation directory should not have a trailing slash.
-errorJRE=The JRE could not be found. Edit the server and change the JRE location.
-errorPortInvalid=The server cannot be started because one or more of the ports are invalid. Open the server editor and correct the invalid ports.
-errorPortInUse=Port {0} required by {1} is already in use. The server may already be running in another process, or a system process may be using the port. \
-  To start this server you will need to stop the other process or change the port number(s).
-errorPortsInUse=Several ports ({0}) required by {1} are already in use. The server may already be running in another process, or a system process may be using the port. \
-  To start this server you will need to stop the other process or change the port number(s).
-# the {0} in the following two lines will be replaced with a location (path) of the missing or corrupt server configuration
-errorNoConfiguration=The Tomcat server configuration at {0} is missing. Check the server for errors.
-errorCouldNotLoadConfiguration=Could not load the Tomcat server configuration at {0}. The configuration may be corrupt or incomplete.
-errorCouldNotSaveConfiguration=Could not save the Tomcat server configuration: {0}.
-errorPublishConfiguration=Could not publish server configuration: {0}.
-errorCouldNotDeleteContextFile=Could not delete obsolete context file: {0}
-errorCleanupServer=Could not clean server of obsolete files: {0}
-errorWebModulesOnly=Tomcat only supports running J2EE Web modules.
-errorSpec32=Tomcat version 3.2 only supports J2EE 1.2 Web modules
-errorSpec40=Tomcat version 4.0 only supports J2EE 1.2 and 1.3 Web modules
-errorSpec41=Tomcat version 4.1 only supports J2EE 1.2 and 1.3 Web modules
-errorSpec50=Tomcat version 5.0 only supports J2EE 1.2, 1.3, and 1.4 Web modules
-errorSpec55=Tomcat version 5.5 only supports J2EE 1.2, 1.3, and 1.4 Web modules
-
-warningJRE=Tomcat requires a Java SDK in order to compile JSP files. Ensure that the JRE preference settings point to an SDK install location.
-
-# Actions (used in undo/redo menus)
-serverEditorActionSetSecure=set security
-serverEditorActionSetSecureDescription=Set the Tomcat security
-serverEditorActionSetDebugMode=set Tomcat debug mode
-serverEditorActionSetDebugModeDescription=Set Tomcat in debug mode
-serverEditorActionSetTestEnvironment=run modules from workspace
-serverEditorActionSetTestEnvironmentDescription=Run modules from the workspace
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/MimeMapping.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/MimeMapping.java
deleted file mode 100644
index bd3fb2e..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/MimeMapping.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.tomcat.core.internal;
-
-/**
- * A mime mapping.
- */
-public class MimeMapping implements IMimeMapping {
-	private String extension;
-	private String mimeType;
-
-	/**
-	 * MimeMapping constructor comment.
-	 * 
-	 * @param extension an extension
-	 * @param mimeType a mime type
-	 */
-	public MimeMapping(String extension, String mimeType) {
-		super();
-		this.extension = extension;
-		this.mimeType = mimeType;
-	}
-
-	/**
-	 * Returns the extension.
-	 * @return java.lang.String
-	 */
-	public String getExtension() {
-		return extension;
-	}
-
-	/**
-	 * Returns the mime type.
-	 * @return java.lang.String
-	 */
-	public String getMimeType() {
-		return mimeType;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/PingThread.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/PingThread.java
deleted file mode 100644
index 401dbd9..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/PingThread.java
+++ /dev/null
@@ -1,127 +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.tomcat.core.internal;
-
-import java.io.FileNotFoundException;
-import java.net.HttpURLConnection;
-import java.net.URL;
-import java.net.URLConnection;
-
-import org.eclipse.wst.server.core.IServer;
-/**
- * Thread used to ping server to test when it is started.
- * 
- * @since 1.0
- */
-public class PingThread {
-	// delay before pinging starts
-	private static final int PING_DELAY = 2000;
-
-	// delay between pings
-	private static final int PING_INTERVAL = 250;
-
-	// maximum number of pings before giving up
-	private int maxPings = 56; // total: 16 seconds + connection time
-
-	private boolean stop = false;
-	private String url;
-	private IServer server;
-	private TomcatServerBehaviour behaviour;
-
-	/**
-	 * Create a new PingThread.
-	 * 
-	 * @param server
-	 * @param url
-	 * @param maxPings
-	 * @param behaviour
-	 */
-	public PingThread(IServer server, String url, int maxPings, TomcatServerBehaviour behaviour) {
-		super();
-		this.server = server;
-		this.url = url;
-		this.maxPings = maxPings;
-		this.behaviour = behaviour;
-		Thread t = new Thread() {
-			public void run() {
-				ping();
-			}
-		};
-		t.setDaemon(true);
-		t.start();
-	}
-
-	/**
-	 * Ping the server until it is started. Then set the server
-	 * state to STATE_STARTED.
-	 */
-	protected void ping() {
-		int count = 0;
-		try {
-			Thread.sleep(PING_DELAY);
-		} catch (Exception e) {
-			// ignore
-		}
-		while (!stop) {
-			try {
-				if (count == maxPings) {
-					try {
-						server.stop(false);
-					} catch (Exception e) {
-						Trace.trace(Trace.FINEST, "Ping: could not stop server");
-					}
-					stop = true;
-					break;
-				}
-				count++;
-				
-				Trace.trace(Trace.FINEST, "Ping: pinging");
-				URL pingUrl = new URL(url);
-				URLConnection conn = pingUrl.openConnection();
-				((HttpURLConnection)conn).getResponseCode();
-	
-				// ping worked - server is up
-				if (!stop) {
-					Trace.trace(Trace.FINEST, "Ping: success");
-					Thread.sleep(200);
-					behaviour.setServerStarted();
-				}
-				stop = true;
-			} catch (FileNotFoundException fe) {
-				try {
-					Thread.sleep(200);
-				} catch (Exception e) {
-					// ignore
-				}
-				behaviour.setServerStarted();
-				stop = true;
-			} catch (Exception e) {
-				Trace.trace(Trace.FINEST, "Ping: failed");
-				// pinging failed
-				if (!stop) {
-					try {
-						Thread.sleep(PING_INTERVAL);
-					} catch (InterruptedException e2) {
-						// ignore
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * Tell the pinging to stop.
-	 */
-	public void stop() {
-		Trace.trace(Trace.FINEST, "Ping: stopping");
-		stop = true;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ProgressUtil.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/ProgressUtil.java
deleted file mode 100644
index aedadd5..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/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.tomcat.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.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat32Configuration.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat32Configuration.java
deleted file mode 100644
index 0c789d2..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat32Configuration.java
+++ /dev/null
@@ -1,620 +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.tomcat.core.internal;
-
-import java.io.*;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.runtime.*;
-import org.eclipse.jst.server.tomcat.core.internal.xml.Factory;
-import org.eclipse.jst.server.tomcat.core.internal.xml.XMLUtil;
-import org.eclipse.jst.server.tomcat.core.internal.xml.server32.*;
-import org.eclipse.osgi.util.NLS;
-import org.w3c.dom.Document;
-import org.xml.sax.InputSource;
-
-import org.eclipse.wst.server.core.IRuntime;
-import org.eclipse.wst.server.core.ServerPort;
-/**
- * Tomcat v3.2 server configuration.
- */
-public class Tomcat32Configuration extends TomcatConfiguration {
-	public static final String ID = "org.eclipse.tomcat.configuration.32";
-
-	protected static final String HTTP_HANDLER = "org.apache.tomcat.service.http.HttpConnectionHandler";
-	protected static final String APACHE_HANDLER = "org.apache.tomcat.service.connector.Ajp12ConnectionHandler";
-	protected static final String SSL_SOCKET_FACTORY = "org.apache.tomcat.net.SSLSocketFactory";
-
-	protected Server server;
-	protected Factory serverFactory;
-	protected boolean isServerDirty;
-
-	protected WebAppDocument webAppDocument;
-
-	protected Document tomcatUsersDocument;
-
-	protected String policyFile;
-
-	/**
-	 * Tomcat32Configuration constructor.
-	 * 
-	 * @param path a path
-	 */
-	public Tomcat32Configuration(IFolder path) {
-		super(path);
-	}
-	
-	/**
-	 * Return the root of the docbase parameter.
-	 *
-	 * @return java.lang.String
-	 */
-	protected String getDocBaseRoot() {
-		return "";
-	}
-	
-	/**
-	 * Returns the main server port.
-	 * @return TomcatServerPort
-	 */
-	public ServerPort getMainPort() {
-		Iterator iterator = getServerPorts().iterator();
-		while (iterator.hasNext()) {
-			ServerPort port = (ServerPort) iterator.next();
-			if (port.getName().equals("HTTP Connector"))
-				return port;
-		}
-		return null;
-	}
-	
-	/**
-	 * Returns the mime mappings.
-	 * @return java.util.List
-	 */
-	public List getMimeMappings() {
-		if (webAppDocument == null)
-			return new ArrayList(0);
-		
-		return webAppDocument.getMimeMappings();
-	}
-
-	/**
-	 * Returns the prefix that is used in front of the
-	 * web module path property. (e.g. "webapps")
-	 *
-	 * @return java.lang.String
-	 */
-	public String getPathPrefix() {
-		return "webapps";
-	}
-	
-	/**
-	 * Return the docBase of the ROOT web module.
-	 *
-	 * @return java.lang.String
-	 */
-	protected String getROOTModuleDocBase() {
-		return "webapps/ROOT";
-	}
-	
-	/**
-	 * Returns the server object (root of server.xml).
-	 * @return org.eclipse.jst.server.tomcat.internal.xml.server32.Server
-	 */
-	public Server getServer() {
-		return server;
-	}
-
-	/**
-	 * Returns a list of ServerPorts that this configuration uses.
-	 *
-	 * @return java.util.List
-	 */
-	public List getServerPorts() {
-		List ports = new ArrayList();
-	
-		try {
-			int count = server.getContextManager().getConnectorCount();
-			for (int i = 0; i < count; i++) {
-				Connector connector = server.getContextManager().getConnector(i);
-				int paramCount = connector.getParameterCount();
-				String handler = null;
-				String name = Messages.portUnknown;
-				String socketFactory = null;
-				String protocol = "TCPIP";
-				boolean advanced = true;
-				String[] contentTypes = null;
-				int port = -1;
-				for (int j = 0; j < paramCount; j++) {
-					Parameter p = connector.getParameter(j);
-					if ("port".equals(p.getName())) {
-						try {
-							port = Integer.parseInt(p.getValue());
-						} catch (Exception e) {
-							// ignore
-						}
-					} else if ("handler".equals(p.getName()))
-						handler = p.getValue();
-					else if ("socketFactory".equals(p.getName()))
-						socketFactory = p.getValue();
-				}
-				if (HTTP_HANDLER.equals(handler)) {
-					protocol = "HTTP";
-					contentTypes = new String[] { "web", "webservices" };
-					if (SSL_SOCKET_FACTORY.equals(socketFactory)) {
-						protocol = "SSL";
-						name = "SSL Connector";
-					} else {
-						name = "HTTP Connector";
-						advanced = false;
-					}
-				} else if (APACHE_HANDLER.equals(handler))
-					name = "Apache Connector";
-				if (handler != null)
-					ports.add(new ServerPort(i + "", name, port, protocol, contentTypes, advanced));
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error getting server ports", e);
-		}
-	
-		return ports;
-	}
-	
-	/**
-	 * Returns the tomcat-users.xml document.
-	 *
-	 * @return org.w3c.dom.Document
-	 */
-	public Document getTomcatUsersDocument() {
-		return tomcatUsersDocument;
-	}
-	
-	/**
-	 * Return a list of the web modules in this server.
-	 * @return java.util.List
-	 */
-	public List getWebModules() {
-		List list = new ArrayList();
-	
-		try {
-			ContextManager contextManager = server.getContextManager();
-	
-			int size = contextManager.getContextCount();
-			for (int i = 0; i < size; i++) {
-				Context context = contextManager.getContext(i);
-				String reload = context.getReloadable();
-				if (reload == null)
-					reload = "false";
-				WebModule module = new WebModule(context.getPath(), 
-					context.getDocBase(), context.getSource(),
-					reload.equalsIgnoreCase("true") ? true : false);
-				list.add(module);
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error getting project refs", e);
-		}
-	
-		return list;
-	}
-	
-	/**
-	 * @see TomcatConfiguration#load(IPath, IProgressMonitor)
-	 */
-	public void load(IPath path, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.loadingTask, 5);
-	
-			// check for tomcat.policy to verify that this is a v3.2 config
-			InputStream in = new FileInputStream(path.append("tomcat.policy").toFile());
-			in.read();
-			in.close();
-			monitor.worked(1);
-			
-			// create server.xml
-			serverFactory = new Factory();
-			serverFactory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server32");
-			server = (Server) serverFactory.loadDocument(new FileInputStream(path.append("server.xml").toFile()));
-			monitor.worked(1);
-	
-			webAppDocument = new WebAppDocument(path.append("web.xml"));
-			monitor.worked(1);
-			
-			tomcatUsersDocument = XMLUtil.getDocumentBuilder().parse(new InputSource(new FileInputStream(path.append("tomcat-users.xml").toFile())));
-			monitor.worked(1);
-	
-			// load policy file
-			BufferedReader br = null;
-			try {
-				br = new BufferedReader(new InputStreamReader(new FileInputStream(path.append("tomcat.policy").toFile())));
-				String temp = br.readLine();
-				policyFile = "";
-				while (temp != null) {
-					policyFile += temp + "\n";
-					temp = br.readLine();
-				}
-				br.close();
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "Could not load policy file", e);
-			} finally {
-				if (br != null)
-					br.close();
-			}
-			monitor.worked(1);
-	
-			if (monitor.isCanceled())
-				return;
-	
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not load Tomcat v3.2 configuration from " + path.toOSString() + ": " + e.getMessage());
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, path.toOSString()), e));
-		}
-	}
-	
-	/**
-	 * @see TomcatConfiguration#load(IFolder, IProgressMonitor)
-	 */
-	public void load(IFolder folder, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.loadingTask, 800);
-	
-			// check for tomcat.policy to verify that this is a v3.2 config
-			IFile file = folder.getFile("tomcat.policy");
-			if (!file.exists())
-				throw new CoreException(new Status(IStatus.WARNING, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, folder.getFullPath().toOSString()), null));
-	
-			// load server.xml
-			file = folder.getFile("server.xml");
-			InputStream in = file.getContents();
-			serverFactory = new Factory();
-			serverFactory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server32");
-			server = (Server) serverFactory.loadDocument(in);
-			monitor.worked(200);
-	
-			// load web.xml
-			file = folder.getFile("web.xml");
-			webAppDocument = new WebAppDocument(file);
-			monitor.worked(200);
-	
-			// load tomcat-users.xml
-			file = folder.getFile("tomcat-users.xml");
-			in = file.getContents();
-			
-			tomcatUsersDocument = XMLUtil.getDocumentBuilder().parse(new InputSource(in));
-			monitor.worked(200);
-	
-			// load tomcat.policy
-			file = folder.getFile("tomcat.policy");
-			in = file.getContents();
-			BufferedReader br = null;
-			try {
-				br = new BufferedReader(new InputStreamReader(in));
-				String temp = br.readLine();
-				policyFile = "";
-				while (temp != null) {
-					policyFile += temp + "\n";
-					temp = br.readLine();
-				}
-				br.close();
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "Could not load policy file", e);
-			} finally {
-				if (br != null)
-					br.close();
-			}
-			monitor.worked(200);
-	
-			if (monitor.isCanceled())
-				throw new Exception("Cancelled");
-	
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not load Tomcat v3.2 configuration from: " + folder.getFullPath() + ": " + e.getMessage());
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, folder.getFullPath().toOSString()), e));
-		}
-	}
-	
-	/**
-	 * Save the information held by this object to the given directory.
-	 * 
-	 * @param path a path
-	 * @param forceDirty if true, the files will be saved, regardless
-	 *  of whether they have been modified
-	 * @param monitor a progress monitor
-	 * @throws CoreException
-	 */
-	protected void save(IPath path, boolean forceDirty, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.savingTask, 5);
-	
-			// make sure directory exists
-			if (!path.toFile().exists()) {
-				forceDirty = true;
-				path.toFile().mkdir();
-			}
-			monitor.worked(1);
-	
-			// save files
-			if (forceDirty || isServerDirty)
-				serverFactory.save(path.append("server.xml").toOSString());
-			monitor.worked(1);
-	
-			webAppDocument.save(path.append("web.xml").toOSString(), forceDirty);
-			monitor.worked(1);
-	
-			if (forceDirty)
-				XMLUtil.save(path.append("tomcat-users.xml").toOSString(), tomcatUsersDocument);
-			monitor.worked(1);
-	
-			if (forceDirty) {
-				BufferedWriter bw = new BufferedWriter(new FileWriter(path.append("tomcat.policy").toFile()));
-				bw.write(policyFile);
-				bw.close();
-			}
-			monitor.worked(1);
-			isServerDirty = false;
-	
-			if (monitor.isCanceled())
-				return;
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save Tomcat v3.2 configuration to " + path, e);
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotSaveConfiguration, new String[] {e.getLocalizedMessage()}), e));
-		}
-	}
-	
-	public void save(IPath path, IProgressMonitor monitor) throws CoreException {
-		save(path, true, monitor);
-	}
-	
-	/**
-	 * Save the information held by this object to the given directory.
-	 * 
-	 * @param folder a folder
-	 * @param monitor a progress monitor
-	 * @throws CoreException
-	 */
-	public void save(IFolder folder, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.savingTask, 900);
-	
-			if (!folder.exists())
-				folder.create(true, true, ProgressUtil.getSubMonitorFor(monitor, 100));
-			else
-				monitor.worked(100);
-	
-			// save server.xml
-			byte[] data = serverFactory.getContents();
-			InputStream in = new ByteArrayInputStream(data);
-			IFile file = folder.getFile("server.xml");
-			if (file.exists()) {
-				if (isServerDirty)
-					file.setContents(in, true, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-				else
-					monitor.worked(200);
-			} else
-				file.create(in, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			// save web.xml
-			file = folder.getFile("web.xml");
-			webAppDocument.save(file, ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			// save tomcat-users.xml
-			data = XMLUtil.getContents(tomcatUsersDocument);
-			in = new ByteArrayInputStream(data);
-			file = folder.getFile("tomcat-users.xml");
-			if (file.exists())
-				monitor.worked(200);
-				//file.setContents(in, true, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-			else
-				file.create(in, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			// save tomcat.policy
-			in = new ByteArrayInputStream(policyFile.getBytes());
-			file = folder.getFile("tomcat.policy");
-			if (file.exists())
-				monitor.worked(200);
-				//file.setContents(in, true, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-			else
-				file.create(in, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			if (monitor.isCanceled())
-				return;
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save Tomcat v3.2 configuration to " + folder.getFullPath(), e);
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotSaveConfiguration, new String[] {e.getLocalizedMessage()}), e));
-		}
-	}
-	
-	
-	/**
-	 * @see ITomcatConfigurationWorkingCopy#addMimeMapping(int, IMimeMapping)
-	 */
-	public void addMimeMapping(int index, IMimeMapping map) {
-		webAppDocument.addMimeMapping(index, map);
-		firePropertyChangeEvent(ADD_MAPPING_PROPERTY, new Integer(index), map);
-	}
-
-	/**
-	 * @see ITomcatConfigurationWorkingCopy#addWebModule(int, ITomcatWebModule)
-	 */
-	public void addWebModule(int index, ITomcatWebModule module) {
-		try {
-			ContextManager contextManager = server.getContextManager();
-			Context context = (Context) contextManager.createElement(index, "Context");
-	
-			context.setPath(module.getPath());
-			context.setDocBase(module.getDocumentBase());
-			context.setReloadable(module.isReloadable() ? "true" : "false");
-			if (module.getMemento() != null && module.getMemento().length() > 0)
-				context.setSource(module.getMemento());
-			isServerDirty = true;
-			firePropertyChangeEvent(ADD_WEB_MODULE_PROPERTY, null, module);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error adding web module", e);
-		}
-	}
-	
-	/**
-	 * Localize the web projects in this configuration.
-	 *
-	 * @param path a path
-	 * @param serverType a server type
-	 * @param runtime a runtime
-	 * @param monitor a progress monitor
-	 */
-	public void localizeConfiguration(IPath path, TomcatServer serverType, IRuntime runtime, IProgressMonitor monitor) {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.updatingConfigurationTask, 100);
-	
-			Tomcat32Configuration config = new Tomcat32Configuration(null);
-			config.load(path, ProgressUtil.getSubMonitorFor(monitor, 30));
-	
-			if (monitor.isCanceled())
-				return;
-	
-			if (serverType.isTestEnvironment()) {
-				config.server.getContextManager().setHome(runtime.getLocation().toOSString());
-				config.isServerDirty = true;
-			} else {
-				//IServerConfigurationWorkingCopy scwc = config.getServerConfiguration().createWorkingCopy();
-				//Tomcat32Configuration cfg = (Tomcat32Configuration) scwc.getAdapter(Tomcat32Configuration.class);
-				config.localizeWebModules();
-			}
-	
-			monitor.worked(40);
-	
-			if (monitor.isCanceled())
-				return;
-
-			config.save(path, false, ProgressUtil.getSubMonitorFor(monitor, 30));
-	
-			if (!monitor.isCanceled())
-				monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error localizing configuration", e);
-		}
-	}
-	
-	/**
-	 * Go through all of the web modules and make the document
-	 * base "local" to the configuration.
-	 */
-	protected void localizeWebModules() {
-		List modules = getWebModules();
-
-		int size = modules.size();
-		for (int i = 0; i < size; i++) {
-			WebModule module = (WebModule) modules.get(i);
-			String memento = module.getMemento();
-			if (memento != null && memento.length() > 0) {
-				// update document base to a relative ref
-				String docBase = getPathPrefix() + module.getPath();
-				if (docBase.startsWith("/") || docBase.startsWith("\\"))
-					docBase = docBase.substring(1);
-				modifyWebModule(i, docBase, module.getPath(), module.isReloadable());
-			}
-		}
-	}
-	
-	/**
-	 * Change the extension of a mime mapping.
-	 * 
-	 * @param index
-	 * @param map
-	 */
-	public void modifyMimeMapping(int index, IMimeMapping map) {
-		webAppDocument.modifyMimeMapping(index, map);
-		firePropertyChangeEvent(MODIFY_MAPPING_PROPERTY, new Integer(index), map);
-	}
-	
-	/**
-	 * Modify the port with the given id.
-	 *
-	 * @param id java.lang.String
-	 * @param port int
-	 */
-	public void modifyServerPort(String id, int port) {
-		try {
-			int con = Integer.parseInt(id);
-			Connector connector = server.getContextManager().getConnector(con);
-	
-			int size = connector.getParameterCount();
-			for (int i = 0; i < size; i++) {
-				Parameter p = connector.getParameter(i);
-				if ("port".equals(p.getName())) {
-					p.setValue(port + "");
-					isServerDirty = true;
-					firePropertyChangeEvent(MODIFY_PORT_PROPERTY, id, new Integer(port));
-					return;
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error modifying server port " + id, e);
-		}
-	}
-	
-	/**
-	 * Change a web module.
-	 * @param index int
-	 * @param docBase java.lang.String
-	 * @param path java.lang.String
-	 * @param reloadable boolean
-	 */
-	public void modifyWebModule(int index, String docBase, String path, boolean reloadable) {
-		try {
-			ContextManager contextManager = server.getContextManager();
-			Context context = contextManager.getContext(index);
-			context.setPath(path);
-			context.setDocBase(docBase);
-			context.setReloadable(reloadable ? "true" : "false");
-			isServerDirty = true;
-			WebModule module = new WebModule(path, docBase, null, reloadable);
-			firePropertyChangeEvent(MODIFY_WEB_MODULE_PROPERTY, new Integer(index), module);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error modifying web module " + index, e);
-		}
-	}
-	
-	/**
-	 * Removes a mime mapping.
-	 * @param index int
-	 */
-	public void removeMimeMapping(int index) {
-		webAppDocument.removeMimeMapping(index);
-		firePropertyChangeEvent(REMOVE_MAPPING_PROPERTY, null, new Integer(index));
-	}
-	
-	/**
-	 * Removes a web module.
-	 * @param index int
-	 */
-	public void removeWebModule(int index) {
-		try {
-			ContextManager contextManager = server.getContextManager();
-			contextManager.removeElement("Context", index);
-			isServerDirty = true;
-			firePropertyChangeEvent(REMOVE_WEB_MODULE_PROPERTY, null, new Integer(index));
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error removing web module " + index, e);
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat32Handler.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat32Handler.java
deleted file mode 100644
index 9084acb..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat32Handler.java
+++ /dev/null
@@ -1,112 +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.tomcat.core.internal;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.jst.server.core.IWebModule;
-/**
- * Tomcat 32 handler.
- */
-public class Tomcat32Handler implements ITomcatVersionHandler {
-	/**
-	 * @see ITomcatVersionHandler#verifyInstallPath(IPath)
-	 */
-	public boolean verifyInstallPath(IPath installPath) {
-		return TomcatPlugin.verifyInstallPath(installPath, TomcatPlugin.TOMCAT_32);
-	}
-	
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeClass()
-	 */
-	public String getRuntimeClass() {
-		return "org.apache.tomcat.startup.Tomcat";
-	}
-
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeClasspath(IPath)
-	 */
-	public List getRuntimeClasspath(IPath installPath) {
-		List cp = new ArrayList();
-		// add all jars from the Tomcat lib directory
-		File libDir = installPath.append("lib").toFile();
-		if (libDir.exists()) {
-			String[] libs = libDir.list();
-			for (int i = 0; i < libs.length; i++) {
-				if (libs[i].endsWith("jar")) {
-					IPath path = installPath.append("lib").append(libs[i]);
-					cp.add(JavaRuntime.newArchiveRuntimeClasspathEntry(path));
-				}
-			}
-		}
-
-		return cp;
-	}
-
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeProgramArguments(IPath, boolean, boolean)
-	 */
-	public String[] getRuntimeProgramArguments(IPath configPath, boolean debug, boolean starting) {
-		List list = new ArrayList();
-		if (configPath != null) {
-			list.add("-f \"" + configPath.append("conf").append("server.xml").toOSString() + "\"");
-		}
-		
-		if (!starting)
-			list.add("-stop");
-		
-		String[] s = new String[list.size()];
-		list.toArray(s);
-		return s;
-	}
-
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeVMArguments(IPath, IPath, boolean, boolean)
-	 */
-	public String[] getRuntimeVMArguments(IPath installPath, IPath configPath, boolean isTestEnv, boolean isSecure) {
-		List list = new ArrayList();
-		list.add("-Dtomcat.home=\"" + installPath.toOSString() + "\"");
-		
-		// run in secure mode
-		if (isSecure) {
-			list.add("-Djava.security.manager");
-			IPath dir = configPath.append("conf").append("tomcat.policy");
-			list.add("-Djava.security.policy=\"" + dir.toOSString() + "\"");
-		}
-		
-		String[] s = new String[list.size()];
-		list.toArray(s);
-		return s;
-	}
-	
-	/**
-	 * @see ITomcatVersionHandler#canAddModule(IWebModule)
-	 */
-	public IStatus canAddModule(IWebModule module) {
-		if ("1.2".equals(module.getJ2EESpecificationVersion()))
-			return new Status(IStatus.OK, TomcatPlugin.PLUGIN_ID, 0, Messages.canAddModule, null);
-		
-		return new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, Messages.errorSpec32, null);
-	}
-
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeBaseDirectory(TomcatServerBehaviour)
-	 */
-	public IPath getRuntimeBaseDirectory(TomcatServerBehaviour serverBehaviour) {
-		return serverBehaviour.getServer().getRuntime().getLocation();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat40Configuration.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat40Configuration.java
deleted file mode 100644
index 1fc28eb..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat40Configuration.java
+++ /dev/null
@@ -1,668 +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.tomcat.core.internal;
-
-import java.io.*;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.runtime.*;
-import org.eclipse.jst.server.tomcat.core.internal.xml.Factory;
-import org.eclipse.jst.server.tomcat.core.internal.xml.XMLUtil;
-import org.eclipse.jst.server.tomcat.core.internal.xml.server40.*;
-import org.eclipse.osgi.util.NLS;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.xml.sax.InputSource;
-
-import org.eclipse.wst.server.core.ServerPort;
-/**
- * Tomcat v4.0 server configuration.
- */
-public class Tomcat40Configuration extends TomcatConfiguration {
-	protected static final String DEFAULT_SERVICE = "Tomcat-Standalone";
-	protected static final String HTTP_CONNECTOR = "org.apache.catalina.connector.http.HttpConnector";
-	protected static final String SSL_SOCKET_FACTORY = "org.apache.catalina.net.SSLServerSocketFactory";
-	protected static final String TEST_CONNECTOR = "org.apache.catalina.connector.test.HttpConnector";
-	protected static final String APACHE_CONNECTOR = "org.apache.catalina.connector.warp.WarpConnector";
-
-	protected Server server;
-	protected Factory serverFactory;
-	protected boolean isServerDirty;
-
-	protected WebAppDocument webAppDocument;
-
-	protected Document tomcatUsersDocument;
-
-	protected String policyFile;
-	protected boolean isPolicyDirty;
-
-	/**
-	 * Tomcat40Configuration constructor.
-	 * 
-	 * @param path a path
-	 */
-	public Tomcat40Configuration(IFolder path) {
-		super(path);
-	}
-		
-	/**
-	 * Returns the root of the docbase parameter.
-	 *
-	 * @return java.lang.String
-	 */
-	protected String getDocBaseRoot() {
-		return "webapps/";
-	}
-
-	/**
-	 * Return the port number.
-	 * @return int
-	 */
-	public ServerPort getMainPort() {
-		Iterator iterator = getServerPorts().iterator();
-		while (iterator.hasNext()) {
-			ServerPort port = (ServerPort) iterator.next();
-			if (port.getName().equals("HTTP Connector"))
-				return port;
-		}
-		return null;
-	}
-	
-	/**
-	 * Returns the mime mappings.
-	 * @return java.util.List
-	 */
-	public List getMimeMappings() {
-		return webAppDocument.getMimeMappings();
-	}
-
-	/**
-	 * Returns the prefix that is used in front of the
-	 * web module path property. (e.g. "webapps")
-	 *
-	 * @return java.lang.String
-	 */
-	public String getPathPrefix() {
-		return "";
-	}
-	
-	/**
-	 * Return the docBase of the ROOT web module.
-	 *
-	 * @return java.lang.String
-	 */
-	protected String getROOTModuleDocBase() {
-		return "ROOT";
-	}
-	
-	/**
-	 * Returns a list of ServerPorts that this configuration uses.
-	 *
-	 * @return java.util.List
-	 */
-	public List getServerPorts() {
-		List ports = new ArrayList();
-	
-		// first add server port
-		try {
-			int port = Integer.parseInt(server.getPort());
-			ports.add(new ServerPort("server", Messages.portServer, port, "TCPIP"));
-		} catch (Exception e) {
-			// ignore
-		}
-	
-		// add connectors
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				int size2 = service.getConnectorCount();
-				for (int j = 0; j < size2; j++) {
-					Connector connector = service.getConnector(j);
-					String className = connector.getClassName();
-					String name = Messages.portUnknown;
-					String protocol = "TCPIP";
-					boolean advanced = true;
-					String[] contentTypes = null;
-					int port = -1;
-					try {
-						port = Integer.parseInt(connector.getPort());
-					} catch (Exception e) {
-						// ignore
-					}
-					if (HTTP_CONNECTOR.equals(className)) {
-						name = "HTTP Connector";
-						protocol = "HTTP";
-						contentTypes = new String[] { "web", "webservices" };
-						// check for SSL connector
-						try {
-							Element element = connector.getSubElement("Factory");
-							if (SSL_SOCKET_FACTORY.equals(element.getAttribute("className"))) {
-								name = "SSL Connector";
-								protocol = "SSL";
-							}
-						} catch (Exception e) {
-							// ignore
-						}
-						if ("HTTP".equals(protocol))
-							advanced = false;
-					} else if (APACHE_CONNECTOR.equals(className))
-						name = "Apache Connector";
-					if (className != null && className.length() > 0)
-						ports.add(new ServerPort(i + "/" + j, name, port, protocol, contentTypes, advanced));
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error getting server ports", e);
-		}
-		return ports;
-	}
-	
-	/**
-	 * Return a list of the web modules in this server.
-	 * @return java.util.List
-	 */
-	public List getWebModules() {
-		List list = new ArrayList();
-	
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					int size2 = host.getContextCount();
-					for (int j = 0; j < size2; j++) {
-						Context context = host.getContext(j);
-						String reload = context.getReloadable();
-						if (reload == null)
-							reload = "false";
-						WebModule module = new WebModule(context.getPath(), 
-							context.getDocBase(), context.getSource(),
-							reload.equalsIgnoreCase("true") ? true : false);
-						list.add(module);
-					}
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error getting modules", e);
-		}
-		return list;
-	}
-	
-	public void importFromPath(IPath path, boolean isTestEnv, IProgressMonitor monitor) throws CoreException {
-		load(path, monitor);
-		
-		// for test environment, remove existing contexts since a separate
-		// catalina.base will be used
-		if (isTestEnv) {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Host host = service.getEngine().getHost();
-					int size2 = host.getContextCount();
-					for (int j = 0; j < size2; j++) {
-						host.removeElement("Context", 0);
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * @see TomcatConfiguration#load(IPath, IProgressMonitor)
-	 */
-	public void load(IPath path, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.loadingTask, 5);
-			
-			// check for catalina.policy to verify that this is a v4.0 config
-			InputStream in = new FileInputStream(path.append("catalina.policy").toFile());
-			in.read();
-			in.close();
-			monitor.worked(1);
-	
-			serverFactory = new Factory();
-			serverFactory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
-			server = (Server) serverFactory.loadDocument(new FileInputStream(path.append("server.xml").toFile()));
-			monitor.worked(1);
-
-			webAppDocument = new WebAppDocument(path.append("web.xml"));
-			monitor.worked(1);
-	
-			tomcatUsersDocument = XMLUtil.getDocumentBuilder().parse(new InputSource(new FileInputStream(path.append("tomcat-users.xml").toFile())));
-			monitor.worked(1);
-		
-			// load policy file
-			BufferedReader br = null;
-			try {
-				br = new BufferedReader(new InputStreamReader(new FileInputStream(path.append("catalina.policy").toFile())));
-				String temp = br.readLine();
-				policyFile = "";
-				while (temp != null) {
-					policyFile += temp + "\n";
-					temp = br.readLine();
-				}
-			} catch (Exception e) {
-				Trace.trace(Trace.WARNING, "Could not load policy file", e);
-			} finally {
-				if (br != null)
-					br.close();
-			}
-			monitor.worked(1);
-	
-			if (monitor.isCanceled())
-				return;
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not load Tomcat v4.0 configuration from " + path.toOSString() + ": " + e.getMessage());
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, path.toOSString()), e));
-		}
-	}
-
-	/**
-	 * @see TomcatConfiguration#load(IFolder, IProgressMonitor)
-	 */
-	public void load(IFolder folder, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.loadingTask, 800);
-	
-			// check for catalina.policy to verify that this is a v4.0 config
-			IFile file = folder.getFile("catalina.policy");
-			if (!file.exists())
-				throw new CoreException(new Status(IStatus.WARNING, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, folder.getFullPath().toOSString()), null));
-	
-			// load server.xml
-			file = folder.getFile("server.xml");
-			InputStream in = file.getContents();
-			serverFactory = new Factory();
-			serverFactory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
-			server = (Server) serverFactory.loadDocument(in);
-			monitor.worked(200);
-	
-			// load web.xml
-			file = folder.getFile("web.xml");
-			webAppDocument = new WebAppDocument(file);
-			monitor.worked(200);
-	
-			// load tomcat-users.xml
-			file = folder.getFile("tomcat-users.xml");
-			in = file.getContents();
-			
-			tomcatUsersDocument = XMLUtil.getDocumentBuilder().parse(new InputSource(in));
-			monitor.worked(200);
-		
-			// load catalina.policy
-			file = folder.getFile("catalina.policy");
-			in = file.getContents();
-			BufferedReader br = null;
-			try {
-				br = new BufferedReader(new InputStreamReader(in));
-				String temp = br.readLine();
-				policyFile = "";
-				while (temp != null) {
-					policyFile += temp + "\n";
-					temp = br.readLine();
-				}
-			} catch (Exception e) {
-				Trace.trace(Trace.WARNING, "Could not load policy file", e);
-			} finally {
-				if (br != null)
-					br.close();
-			}
-			monitor.worked(200);
-	
-			if (monitor.isCanceled())
-				throw new Exception("Cancelled");
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not reload Tomcat v4.0 configuration from: " + folder.getFullPath() + ": " + e.getMessage());
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, folder.getFullPath().toOSString()), e));
-		}
-	}
-	
-	/**
-	 * Save to the given directory.
-	 * 
-	 * @param path a path
-	 * @param forceDirty boolean
-	 * @param monitor a progress monitor
-	 * @exception CoreException
-	 */
-	protected void save(IPath path, boolean forceDirty, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.savingTask, 3);
-	
-			// make sure directory exists
-			if (!path.toFile().exists()) {
-				forceDirty = true;
-				path.toFile().mkdir();
-			}
-			monitor.worked(1);
-	
-			// save files
-			if (forceDirty || isServerDirty)
-				serverFactory.save(path.append("server.xml").toOSString());
-			monitor.worked(1);
-	
-			//if (forceDirty || isWebAppDirty)
-			//	webAppFactory.save(dirPath + "web.xml");
-			//webAppDocument.save(path.toOSString(), forceDirty || isPolicyDirty);
-			webAppDocument.save(path.append("web.xml").toOSString(), forceDirty);
-			monitor.worked(1);
-	
-			if (forceDirty)
-				XMLUtil.save(path.append("tomcat-users.xml").toOSString(), tomcatUsersDocument);
-			monitor.worked(1);
-	
-			if (forceDirty || isPolicyDirty) {
-				BufferedWriter bw = new BufferedWriter(new FileWriter(path.append("catalina.policy").toFile()));
-				bw.write(policyFile);
-				bw.close();
-			}
-			monitor.worked(1);
-			isServerDirty = false;
-			isPolicyDirty = false;
-	
-			if (monitor.isCanceled())
-				return;
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save Tomcat v4.0 configuration to " + path, e);
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotSaveConfiguration, new String[] {e.getLocalizedMessage()}), e));
-		}
-	}
-	
-	public void save(IPath path, IProgressMonitor monitor) throws CoreException {
-		save(path, true, monitor);
-	}
-
-	/**
-	 * Save the information held by this object to the given directory.
-	 *
-	 * @param folder a folder
-	 * @param monitor a progress monitor
-	 * @throws CoreException
-	 */
-	public void save(IFolder folder, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.savingTask, 900);
-	
-			// save server.xml
-			byte[] data = serverFactory.getContents();
-			InputStream in = new ByteArrayInputStream(data);
-			IFile file = folder.getFile("server.xml");
-			if (file.exists()) {
-				if (isServerDirty)
-					file.setContents(in, true, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-				else
-					monitor.worked(200);
-			} else
-				file.create(in, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			// save web.xml
-			webAppDocument.save(folder.getFile("web.xml"), ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			// save tomcat-users.xml
-			data = XMLUtil.getContents(tomcatUsersDocument);
-			in = new ByteArrayInputStream(data);
-			file = folder.getFile("tomcat-users.xml");
-			if (file.exists())
-				monitor.worked(200);
-				//file.setContents(in, true, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-			else
-				file.create(in, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			// save catalina.policy
-			in = new ByteArrayInputStream(policyFile.getBytes());
-			file = folder.getFile("catalina.policy");
-			if (file.exists())
-				monitor.worked(200);
-				//file.setContents(in, true, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-			else
-				file.create(in, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			if (monitor.isCanceled())
-				return;
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save Tomcat v4.0 configuration to " + folder.toString(), e);
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotSaveConfiguration, new String[] {e.getLocalizedMessage()}), e));
-		}
-	}
-	
-	/**
-	 * @see ITomcatConfigurationWorkingCopy#addMimeMapping(int, IMimeMapping)
-	 */
-	public void addMimeMapping(int index, IMimeMapping map) {
-		webAppDocument.addMimeMapping(index, map);
-		firePropertyChangeEvent(ADD_MAPPING_PROPERTY, new Integer(index), map);
-	}
-
-	/**
-	 * @see ITomcatConfigurationWorkingCopy#addWebModule(int, ITomcatWebModule)
-	 */
-	public void addWebModule(int index, ITomcatWebModule module) {
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					Context context = (Context) host.createElement(index, "Context");
-					context.setDocBase(module.getDocumentBase());
-					context.setPath(module.getPath());
-					context.setReloadable(module.isReloadable() ? "true" : "false");
-					if (module.getMemento() != null && module.getMemento().length() > 0)
-						context.setSource(module.getMemento());
-					isServerDirty = true;
-					firePropertyChangeEvent(ADD_WEB_MODULE_PROPERTY, null, module);
-					return;
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error adding web module " + module.getPath(), e);
-		}
-	}
-	
-	/**
-	 * Localize the web projects in this configuration.
-	 *
-	 * @param path a path
-	 * @param server2 a server type
-	 * @param monitor a progress monitor
-	 */
-	public void localizeConfiguration(IPath path, TomcatServer server2, IProgressMonitor monitor) {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.updatingConfigurationTask, 100);
-			
-			Tomcat40Configuration config = new Tomcat40Configuration(null);
-			config.load(path, ProgressUtil.getSubMonitorFor(monitor, 40));
-	
-			if (monitor.isCanceled())
-				return;
-	
-			if (!server2.isTestEnvironment()) {
-				//IServerConfigurationWorkingCopy scwc = config.getServerConfiguration().createWorkingCopy();
-				//Tomcat40Configuration cfg = (Tomcat40Configuration) scwc.getAdapter(Tomcat40Configuration.class);
-				config.localizeWebModules();
-			}
-	
-			monitor.worked(20);
-	
-			if (monitor.isCanceled())
-				return;
-	
-			config.save(path, false, ProgressUtil.getSubMonitorFor(monitor, 40));
-	
-			if (!monitor.isCanceled())
-				monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error localizing configuration", e);
-		}
-	}
-	
-	/**
-	 * Go through all of the web modules and make the document
-	 * base "local" to the configuration.
-	 */
-	protected void localizeWebModules() {
-		List modules = getWebModules();
-
-		int size = modules.size();
-		for (int i = 0; i < size; i++) {
-			WebModule module = (WebModule) modules.get(i);
-			String memento = module.getMemento();
-			if (memento != null && memento.length() > 0) {
-				// update document base to a relative ref
-				String docBase = getPathPrefix() + module.getPath();
-				if (docBase.startsWith("/") || docBase.startsWith("\\"))
-					docBase = docBase.substring(1);
-				modifyWebModule(i, docBase, module.getPath(), module.isReloadable());
-			}
-		}
-	}
-
-	/**
-	 * Change the extension of a mime mapping.
-	 * 
-	 * @param index
-	 * @param map
-	 */
-	public void modifyMimeMapping(int index, IMimeMapping map) {
-		webAppDocument.modifyMimeMapping(index, map);
-		firePropertyChangeEvent(MODIFY_MAPPING_PROPERTY, new Integer(index), map);
-	}
-	
-	/**
-	 * Modify the port with the given id.
-	 *
-	 * @param id java.lang.String
-	 * @param port int
-	 */
-	public void modifyServerPort(String id, int port) {
-		try {
-			if ("server".equals(id)) {
-				server.setPort(port + "");
-				isServerDirty = true;
-				firePropertyChangeEvent(MODIFY_PORT_PROPERTY, id, new Integer(port));
-				return;
-			}
-	
-			int i = id.indexOf("/");
-			int servNum = Integer.parseInt(id.substring(0, i));
-			int connNum = Integer.parseInt(id.substring(i + 1));
-			
-			Service service = server.getService(servNum);
-			Connector connector = service.getConnector(connNum);
-			connector.setPort(port + "");
-			isServerDirty = true;
-			firePropertyChangeEvent(MODIFY_PORT_PROPERTY, id, new Integer(port));
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error modifying server port " + id, e);
-		}
-	}
-	/**
-	 * Change a web module.
-	 * @param index int
-	 * @param docBase java.lang.String
-	 * @param path java.lang.String
-	 * @param reloadable boolean
-	 */
-	public void modifyWebModule(int index, String docBase, String path, boolean reloadable) {
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					Context context = host.getContext(index);
-					context.setPath(path);
-					context.setDocBase(docBase);
-					context.setReloadable(reloadable ? "true" : "false");
-					isServerDirty = true;
-					WebModule module = new WebModule(path, docBase, null, reloadable);
-					firePropertyChangeEvent(MODIFY_WEB_MODULE_PROPERTY, new Integer(index), module);
-					return;
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error modifying web module " + index, e);
-		}
-	}
-	
-	/**
-	 * Removes a mime mapping.
-	 * @param index int
-	 */
-	public void removeMimeMapping(int index) {
-		webAppDocument.removeMimeMapping(index);
-		firePropertyChangeEvent(REMOVE_MAPPING_PROPERTY, null, new Integer(index));
-	}
-	
-	/**
-	 * Removes a web module.
-	 * @param index int
-	 */
-	public void removeWebModule(int index) {
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					host.removeElement("Context", index);
-					isServerDirty = true;
-					firePropertyChangeEvent(REMOVE_WEB_MODULE_PROPERTY, null, new Integer(index));
-					return;
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error removing module ref " + index, e);
-		}
-	}
-
-	protected IStatus prepareRuntimeDirectory(IPath confDir) {
-		Trace.trace(Trace.FINER, "Preparing runtime directory");
-		// Prepare a catalina.base directory structure
-		File temp = confDir.append("conf").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-		temp = confDir.append("logs").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-		temp = confDir.append("temp").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-		temp = confDir.append("webapps").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-		temp = confDir.append("work").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-
-		return new Status(IStatus.OK, TomcatPlugin.PLUGIN_ID, 0, Messages.runtimeDirPrepared, null);		
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat40Handler.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat40Handler.java
deleted file mode 100644
index 35e7c6e..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat40Handler.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.tomcat.core.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.jst.server.core.IWebModule;
-/**
- * Tomcat 40 handler.
- */
-public class Tomcat40Handler implements ITomcatVersionHandler {
-	/**
-	 * @see ITomcatVersionHandler#verifyInstallPath(IPath)
-	 */
-	public boolean verifyInstallPath(IPath installPath) {
-		if (installPath == null)
-			return false;
-
-		String s = installPath.lastSegment();
-		if (s != null && s.startsWith("jakarta-tomcat-") && !s.startsWith("jakarta-tomcat-4.0"))
-			return false;
-		return TomcatPlugin.verifyInstallPath(installPath, TomcatPlugin.TOMCAT_40);
-	}
-	
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeClass()
-	 */
-	public String getRuntimeClass() {
-		return "org.apache.catalina.startup.Bootstrap";
-	}
-	
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeClasspath(IPath)
-	 */
-	public List getRuntimeClasspath(IPath installPath) {
-		List cp = new ArrayList();
-		
-		// 4.0 - add bootstrap.jar from the Tomcat bin directory
-		IPath binPath = installPath.append("bin");
-		if (binPath.toFile().exists()) {
-			IPath path = binPath.append("bootstrap.jar");
-			cp.add(JavaRuntime.newArchiveRuntimeClasspathEntry(path));
-		}
-		
-		return cp;
-	}
-
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeProgramArguments(IPath, boolean, boolean)
-	 */
-	public String[] getRuntimeProgramArguments(IPath configPath, boolean debug, boolean starting) {
-		List list = new ArrayList();
-		
-		if (debug)
-			list.add("-debug");
-		
-		if (starting)
-			list.add("start");
-		else
-			list.add("stop");
-		
-		String[] s = new String[list.size()];
-		list.toArray(s);
-		return s;
-	}
-
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeVMArguments(IPath, IPath, boolean, boolean)
-	 */
-	public String[] getRuntimeVMArguments(IPath installPath, IPath configPath, boolean isTestEnv, boolean isSecure) {
-		List list = new ArrayList();
-		if (isTestEnv)
-			list.add("-Dcatalina.base=\"" + configPath.toOSString() + "\"");
-		else 
-			list.add("-Dcatalina.base=\"" + installPath.toOSString() + "\"");
-		list.add("-Dcatalina.home=\"" + installPath.toOSString() + "\"");
-		String endorsed = installPath.append("bin").toOSString() +
-			installPath.append("common").append("lib").toOSString();
-		list.add("-Djava.endorsed.dirs=\"" + endorsed + "\"");
-		
-		// run in secure mode
-		if (isSecure) {
-			list.add("-Djava.security.manager");
-			IPath dir = configPath.append("conf").append("catalina.policy");
-			list.add("-Djava.security.policy=\"" + dir.toOSString() + "\"");
-		}
-		
-		String[] s = new String[list.size()];
-		list.toArray(s);
-		return s;
-	}
-	
-	/**
-	 * @see ITomcatVersionHandler#canAddModule(IWebModule)
-	 */
-	public IStatus canAddModule(IWebModule module) {
-		if ("1.2".equals(module.getJ2EESpecificationVersion()) || "1.3".equals(module.getJ2EESpecificationVersion()))
-			return new Status(IStatus.OK, TomcatPlugin.PLUGIN_ID, 0, Messages.canAddModule, null);
-		
-		return new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, Messages.errorSpec40, null);
-	}
-
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeBaseDirectory(TomcatServerBehaviour)
-	 */
-	public IPath getRuntimeBaseDirectory(TomcatServerBehaviour serverBehaviour) {
-		if (serverBehaviour.getTomcatServer().isTestEnvironment())
-			return serverBehaviour.getTempDirectory();
-		return serverBehaviour.getServer().getRuntime().getLocation();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat41Configuration.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat41Configuration.java
deleted file mode 100644
index 64972c7..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat41Configuration.java
+++ /dev/null
@@ -1,805 +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.tomcat.core.internal;
-
-import java.io.*;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.runtime.*;
-import org.eclipse.jst.server.tomcat.core.internal.xml.Factory;
-import org.eclipse.jst.server.tomcat.core.internal.xml.XMLUtil;
-import org.eclipse.jst.server.tomcat.core.internal.xml.server40.*;
-import org.eclipse.osgi.util.NLS;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.xml.sax.InputSource;
-
-import org.eclipse.wst.server.core.ServerPort;
-/**
- * Tomcat v4.1 server configuration.
- */
-public class Tomcat41Configuration extends TomcatConfiguration {
-	protected static final String DEFAULT_SERVICE = "Tomcat-Standalone";
-	protected static final String HTTP_CONNECTOR = "org.apache.coyote.tomcat4.CoyoteConnector";
-	protected static final String JK_PROTOCOL_HANDLER = "org.apache.jk.server.JkCoyoteHandler";
-	protected static final String SSL_SOCKET_FACTORY = "org.apache.coyote.tomcat4.CoyoteServerSocketFactory";
-	//protected static final String TEST_CONNECTOR = "org.apache.catalina.connector.test.HttpConnector";
-	//org.apache.ajp.tomcat4.Ajp13Connector
-	protected static final String APACHE_CONNECTOR = "org.apache.catalina.connector.warp.WarpConnector";
-
-	protected Server server;
-	protected Factory serverFactory;
-	protected boolean isServerDirty;
-
-	protected WebAppDocument webAppDocument;
-
-	protected Document tomcatUsersDocument;
-
-	protected String policyFile;
-	protected boolean isPolicyDirty;
-
-	/**
-	 * Tomcat41Configuration constructor.
-	 * 
-	 * @param path a path
-	 */
-	public Tomcat41Configuration(IFolder path) {
-		super(path);
-	}
-	
-	/**
-	 * Returns the root of the docbase parameter.
-	 *
-	 * @return java.lang.String
-	 */
-	protected String getDocBaseRoot() {
-		return "webapps/";
-	}
-
-	/**
-	 * Return the port number.
-	 * @return int
-	 */
-	public ServerPort getMainPort() {
-		Iterator iterator = getServerPorts().iterator();
-		while (iterator.hasNext()) {
-			ServerPort port = (ServerPort) iterator.next();
-			if (port.getName().equals("HTTP Connector"))
-				return port;
-		}
-		return null;
-	}
-	
-	/**
-	 * Returns the mime mappings.
-	 * @return java.util.List
-	 */
-	public List getMimeMappings() {
-		return webAppDocument.getMimeMappings();
-	}
-	
-	/**
-	 * Returns the prefix that is used in front of the
-	 * web module path property. (e.g. "webapps")
-	 *
-	 * @return java.lang.String
-	 */
-	public String getPathPrefix() {
-		return "";
-	}
-	
-	/**
-	 * Return the docBase of the ROOT web module.
-	 *
-	 * @return java.lang.String
-	 */
-	protected String getROOTModuleDocBase() {
-		return "ROOT";
-	}
-	
-	/**
-	 * Returns a list of ServerPorts that this configuration uses.
-	 *
-	 * @return java.util.List
-	 */
-	public List getServerPorts() {
-		List ports = new ArrayList();
-	
-		// first add server port
-		try {
-			int port = Integer.parseInt(server.getPort());
-			ports.add(new ServerPort("server", Messages.portServer, port, "TCPIP"));
-		} catch (Exception e) {
-			// ignore
-		}
-	
-		// add connectors
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				int size2 = service.getConnectorCount();
-				for (int j = 0; j < size2; j++) {
-					Connector connector = service.getConnector(j);
-					String className = connector.getClassName();
-					String name = className;
-					String protocol = "TCPIP";
-					boolean advanced = true;
-					String[] contentTypes = null;
-					int port = -1;
-					try {
-						port = Integer.parseInt(connector.getPort());
-					} catch (Exception e) {
-						// ignore
-					}
-					if (HTTP_CONNECTOR.equals(className)) {
-						name = "HTTP Connector";
-						protocol = "HTTP";
-						contentTypes = new String[] { "web", "webservices" };
-						// check for AJP/1.3 Coyote connector
-						String protocolHandler = connector.getProtocolHandlerClassName();
-						if (JK_PROTOCOL_HANDLER.equals(protocolHandler)) {
-							name = "AJP/1.3 Connector";
-							protocol = "AJP/1.3"; 
-						} else {
-							// assume HTTP, check for HTTP SSL connector
-							try {
-								Element element = connector.getSubElement("Factory");
-								if (SSL_SOCKET_FACTORY.equals(element.getAttribute("className"))) {
-									name = "SSL Connector";
-									protocol = "SSL";
-								}
-							} catch (Exception e) {
-								// ignore
-							}
-						}
-						if ("HTTP".equals(protocol))
-							advanced = false;
-					} else if (APACHE_CONNECTOR.equals(className))
-						name = "Apache Connector";
-					if (className != null && className.length() > 0)
-						ports.add(new ServerPort(i + "/" + j, name, port, protocol, contentTypes, advanced));
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error getting server ports", e);
-		}
-		return ports;
-	}
-	
-	/**
-	 * Return a list of the web modules in this server.
-	 * @return java.util.List
-	 */
-	public List getWebModules() {
-		List list = new ArrayList();
-	
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					int size2 = host.getContextCount();
-					for (int j = 0; j < size2; j++) {
-						Context context = host.getContext(j);
-						String reload = context.getReloadable();
-						if (reload == null)
-							reload = "false";
-						WebModule module = new WebModule(context.getPath(), 
-							context.getDocBase(), context.getSource(),
-							reload.equalsIgnoreCase("true") ? true : false);
-						list.add(module);
-					}
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error getting project refs", e);
-		}
-		return list;
-	}
-	
-	public void importFromPath(IPath path, boolean isTestEnv, IProgressMonitor monitor) throws CoreException {
-		load(path, monitor);
-		
-		// for test environment, remove existing contexts since a separate
-		// catalina.base will be used
-		if (isTestEnv) {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Host host = service.getEngine().getHost();
-					int size2 = host.getContextCount();
-					for (int j = 0; j < size2; j++) {
-						host.removeElement("Context", 0);
-					}
-				}
-			}
-		}
-	}
-	
-	/**
-	 * @see TomcatConfiguration#load(IPath, IProgressMonitor)
-	 */
-	public void load(IPath path, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.loadingTask, 5);
-			
-			// check for catalina.policy to verify that this is a v4.0 config
-			InputStream in = new FileInputStream(path.append("catalina.policy").toFile());
-			in.read();
-			in.close();
-			monitor.worked(1);
-
-			serverFactory = new Factory();
-			serverFactory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
-			server = (Server) serverFactory.loadDocument(new FileInputStream(path.append("server.xml").toFile()));
-			monitor.worked(1);
-
-			webAppDocument = new WebAppDocument(path.append("web.xml"));
-			monitor.worked(1);
-	
-			tomcatUsersDocument = XMLUtil.getDocumentBuilder().parse(new InputSource(new FileInputStream(path.append("tomcat-users.xml").toFile())));
-			monitor.worked(1);
-		
-			// load policy file
-			BufferedReader br = null;
-			try {
-				br = new BufferedReader(new InputStreamReader(new FileInputStream(path.append("catalina.policy").toFile())));
-				String temp = br.readLine();
-				policyFile = "";
-				while (temp != null) {
-					policyFile += temp + "\n";
-					temp = br.readLine();
-				}
-			} catch (Exception e) {
-				Trace.trace(Trace.WARNING, "Could not load policy file", e);
-			} finally {
-				if (br != null)
-					br.close();
-			}
-			monitor.worked(1);
-	
-			if (monitor.isCanceled())
-				return;
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not load Tomcat v4.0 configuration from " + path.toOSString() + ": " + e.getMessage());
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, path.toOSString()), e));
-		}
-	}
-
-	/**
-	 * @see TomcatConfiguration#load(IFolder, IProgressMonitor)
-	 */
-	public void load(IFolder folder, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.loadingTask, 800);
-	
-			// check for catalina.policy to verify that this is a v4.0 config
-			IFile file = folder.getFile("catalina.policy");
-			if (!file.exists())
-				throw new CoreException(new Status(IStatus.WARNING, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, folder.getFullPath().toOSString()), null));
-	
-			// load server.xml
-			file = folder.getFile("server.xml");
-			InputStream in = file.getContents();
-			serverFactory = new Factory();
-			serverFactory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
-			server = (Server) serverFactory.loadDocument(in);
-			monitor.worked(200);
-	
-			// load web.xml
-			file = folder.getFile("web.xml");
-			webAppDocument = new WebAppDocument(file);
-			monitor.worked(200);
-	
-			// load tomcat-users.xml
-			file = folder.getFile("tomcat-users.xml");
-			in = file.getContents();
-
-			tomcatUsersDocument = XMLUtil.getDocumentBuilder().parse(new InputSource(in));
-			monitor.worked(200);
-		
-			// load catalina.policy
-			file = folder.getFile("catalina.policy");
-			in = file.getContents();
-			BufferedReader br = null;
-			try {
-				br = new BufferedReader(new InputStreamReader(in));
-				String temp = br.readLine();
-				policyFile = "";
-				while (temp != null) {
-					policyFile += temp + "\n";
-					temp = br.readLine();
-				}
-			} catch (Exception e) {
-				Trace.trace(Trace.WARNING, "Could not load policy file", e);
-			} finally {
-				if (br != null)
-					br.close();
-			}
-			monitor.worked(200);
-	
-			if (monitor.isCanceled())
-				throw new Exception("Cancelled");
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not reload Tomcat v4.1 configuration from: " + folder.getFullPath() + ": " + e.getMessage());
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, folder.getFullPath().toOSString()), e));
-		}
-	}
-
-	/**
-	 * Save to the given directory.
-	 * 
-	 * @param path a path
-	 * @param forceDirty boolean
-	 * @param monitor a progress monitor
-	 * @exception CoreException
-	 */
-	protected void save(IPath path, boolean forceDirty, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.savingTask, 3);
-	
-			// make sure directory exists
-			if (!path.toFile().exists()) {
-				forceDirty = true;
-				path.toFile().mkdir();
-			}
-			monitor.worked(1);
-	
-			// save files
-			if (forceDirty || isServerDirty)
-				serverFactory.save(path.append("server.xml").toOSString());
-			monitor.worked(1);
-	
-			//if (forceDirty || isWebAppDirty)
-			//	webAppFactory.save(dirPath + "web.xml");
-			//webAppDocument.save(path.toOSString(), forceDirty || isPolicyDirty);
-			webAppDocument.save(path.append("web.xml").toOSString(), forceDirty);
-			monitor.worked(1);
-	
-			if (forceDirty)
-				XMLUtil.save(path.append("tomcat-users.xml").toOSString(), tomcatUsersDocument);
-			monitor.worked(1);
-	
-			if (forceDirty || isPolicyDirty) {
-				BufferedWriter bw = new BufferedWriter(new FileWriter(path.append("catalina.policy").toFile()));
-				bw.write(policyFile);
-				bw.close();
-			}
-			monitor.worked(1);
-			isServerDirty = false;
-			isPolicyDirty = false;
-	
-			if (monitor.isCanceled())
-				return;
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save Tomcat v4.1 configuration to " + path, e);
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotSaveConfiguration, new String[] {e.getLocalizedMessage()}), e));
-		}
-	}
-	
-	public void save(IPath path, IProgressMonitor monitor) throws CoreException {
-		save(path, true, monitor);
-	}
-
-	/**
-	 * Save the information held by this object to the given directory.
-	 *
-	 * @param folder a folder
-	 * @param monitor a progress monitor
-	 * @throws CoreException
-	 */
-	public void save(IFolder folder, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.savingTask, 900);
-	
-			// save server.xml
-			byte[] data = serverFactory.getContents();
-			InputStream in = new ByteArrayInputStream(data);
-			IFile file = folder.getFile("server.xml");
-			if (file.exists()) {
-				if (isServerDirty)
-					file.setContents(in, true, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-				else
-					monitor.worked(200);
-			} else
-				file.create(in, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			// save web.xml
-			webAppDocument.save(folder.getFile("web.xml"), ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			// save tomcat-users.xml
-			data = XMLUtil.getContents(tomcatUsersDocument);
-			in = new ByteArrayInputStream(data);
-			file = folder.getFile("tomcat-users.xml");
-			if (file.exists())
-				monitor.worked(200);
-				//file.setContents(in, true, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-			else
-				file.create(in, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			// save catalina.policy
-			in = new ByteArrayInputStream(policyFile.getBytes());
-			file = folder.getFile("catalina.policy");
-			if (file.exists())
-				monitor.worked(200);
-				//file.setContents(in, true, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-			else
-				file.create(in, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			if (monitor.isCanceled())
-				return;
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save Tomcat v4.1 configuration to " + folder.toString(), e);
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotSaveConfiguration, new String[] {e.getLocalizedMessage()}), e));
-		}
-	}
-
-	protected static boolean hasMDBListener(Server server) {
-		if (server == null)
-			return false;
-		
-		int count = server.getListenerCount();
-		if (count == 0)
-			return false;
-			
-		for (int i = 0; i < count; i++) {
-			Listener listener = server.getListener(i);
-			if (listener != null && listener.getClassName() != null && listener.getClassName().indexOf("mbean") >= 0)
-				return true;
-		}
-		return false;
-	}
-	
-	/**
-	 * @see ITomcatConfigurationWorkingCopy#addMimeMapping(int, IMimeMapping)
-	 */
-	public void addMimeMapping(int index, IMimeMapping map) {
-		webAppDocument.addMimeMapping(index, map);
-		firePropertyChangeEvent(ADD_MAPPING_PROPERTY, new Integer(index), map);
-	}
-
-	/**
-	 * @see ITomcatConfigurationWorkingCopy#addWebModule(int, ITomcatWebModule)
-	 */
-	public void addWebModule(int index, ITomcatWebModule module) {
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					Context context = (Context) host.createElement(index, "Context");
-					context.setDocBase(module.getDocumentBase());
-					context.setPath(module.getPath());
-					context.setReloadable(module.isReloadable() ? "true" : "false");
-					if (module.getMemento() != null && module.getMemento().length() > 0)
-						context.setSource(module.getMemento());
-					isServerDirty = true;
-					firePropertyChangeEvent(ADD_WEB_MODULE_PROPERTY, null, module);
-					return;
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error adding web module " + module.getPath(), e);
-		}
-	}
-
-	/**
-	 * Localize the web projects in this configuration.
-	 *
-	 * @param path a path
-	 * @param server2 a server type
-	 * @param runtime a runtime
-	 * @param monitor a progress monitor
-	 */
-	public void localizeConfiguration(IPath path, TomcatServer server2, TomcatRuntime runtime, IProgressMonitor monitor) {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.updatingConfigurationTask, 100);
-			
-			Tomcat41Configuration config = new Tomcat41Configuration(null);
-			config.load(path, ProgressUtil.getSubMonitorFor(monitor, 40));
-	
-			if (monitor.isCanceled())
-				return;
-	
-			if (!server2.isTestEnvironment()) {
-				//IServerConfigurationWorkingCopy scwc = config.getServerConfiguration().createWorkingCopy();
-				//Tomcat41Configuration cfg = (Tomcat41Configuration) scwc.getAdapter(Tomcat41Configuration.class);
-				config.localizeWebModules();
-			}
-			monitor.worked(20);
-	
-			if (monitor.isCanceled())
-				return;
-	
-			config.save(path, false, ProgressUtil.getSubMonitorFor(monitor, 40));
-	
-			if (!monitor.isCanceled())
-				monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error localizing configuration", e);
-		}
-	}
-	
-	/**
-	 * Go through all of the web modules and make the document
-	 * base "local" to the configuration.
-	 */
-	protected void localizeWebModules() {
-		List modules = getWebModules();
-
-		int size = modules.size();
-		for (int i = 0; i < size; i++) {
-			WebModule module = (WebModule) modules.get(i);
-			String memento = module.getMemento();
-			if (memento != null && memento.length() > 0) {
-				// update document base to a relative ref
-				String docBase = getPathPrefix() + module.getPath();
-				if (docBase.startsWith("/") || docBase.startsWith("\\"))
-					docBase = docBase.substring(1);
-				modifyWebModule(i, docBase, module.getPath(), module.isReloadable());
-			}
-		}
-	}
-
-	/**
-	 * Change the extension of a mime mapping.
-	 * 
-	 * @param index
-	 * @param map
-	 */
-	public void modifyMimeMapping(int index, IMimeMapping map) {
-		webAppDocument.modifyMimeMapping(index, map);
-		firePropertyChangeEvent(MODIFY_MAPPING_PROPERTY, new Integer(index), map);
-	}
-	
-	/**
-	 * Modify the port with the given id.
-	 *
-	 * @param id java.lang.String
-	 * @param port int
-	 */
-	public void modifyServerPort(String id, int port) {
-		try {
-			if ("server".equals(id)) {
-				server.setPort(port + "");
-				isServerDirty = true;
-				firePropertyChangeEvent(MODIFY_PORT_PROPERTY, id, new Integer(port));
-				return;
-			}
-	
-			int i = id.indexOf("/");
-			int servNum = Integer.parseInt(id.substring(0, i));
-			int connNum = Integer.parseInt(id.substring(i + 1));
-			
-			Service service = server.getService(servNum);
-			Connector connector = service.getConnector(connNum);
-			connector.setPort(port + "");
-			isServerDirty = true;
-			firePropertyChangeEvent(MODIFY_PORT_PROPERTY, id, new Integer(port));
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error modifying server port " + id, e);
-		}
-	}
-	/**
-	 * Change a web module.
-	 * @param index int
-	 * @param docBase java.lang.String
-	 * @param path java.lang.String
-	 * @param reloadable boolean
-	 */
-	public void modifyWebModule(int index, String docBase, String path, boolean reloadable) {
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					Context context = host.getContext(index);
-					context.setPath(path);
-					context.setDocBase(docBase);
-					context.setReloadable(reloadable ? "true" : "false");
-					isServerDirty = true;
-					WebModule module = new WebModule(path, docBase, null, reloadable);
-					firePropertyChangeEvent(MODIFY_WEB_MODULE_PROPERTY, new Integer(index), module);
-					return;
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error modifying web module " + index, e);
-		}
-	}
-
-	/**
-	 * Removes a mime mapping.
-	 * @param index int
-	 */
-	public void removeMimeMapping(int index) {
-		webAppDocument.removeMimeMapping(index);
-		firePropertyChangeEvent(REMOVE_MAPPING_PROPERTY, null, new Integer(index));
-	}
-
-	/**
-	 * Removes a web module.
-	 * @param index int
-	 */
-	public void removeWebModule(int index) {
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					host.removeElement("Context", index);
-					isServerDirty = true;
-					firePropertyChangeEvent(REMOVE_WEB_MODULE_PROPERTY, null, new Integer(index));
-					return;
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error removing module ref " + index, e);
-		}
-	}
-
-	protected IStatus backupAndPublish(IPath confDir, boolean doBackup, IProgressMonitor monitor) {
-		MultiStatus ms = new MultiStatus(TomcatPlugin.PLUGIN_ID, 0, Messages.publishConfigurationTask, null);
-		Trace.trace(Trace.FINER, "Backup and publish");
-		monitor = ProgressUtil.getMonitorFor(monitor);
-
-		backupAndPublish(confDir, doBackup, ms, monitor, 300);
-		// TODO Refactor success detection once Bug 81060 is addressed
-		// This approach avoids refactoring to TomcatConfiguration.backupFolder()
-		// and backupPath() for now.
-		if (ms.isOK() && ms.getChildren().length > 0)
-			publishContextConfig(confDir, ms, monitor);
-
-		monitor.done();
-		return ms;
-	}
-	
-	protected void publishContextConfig(IPath confDir, MultiStatus ms, IProgressMonitor monitor) {
-		Trace.trace(Trace.FINER, "Apply context configurations");
-		try {
-			confDir = confDir.append("conf");
-			
-			monitor.subTask(Messages.publishContextConfigTask);
-			Factory factory = new Factory();
-			factory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
-			Server publishedServer = (Server) factory.loadDocument(new FileInputStream(confDir.append("server.xml").toFile()));
-			monitor.worked(100);
-			
-			boolean modified = false;
-
-			int size = publishedServer.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = publishedServer.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					int size2 = host.getContextCount();
-					for (int j = 0; j < size2; j++) {
-						Context context = host.getContext(j);
-						monitor.subTask(NLS.bind(Messages.checkingContextTask,
-								new String[] {context.getPath()}));
-						if (addContextConfig(context)) {
-							modified = true;
-						}
-					}
-				}
-			}
-			monitor.worked(100);
-			if (modified) {
-				monitor.subTask(Messages.savingContextConfigTask);
-				factory.save(confDir.append("server.xml").toOSString());
-			}
-			monitor.worked(100);
-			
-			Trace.trace(Trace.FINER, "Server.xml updated with context.xml configurations");
-			ms.add(new Status(IStatus.OK, TomcatPlugin.PLUGIN_ID, 0, Messages.serverPostProcessingComplete, null));
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not apply context configurations published Tomcat v5.0 configuration from " + confDir.toOSString() + ": " + e.getMessage());
-			IStatus s = new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorPublishConfiguration, new String[] {e.getLocalizedMessage()}), e);
-			ms.add(s);
-		}
-	}
-	
-	/**
-	 * If the specified Context is linked to a project, try to
-	 * update any configuration found a META-INF/context.xml found
-	 * relative to the specified docBase.
-	 * @param context Context object to receive context.xml contents.
-	 * @return Returns true if context is modified.
-	 */
-	protected boolean addContextConfig(Context context) {
-		boolean modified = false;
-		String source = context.getSource();
-		if (source != null && source.length() > 0 )
-		{
-			String docBase = context.getDocBase();
-			Context contextConfig = loadContextConfig(docBase);
-			if (null != contextConfig) {
-				if (context.hasChildNodes())
-					context.removeChildren();
-				contextConfig.copyChildrenTo(context);
-				modified = true;
-			}
-		}
-		return modified;
-	}
-	
-	/**
-	 * Tries to read a META-INF/context.xml file relative to the
-	 * specified docBase.  If found, it creates a Context object
-	 * containing the contexts of that file.
-	 * @param docBase
-	 * @return Context element created from context.xml, or null if not found.
-	 */
-	protected Context loadContextConfig(String docBase) {
-		File contexXML = new File(docBase + File.separator + "META-INF" + File.separator + "context.xml");
-		if (contexXML.exists()) {
-			try {
-				InputStream is = new FileInputStream(contexXML);
-				Factory ctxFactory = new Factory();
-				ctxFactory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
-				Context ctx = (Context)ctxFactory.loadDocument(is);
-				is.close();
-				return ctx;
-			} catch (FileNotFoundException e) {
-				// Ignore, should never occur
-			} catch (IOException e) {
-				Trace.trace(Trace.SEVERE, "Error reading web module's context.xml file: " + docBase, e);
-			}
-		}
-		return null;
- 	}
-	
-	protected IStatus prepareRuntimeDirectory(IPath confDir) {
-		Trace.trace(Trace.FINER, "Preparing runtime directory");
-		// Prepare a catalina.base directory structure
-		File temp = confDir.append("conf").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-		temp = confDir.append("logs").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-		temp = confDir.append("temp").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-		temp = confDir.append("webapps").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-		temp = confDir.append("work").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-
-		return new Status(IStatus.OK, TomcatPlugin.PLUGIN_ID, 0, Messages.runtimeDirPrepared, null);		
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat41Handler.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat41Handler.java
deleted file mode 100644
index ba87235..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat41Handler.java
+++ /dev/null
@@ -1,122 +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.tomcat.core.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.jst.server.core.IWebModule;
-/**
- * Tomcat 41 handler.
- */
-public class Tomcat41Handler implements ITomcatVersionHandler {
-	/**
-	 * @see ITomcatVersionHandler#verifyInstallPath(IPath)
-	 */
-	public boolean verifyInstallPath(IPath installPath) {
-		if (installPath == null)
-			return false;
-
-		String s = installPath.lastSegment();
-		if (s != null && s.startsWith("jakarta-tomcat-") && !s.startsWith("jakarta-tomcat-4.1"))
-			return false;
-		return TomcatPlugin.verifyInstallPath(installPath, TomcatPlugin.TOMCAT_41);
-	}
-	
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeClass()
-	 */
-	public String getRuntimeClass() {
-		return "org.apache.catalina.startup.Bootstrap";
-	}
-	
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeClasspath(IPath)
-	 */
-	public List getRuntimeClasspath(IPath installPath) {
-		List cp = new ArrayList();
-		
-		// 4.1 - add bootstrap.jar from the Tomcat bin directory
-		IPath binPath = installPath.append("bin");
-		if (binPath.toFile().exists()) {
-			IPath path = binPath.append("bootstrap.jar");
-			cp.add(JavaRuntime.newArchiveRuntimeClasspathEntry(path));
-		}
-		
-		return cp;
-	}
-
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeProgramArguments(IPath, boolean, boolean)
-	 */
-	public String[] getRuntimeProgramArguments(IPath configPath, boolean debug, boolean starting) {
-		List list = new ArrayList();
-		
-		if (debug)
-			list.add("-debug");
-		
-		if (starting)
-			list.add("start");
-		else
-			list.add("stop");
-		
-		String[] temp = new String[list.size()];
-		list.toArray(temp);
-		return temp;
-	}
-
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeVMArguments(IPath, IPath, boolean, boolean)
-	 */
-	public String[] getRuntimeVMArguments(IPath installPath, IPath configPath, boolean isTestEnv, boolean isSecure) {
-		List list = new ArrayList();
-		if (isTestEnv)
-			list.add("-Dcatalina.base=\"" + configPath.toOSString() + "\"");
-		else 
-			list.add("-Dcatalina.base=\"" + installPath.toOSString() + "\"");
-		list.add("-Dcatalina.home=\"" + installPath.toOSString() + "\"");
-		list.add("-Djava.endorsed.dirs=\"" + installPath.append("common").append("endorsed").toOSString() + "\"");
-		
-		// run in secure mode
-		if (isSecure) {
-			list.add("-Djava.security.manager");
-			IPath dir = configPath.append("conf").append("catalina.policy");
-			list.add("-Djava.security.policy=\"" + dir.toOSString() + "\"");
-		}
-		
-		String[] s = new String[list.size()];
-		list.toArray(s);
-		return s;
-	}
-	
-	/**
-	 * @see ITomcatVersionHandler#canAddModule(IWebModule)
-	 */
-	public IStatus canAddModule(IWebModule module) {
-		if ("1.2".equals(module.getJ2EESpecificationVersion()) || "1.3".equals(module.getJ2EESpecificationVersion()))
-			return new Status(IStatus.OK, TomcatPlugin.PLUGIN_ID, 0, Messages.canAddModule, null);
-		
-		return new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, Messages.errorSpec41, null);
-	}
-
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeBaseDirectory(TomcatServerBehaviour)
-	 */
-	public IPath getRuntimeBaseDirectory(TomcatServerBehaviour serverBehaviour) {
-		if (serverBehaviour.getTomcatServer().isTestEnvironment())
-			return serverBehaviour.getTempDirectory();
-		return serverBehaviour.getServer().getRuntime().getLocation();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat50Configuration.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat50Configuration.java
deleted file mode 100644
index 9a7a032..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat50Configuration.java
+++ /dev/null
@@ -1,878 +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.tomcat.core.internal;
-
-import java.io.*;
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.runtime.*;
-import org.eclipse.jst.server.tomcat.core.internal.xml.Factory;
-import org.eclipse.jst.server.tomcat.core.internal.xml.XMLUtil;
-import org.eclipse.jst.server.tomcat.core.internal.xml.server40.*;
-import org.eclipse.osgi.util.NLS;
-import org.w3c.dom.Document;
-import org.xml.sax.InputSource;
-
-import org.eclipse.wst.server.core.ServerPort;
-/**
- * Tomcat v5.0 server configuration.
- */
-public class Tomcat50Configuration extends TomcatConfiguration {
-	protected static final String DEFAULT_SERVICE = "Catalina";
-	protected Server server;
-	protected Factory serverFactory;
-	protected boolean isServerDirty;
-
-	protected WebAppDocument webAppDocument;
-
-	protected Document tomcatUsersDocument;
-
-	protected String policyFile;
-	protected boolean isPolicyDirty;
-
-	/**
-	 * Tomcat50Configuration constructor.
-	 * 
-	 * @param path a path
-	 */
-	public Tomcat50Configuration(IFolder path) {
-		super(path);
-	}
-	
-	/**
-	 * Returns the root of the docbase parameter.
-	 *
-	 * @return java.lang.String
-	 */
-	protected String getDocBaseRoot() {
-		return "webapps/";
-	}
-
-	/**
-	 * Return the port number.
-	 * @return int
-	 */
-	public ServerPort getMainPort() {
-		Iterator iterator = getServerPorts().iterator();
-		while (iterator.hasNext()) {
-			ServerPort port = (ServerPort) iterator.next();
-			if (port.getName().equals("HTTP"))
-				return port;
-		}
-		return null;
-	}
-	
-	/**
-	 * Returns the mime mappings.
-	 * @return java.util.List
-	 */
-	public List getMimeMappings() {
-		return webAppDocument.getMimeMappings();
-	}
-	
-	/**
-	 * Returns the prefix that is used in front of the
-	 * web module path property. (e.g. "webapps")
-	 *
-	 * @return java.lang.String
-	 */
-	public String getPathPrefix() {
-		return "";
-	}
-	
-	/**
-	 * Return the docBase of the ROOT web module.
-	 *
-	 * @return java.lang.String
-	 */
-	protected String getROOTModuleDocBase() {
-		return "ROOT";
-	}
-	
-	/**
-	 * Returns a list of ServerPorts that this configuration uses.
-	 *
-	 * @return java.util.List
-	 */
-	public List getServerPorts() {
-		List ports = new ArrayList();
-	
-		// first add server port
-		try {
-			int port = Integer.parseInt(server.getPort());
-			ports.add(new ServerPort("server", Messages.portServer, port, "TCPIP"));
-		} catch (Exception e) {
-			// ignore
-		}
-	
-		// add connectors
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				int size2 = service.getConnectorCount();
-				for (int j = 0; j < size2; j++) {
-					Connector connector = service.getConnector(j);
-					String name = "HTTP";
-					String protocol2 = "HTTP";
-					boolean advanced = true;
-					String[] contentTypes = null;
-					int port = -1;
-					try {
-						port = Integer.parseInt(connector.getPort());
-					} catch (Exception e) {
-						// ignore
-					}
-					String protocol = connector.getProtocol();
-					if (protocol != null && protocol.length() > 0) {
-						name = protocol;
-						protocol2 = protocol; 
-					}
-					if ("HTTP".equals(protocol))
-						contentTypes = new String[] { "web", "webservices" };
-					String secure = connector.getSecure();
-					if (secure != null && secure.length() > 0) {
-						name = "SSL";
-						protocol2 = "SSL";
-					} else
-						advanced = false;
-					ports.add(new ServerPort(i +"/" + j, name, port, protocol2, contentTypes, advanced));
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error getting server ports", e);
-		}
-		return ports;
-	}
-	
-	/**
-	 * Return a list of the web modules in this server.
-	 * @return java.util.List
-	 */
-	public List getWebModules() {
-		List list = new ArrayList();
-	
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					int size2 = host.getContextCount();
-					for (int j = 0; j < size2; j++) {
-						Context context = host.getContext(j);
-						String reload = context.getReloadable();
-						if (reload == null)
-							reload = "false";
-						WebModule module = new WebModule(context.getPath(), 
-							context.getDocBase(), context.getSource(),
-							reload.equalsIgnoreCase("true") ? true : false);
-						list.add(module);
-					}
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error getting project refs", e);
-		}
-		return list;
-	}
-	
-	/**
-	 * @see TomcatConfiguration#load(IPath, IProgressMonitor)
-	 */
-	public void load(IPath path, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.loadingTask, 5);
-			
-			// check for catalina.policy to verify that this is a v5.0 config
-			InputStream in = new FileInputStream(path.append("catalina.policy").toFile());
-			in.read();
-			in.close();
-			monitor.worked(1);
-
-			serverFactory = new Factory();
-			serverFactory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
-			server = (Server) serverFactory.loadDocument(new FileInputStream(path.append("server.xml").toFile()));
-			monitor.worked(1);
-
-			webAppDocument = new WebAppDocument(path.append("web.xml"));
-			monitor.worked(1);
-			
-			tomcatUsersDocument = XMLUtil.getDocumentBuilder().parse(new InputSource(new FileInputStream(path.append("tomcat-users.xml").toFile())));
-			monitor.worked(1);
-			
-			// load policy file
-			BufferedReader br = null;
-			try {
-				br = new BufferedReader(new InputStreamReader(new FileInputStream(path.append("catalina.policy").toFile())));
-				String temp = br.readLine();
-				policyFile = "";
-				while (temp != null) {
-					policyFile += temp + "\n";
-					temp = br.readLine();
-				}
-			} catch (Exception e) {
-				Trace.trace(Trace.WARNING, "Could not load policy file", e);
-			} finally {
-				if (br != null)
-					br.close();
-			}
-			monitor.worked(1);
-			
-			if (monitor.isCanceled())
-				return;
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not load Tomcat v5.0 configuration from " + path.toOSString() + ": " + e.getMessage());
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, path.toOSString()), e));
-		}
-	}
-
-	public void importFromPath(IPath path, boolean isTestEnv, IProgressMonitor monitor) throws CoreException {
-		load(path, monitor);
-		
-		// for test environment, remove existing contexts since a separate
-		// catalina.base will be used
-		if (isTestEnv) {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Host host = service.getEngine().getHost();
-					int size2 = host.getContextCount();
-					for (int j = 0; j < size2; j++) {
-						host.removeElement("Context", 0);
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * @see TomcatConfiguration#load(IFolder, IProgressMonitor)
-	 */
-	public void load(IFolder folder, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.loadingTask, 800);
-	
-			// check for catalina.policy to verify that this is a v4.0 config
-			IFile file = folder.getFile("catalina.policy");
-			if (!file.exists())
-				throw new CoreException(new Status(IStatus.WARNING, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, folder.getFullPath().toOSString()), null));
-	
-			// load server.xml
-			file = folder.getFile("server.xml");
-			InputStream in = file.getContents();
-			serverFactory = new Factory();
-			serverFactory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
-			server = (Server) serverFactory.loadDocument(in);
-			monitor.worked(200);
-	
-			// load web.xml
-			file = folder.getFile("web.xml");
-			webAppDocument = new WebAppDocument(file);
-			monitor.worked(200);
-	
-			// load tomcat-users.xml
-			file = folder.getFile("tomcat-users.xml");
-			in = file.getContents();
-			
-			tomcatUsersDocument = XMLUtil.getDocumentBuilder().parse(new InputSource(in));
-			monitor.worked(200);
-		
-			// load catalina.policy
-			file = folder.getFile("catalina.policy");
-			in = file.getContents();
-			BufferedReader br = null;
-			try {
-				br = new BufferedReader(new InputStreamReader(in));
-				String temp = br.readLine();
-				policyFile = "";
-				while (temp != null) {
-					policyFile += temp + "\n";
-					temp = br.readLine();
-				}
-			} catch (Exception e) {
-				Trace.trace(Trace.WARNING, "Could not load policy file", e);
-			} finally {
-				if (br != null)
-					br.close();
-			}
-			monitor.worked(200);
-	
-			if (monitor.isCanceled())
-				throw new Exception("Cancelled");
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not reload Tomcat v5.0 configuration from: " + folder.getFullPath() + ": " + e.getMessage());
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, folder.getFullPath().toOSString()), e));
-		}
-	}
-
-	/**
-	 * Save to the given directory.
-	 * @param path a path
-	 * @param forceDirty boolean
-	 * @param monitor a progress monitor
-	 * @exception CoreException
-	 */
-	protected void save(IPath path, boolean forceDirty, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.savingTask, 3);
-	
-			// make sure directory exists
-			if (!path.toFile().exists()) {
-				forceDirty = true;
-				path.toFile().mkdir();
-			}
-			monitor.worked(1);
-	
-			// save files
-			if (forceDirty || isServerDirty)
-				serverFactory.save(path.append("server.xml").toOSString());
-			monitor.worked(1);
-	
-			//if (forceDirty || isWebAppDirty)
-			//	webAppFactory.save(dirPath + "web.xml");
-			//webAppDocument.save(path.toOSString(), forceDirty || isPolicyDirty);
-			webAppDocument.save(path.append("web.xml").toOSString(), forceDirty);
-			monitor.worked(1);
-	
-			if (forceDirty)
-				XMLUtil.save(path.append("tomcat-users.xml").toOSString(), tomcatUsersDocument);
-			monitor.worked(1);
-	
-			if (forceDirty || isPolicyDirty) {
-				BufferedWriter bw = new BufferedWriter(new FileWriter(path.append("catalina.policy").toFile()));
-				bw.write(policyFile);
-				bw.close();
-			}
-			monitor.worked(1);
-			isServerDirty = false;
-			isPolicyDirty = false;
-	
-			if (monitor.isCanceled())
-				return;
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save Tomcat v5.0 configuration to " + path, e);
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotSaveConfiguration, new String[] {e.getLocalizedMessage()}), e));
-		}
-	}
-	
-	public void save(IPath path, IProgressMonitor monitor) throws CoreException {
-		save(path, true, monitor);
-	}
-
-	/**
-	 * Save the information held by this object to the given directory.
-	 *
-	 * @param folder a folder
-	 * @param monitor a progress monitor
-	 * @throws CoreException
-	 */
-	public void save(IFolder folder, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.savingTask, 900);
-	
-			// save server.xml
-			byte[] data = serverFactory.getContents();
-			InputStream in = new ByteArrayInputStream(data);
-			IFile file = folder.getFile("server.xml");
-			if (file.exists()) {
-				if (isServerDirty)
-					file.setContents(in, true, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-				else
-					monitor.worked(200);
-			} else
-				file.create(in, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			// save web.xml
-			webAppDocument.save(folder.getFile("web.xml"), ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			// save tomcat-users.xml
-			data = XMLUtil.getContents(tomcatUsersDocument);
-			in = new ByteArrayInputStream(data);
-			file = folder.getFile("tomcat-users.xml");
-			if (file.exists())
-				monitor.worked(200);
-				//file.setContents(in, true, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-			else
-				file.create(in, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			// save catalina.policy
-			in = new ByteArrayInputStream(policyFile.getBytes());
-			file = folder.getFile("catalina.policy");
-			if (file.exists())
-				monitor.worked(200);
-				//file.setContents(in, true, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-			else
-				file.create(in, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			if (monitor.isCanceled())
-				return;
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save Tomcat v5.0 configuration to " + folder.toString(), e);
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotSaveConfiguration, new String[] {e.getLocalizedMessage()}), e));
-		}
-	}
-
-	protected static boolean hasMDBListener(Server server) {
-		if (server == null)
-			return false;
-		
-		int count = server.getListenerCount();
-		if (count == 0)
-			return false;
-			
-		for (int i = 0; i < count; i++) {
-			Listener listener = server.getListener(i);
-			if (listener != null && listener.getClassName() != null && listener.getClassName().indexOf("mbean") >= 0)
-				return true;
-		}
-		return false;
-	}
-	
-	/**
-	 * @see ITomcatConfigurationWorkingCopy#addMimeMapping(int, IMimeMapping)
-	 */
-	public void addMimeMapping(int index, IMimeMapping map) {
-		webAppDocument.addMimeMapping(index, map);
-		firePropertyChangeEvent(ADD_MAPPING_PROPERTY, new Integer(index), map);
-	}
-
-	/**
-	 * @see ITomcatConfigurationWorkingCopy#addWebModule(int, ITomcatWebModule)
-	 */
-	public void addWebModule(int index, ITomcatWebModule module) {
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					Context context = (Context) host.createElement(index, "Context");
-					context.setDocBase(module.getDocumentBase());
-					context.setPath(module.getPath());
-					context.setReloadable(module.isReloadable() ? "true" : "false");
-					if (module.getMemento() != null && module.getMemento().length() > 0)
-						context.setSource(module.getMemento());
-					isServerDirty = true;
-					firePropertyChangeEvent(ADD_WEB_MODULE_PROPERTY, null, module);
-					return;
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error adding web module " + module.getPath(), e);
-		}
-	}
-
-	/**
-	 * Localize the web projects in this configuration.
-	 *
-	 * @param path a path
-	 * @param server2 a server type
-	 * @param runtime a runtime
-	 * @param monitor a progress monitor
-	 */
-	public void localizeConfiguration(IPath path, TomcatServer server2, TomcatRuntime runtime, IProgressMonitor monitor) {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.updatingConfigurationTask, 100);
-			
-			Tomcat50Configuration config = new Tomcat50Configuration(null);
-			config.load(path, ProgressUtil.getSubMonitorFor(monitor, 40));
-	
-			if (monitor.isCanceled())
-				return;
-	
-			if (!server2.isTestEnvironment()) {
-				//IServerConfigurationWorkingCopy scwc = config.getServerConfiguration().createWorkingCopy();
-				//Tomcat50Configuration cfg = (Tomcat50Configuration) scwc.getAdapter(Tomcat50Configuration.class);
-				config.localizeWebModules();
-			}
-			monitor.worked(20);
-	
-			if (monitor.isCanceled())
-				return;
-	
-			config.save(path, false, ProgressUtil.getSubMonitorFor(monitor, 40));
-	
-			if (!monitor.isCanceled())
-				monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error localizing configuration", e);
-		}
-	}
-	
-	/**
-	 * Go through all of the web modules and make the document
-	 * base "local" to the configuration.
-	 */
-	protected void localizeWebModules() {
-		List modules = getWebModules();
-
-		int size = modules.size();
-		for (int i = 0; i < size; i++) {
-			WebModule module = (WebModule) modules.get(i);
-			String memento = module.getMemento();
-			if (memento != null && memento.length() > 0) {
-				// update document base to a relative ref
-				String docBase = getPathPrefix() + module.getPath();
-				if (docBase.startsWith("/") || docBase.startsWith("\\"))
-					docBase = docBase.substring(1);
-				modifyWebModule(i, docBase, module.getPath(), module.isReloadable());
-			}
-		}
-	}
-
-	/**
-	 * Change the extension of a mime mapping.
-	 * 
-	 * @param index
-	 * @param map
-	 */
-	public void modifyMimeMapping(int index, IMimeMapping map) {
-		webAppDocument.modifyMimeMapping(index, map);
-		firePropertyChangeEvent(MODIFY_MAPPING_PROPERTY, new Integer(index), map);
-	}
-	
-	/**
-	 * Modify the port with the given id.
-	 *
-	 * @param id java.lang.String
-	 * @param port int
-	 */
-	public void modifyServerPort(String id, int port) {
-		try {
-			if ("server".equals(id)) {
-				server.setPort(port + "");
-				isServerDirty = true;
-				firePropertyChangeEvent(MODIFY_PORT_PROPERTY, id, new Integer(port));
-				return;
-			}
-	
-			int i = id.indexOf("/");
-			int servNum = Integer.parseInt(id.substring(0, i));
-			int connNum = Integer.parseInt(id.substring(i + 1));
-			
-			Service service = server.getService(servNum);
-			Connector connector = service.getConnector(connNum);
-			connector.setPort(port + "");
-			isServerDirty = true;
-			firePropertyChangeEvent(MODIFY_PORT_PROPERTY, id, new Integer(port));
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error modifying server port " + id, e);
-		}
-	}
-	/**
-	 * Change a web module.
-	 * @param index int
-	 * @param docBase java.lang.String
-	 * @param path java.lang.String
-	 * @param reloadable boolean
-	 */
-	public void modifyWebModule(int index, String docBase, String path, boolean reloadable) {
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					Context context = host.getContext(index);
-					context.setPath(path);
-					context.setDocBase(docBase);
-					context.setReloadable(reloadable ? "true" : "false");
-					isServerDirty = true;
-					WebModule module = new WebModule(path, docBase, null, reloadable);
-					firePropertyChangeEvent(MODIFY_WEB_MODULE_PROPERTY, new Integer(index), module);
-					return;
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error modifying web module " + index, e);
-		}
-	}
-
-	/**
-	 * Removes a mime mapping.
-	 * @param index int
-	 */
-	public void removeMimeMapping(int index) {
-		webAppDocument.removeMimeMapping(index);
-		firePropertyChangeEvent(REMOVE_MAPPING_PROPERTY, null, new Integer(index));
-	}
-
-	/**
-	 * Removes a web module.
-	 * @param index int
-	 */
-	public void removeWebModule(int index) {
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					host.removeElement("Context", index);
-					isServerDirty = true;
-					firePropertyChangeEvent(REMOVE_WEB_MODULE_PROPERTY, null, new Integer(index));
-					return;
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error removing module ref " + index, e);
-		}
-	}
-
-	protected IStatus backupAndPublish(IPath confDir, boolean doBackup, IProgressMonitor monitor) {
-		MultiStatus ms = new MultiStatus(TomcatPlugin.PLUGIN_ID, 0, Messages.publishConfigurationTask, null);
-		Trace.trace(Trace.FINER, "Backup and publish");
-		monitor = ProgressUtil.getMonitorFor(monitor);
-
-		backupAndPublish(confDir, doBackup, ms, monitor, 300);
-		// TODO Refactor success detection once Bug 81060 is addressed
-		// This approach avoids refactoring TomcatConfiguration.backupFolder()
-		// and backupPath() for now.
-		if (ms.isOK() && ms.getChildren().length > 0)
-			publishContextConfig(confDir, ms, monitor);
-
-		monitor.done();
-		return ms;
-	}
-	
-	protected void publishContextConfig(IPath confDir, MultiStatus ms, IProgressMonitor monitor) {
-		Trace.trace(Trace.FINER, "Apply context configurations");
-		try {
-			confDir = confDir.append("conf");
-			
-			monitor.subTask(Messages.publishContextConfigTask);
-			Factory factory = new Factory();
-			factory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
-			Server publishedServer = (Server) factory.loadDocument(new FileInputStream(confDir.append("server.xml").toFile()));
-			monitor.worked(100);
-
-			boolean modified = false;
-
-			int size = publishedServer.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = publishedServer.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					int size2 = host.getContextCount();
-					for (int j = 0; j < size2; j++) {
-						Context context = host.getContext(j);
-						monitor.subTask(NLS.bind(Messages.checkingContextTask,
-								new String[] {context.getPath()}));
-						if (addContextConfig(context)) {
-							modified = true;
-						}
-					}
-				}
-			}
-			monitor.worked(100);
-			if (modified) {
-				monitor.subTask(Messages.savingContextConfigTask);
-				factory.save(confDir.append("server.xml").toOSString());
-			}
-			monitor.worked(100);
-			
-			Trace.trace(Trace.FINER, "Server.xml updated with context.xml configurations");
-			ms.add(new Status(IStatus.OK, TomcatPlugin.PLUGIN_ID, 0, Messages.serverPostProcessingComplete, null));
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not apply context configurations published Tomcat v5.0 configuration from " + confDir.toOSString() + ": " + e.getMessage());
-			IStatus s = new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorPublishConfiguration, new String[] {e.getLocalizedMessage()}), e);
-			ms.add(s);
-		}
-	}
-	
-	/**
-	 * If the specified Context is linked to a project, try to
-	 * update any configuration found a META-INF/context.xml found
-	 * relative to the specified docBase.
-	 * @param context Context object to receive context.xml contents.
-	 * @return Returns true if context is modified.
-	 */
-	protected boolean addContextConfig(Context context) {
-		boolean modified = false;
-		String source = context.getSource();
-		if (source != null && source.length() > 0 )
-		{
-			String docBase = context.getDocBase();
-			Context contextConfig = loadContextConfig(docBase);
-			if (null != contextConfig) {
-				if (context.hasChildNodes())
-					context.removeChildren();
-				contextConfig.copyChildrenTo(context);
-				modified = true;
-			}
-		}
-		return modified;
-	}
-	
-	/**
-	 * Tries to read a META-INF/context.xml file relative to the
-	 * specified docBase.  If found, it creates a Context object
-	 * containing the contexts of that file.
-	 * @param docBase
-	 * @return Context element created from context.xml, or null if not found.
-	 */
-	protected Context loadContextConfig(String docBase) {
-		File contexXML = new File(docBase + File.separator + "META-INF" + File.separator + "context.xml");
-		if (contexXML.exists()) {
-			try {
-				InputStream is = new FileInputStream(contexXML);
-				Factory ctxFactory = new Factory();
-				ctxFactory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
-				Context ctx = (Context)ctxFactory.loadDocument(is);
-				is.close();
-				return ctx;
-			} catch (FileNotFoundException e) {
-				// Ignore, should never occur
-			} catch (IOException e) {
-				Trace.trace(Trace.SEVERE, "Error reading web module's context.xml file: " + docBase, e);
-			}
-		}
-		return null;
- 	}
-
-	protected IStatus cleanupServer(IPath confDir, IPath installDir, IProgressMonitor monitor) {
-		MultiStatus ms = new MultiStatus(TomcatPlugin.PLUGIN_ID, 0, Messages.cleanupServerTask, null);
-		monitor = ProgressUtil.getMonitorFor(monitor);
-		monitor.beginTask(Messages.cleanupServerTask, 200);
-
-		try {
-			monitor.subTask(Messages.detectingRemovedProjects);
-
-			// Try to read old server configuration
-			Factory factory = new Factory();
-			factory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
-			File serverFile = confDir.append("conf").append("server.xml").toFile();
-			if (serverFile.exists()) {
-				Server oldServer = (Server) factory.loadDocument(new FileInputStream(serverFile));
-				
-				// Begin building path to context directory
-				IPath contextDir = confDir.append("conf");
-
-				// Collect paths of old web modules managed by WTP
-				Set oldPaths = new HashSet();
-				int size = oldServer.getServiceCount();
-				for (int i = 0; i < size; i++) {
-					Service service = oldServer.getService(i);
-					if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-						Engine engine = service.getEngine();
-						Host host = engine.getHost();
-						// Finish path to context directory
-						contextDir = contextDir.append(engine.getName()).append(host.getName());
-						int size2 = host.getContextCount();
-						for (int j = 0; j < size2; j++) {
-							Context context = host.getContext(j);
-							String source = context.getSource();
-							if (source != null && source.length() > 0 )	{
-								oldPaths.add(context.getPath());
-							}
-						}
-					}
-				}
-
-				// Remove paths for web modules that are staying around
-				List modules = getWebModules();
-				size = modules.size();
-				for (int i = 0; i < size; i++) {
-					WebModule module = (WebModule) modules.get(i);
-					oldPaths.remove(module.getPath());
-				}
-				monitor.worked(100);
-
-				// Delete context files for managed web modules that have gone away
-				if (oldPaths.size() > 0 ) {
-					IProgressMonitor subMonitor = ProgressUtil.getSubMonitorFor(monitor, 100);
-					subMonitor.beginTask(Messages.deletingContextFilesTask, oldPaths.size() * 100);
-					
-					Iterator iter = oldPaths.iterator();
-					while (iter.hasNext()) {
-						// Derive the context file name from the path + ".xml", minus the leading '/'
-						String fileName = ((String)iter.next()).substring(1) + ".xml";
-						IPath contextPath = contextDir.append(fileName);
-						File contextFile = contextPath.toFile();
-						if (contextFile.exists()) {
-							subMonitor.subTask(NLS.bind(Messages.deletingContextFile, fileName));
-							if (contextFile.delete()) {
-								Trace.trace(Trace.FINER, "Leftover context file " + fileName + " deleted.");
-								ms.add(new Status(IStatus.OK, TomcatPlugin.PLUGIN_ID, 0,
-										NLS.bind(Messages.deletedContextFile, fileName), null));
-								
-							} else {
-								Trace.trace(Trace.SEVERE, "Could not delete obsolete context file " + contextPath.toOSString());
-								ms.add(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0,
-										NLS.bind(Messages.errorCouldNotDeleteContextFile, contextPath.toOSString()), null));
-							}
-							subMonitor.worked(100);
-						}
-					}
-					subMonitor.done();
-				} else {
-					monitor.worked(100);
-				}
-			}
-			// Else no server.xml.  Assume first publish to new temp directory
-			else {
-				monitor.worked(200);
-			}
-			Trace.trace(Trace.FINER, "Server cleaned");
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not cleanup server at " + confDir.toOSString() + ": " + e.getMessage());
-			ms.add(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0,
-					NLS.bind(Messages.errorCleanupServer, new String[] {e.getLocalizedMessage()}), e));
-		}
-		
-		monitor.done();
-		return ms;
-	}
-
-	protected IStatus prepareRuntimeDirectory(IPath confDir) {
-		Trace.trace(Trace.FINER, "Preparing runtime directory");
-		// Prepare a catalina.base directory structure
-		File temp = confDir.append("conf").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-		temp = confDir.append("logs").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-		temp = confDir.append("temp").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-		temp = confDir.append("webapps").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-		temp = confDir.append("work").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-
-		return new Status(IStatus.OK, TomcatPlugin.PLUGIN_ID, 0, Messages.runtimeDirPrepared, null);		
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat50Handler.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat50Handler.java
deleted file mode 100644
index 23eb661..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat50Handler.java
+++ /dev/null
@@ -1,122 +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.tomcat.core.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.jst.server.core.IWebModule;
-/**
- * Tomcat 50 handler.
- */
-public class Tomcat50Handler implements ITomcatVersionHandler {
-	/**
-	 * @see ITomcatVersionHandler#verifyInstallPath(IPath)
-	 */
-	public boolean verifyInstallPath(IPath installPath) {
-		if (installPath == null)
-			return false;
-
-		String s = installPath.lastSegment();
-		if (s != null && s.startsWith("jakarta-tomcat-") && !s.startsWith("jakarta-tomcat-5.0"))
-			return false;
-		return TomcatPlugin.verifyInstallPath(installPath, TomcatPlugin.TOMCAT_50);
-	}
-	
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeClass()
-	 */
-	public String getRuntimeClass() {
-		return "org.apache.catalina.startup.Bootstrap";
-	}
-	
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeClasspath(IPath)
-	 */
-	public List getRuntimeClasspath(IPath installPath) {
-		List cp = new ArrayList();
-		
-		// 5.0 - add bootstrap.jar from the Tomcat bin directory
-		IPath binPath = installPath.append("bin");
-		if (binPath.toFile().exists()) {
-			IPath path = binPath.append("bootstrap.jar");
-			cp.add(JavaRuntime.newArchiveRuntimeClasspathEntry(path));
-		}
-		
-		return cp;
-	}
-
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeProgramArguments(IPath, boolean, boolean)
-	 */
-	public String[] getRuntimeProgramArguments(IPath configPath, boolean debug, boolean starting) {
-		List list = new ArrayList();
-		
-		if (debug)
-			list.add("-debug");
-		
-		if (starting)
-			list.add("start");
-		else
-			list.add("stop");
-		
-		String[] temp = new String[list.size()];
-		list.toArray(temp);
-		return temp;
-	}
-
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeVMArguments(IPath, IPath, boolean, boolean)
-	 */
-	public String[] getRuntimeVMArguments(IPath installPath, IPath configPath, boolean isTestEnv, boolean isSecure) {
-		List list = new ArrayList();
-		if (isTestEnv)
-			list.add("-Dcatalina.base=\"" + configPath.toOSString() + "\"");
-		else 
-			list.add("-Dcatalina.base=\"" + installPath.toOSString() + "\"");
-		list.add("-Dcatalina.home=\"" + installPath.toOSString() + "\"");
-		list.add("-Djava.endorsed.dirs=\"" + installPath.append("common").append("endorsed").toOSString() + "\"");
-		
-		// run in secure mode
-		if (isSecure) {
-			list.add("-Djava.security.manager");
-			IPath dir = configPath.append("conf").append("catalina.policy");
-			list.add("-Djava.security.policy=\"" + dir.toOSString() + "\"");
-		}
-		
-		String[] s = new String[list.size()];
-		list.toArray(s);
-		return s;
-	}
-	
-	/**
-	 * @see ITomcatVersionHandler#canAddModule(IWebModule)
-	 */
-	public IStatus canAddModule(IWebModule module) {
-		if ("1.2".equals(module.getJ2EESpecificationVersion()) || "1.3".equals(module.getJ2EESpecificationVersion()) || "1.4".equals(module.getJ2EESpecificationVersion()))
-			return new Status(IStatus.OK, TomcatPlugin.PLUGIN_ID, 0, Messages.canAddModule, null);
-		
-		return new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, Messages.errorSpec50, null);
-	}
-
-	/**
-	 * @see ITomcatVersionHandler#getRuntimeBaseDirectory(TomcatServerBehaviour)
-	 */
-	public IPath getRuntimeBaseDirectory(TomcatServerBehaviour serverBehaviour) {
-		if (serverBehaviour.getTomcatServer().isTestEnvironment())
-			return serverBehaviour.getTempDirectory();
-		return serverBehaviour.getServer().getRuntime().getLocation();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat55Configuration.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat55Configuration.java
deleted file mode 100644
index 47aa3c2..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat55Configuration.java
+++ /dev/null
@@ -1,782 +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.tomcat.core.internal;
-
-import java.io.*;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.runtime.*;
-import org.eclipse.jst.server.tomcat.core.internal.xml.Factory;
-import org.eclipse.jst.server.tomcat.core.internal.xml.XMLUtil;
-import org.eclipse.jst.server.tomcat.core.internal.xml.server40.*;
-import org.eclipse.osgi.util.NLS;
-import org.w3c.dom.Document;
-import org.xml.sax.InputSource;
-
-import org.eclipse.wst.server.core.ServerPort;
-/**
- * Tomcat v5.5 server configuration.
- */
-public class Tomcat55Configuration extends TomcatConfiguration {
-	protected static final String DEFAULT_SERVICE = "Catalina";
-	protected Server server;
-	protected Factory serverFactory;
-	protected boolean isServerDirty;
-
-	protected WebAppDocument webAppDocument;
-
-	protected Document tomcatUsersDocument;
-
-	protected String policyFile;
-	protected boolean isPolicyDirty;
-
-	/**
-	 * Tomcat55Configuration constructor.
-	 * 
-	 * @param path a path
-	 */
-	public Tomcat55Configuration(IFolder path) {
-		super(path);
-	}
-	
-	/**
-	 * Returns the root of the docbase parameter.
-	 *
-	 * @return java.lang.String
-	 */
-	protected String getDocBaseRoot() {
-		return "webapps/";
-	}
-
-	/**
-	 * Return the port number.
-	 * @return int
-	 */
-	public ServerPort getMainPort() {
-		Iterator iterator = getServerPorts().iterator();
-		while (iterator.hasNext()) {
-			ServerPort port = (ServerPort) iterator.next();
-			if (port.getName().equals("HTTP"))
-				return port;
-		}
-		return null;
-	}
-	
-	/**
-	 * Returns the mime mappings.
-	 * @return java.util.List
-	 */
-	public List getMimeMappings() {
-		return webAppDocument.getMimeMappings();
-	}
-	
-	/**
-	 * Returns the prefix that is used in front of the
-	 * web module path property. (e.g. "webapps")
-	 *
-	 * @return java.lang.String
-	 */
-	public String getPathPrefix() {
-		return "";
-	}
-	
-	/**
-	 * Return the docBase of the ROOT web module.
-	 *
-	 * @return java.lang.String
-	 */
-	protected String getROOTModuleDocBase() {
-		return "ROOT";
-	}
-	
-	/**
-	 * Returns a list of ServerPorts that this configuration uses.
-	 *
-	 * @return java.util.List
-	 */
-	public List getServerPorts() {
-		List ports = new ArrayList();
-	
-		// first add server port
-		try {
-			int port = Integer.parseInt(server.getPort());
-			ports.add(new ServerPort("server", Messages.portServer, port, "TCPIP"));
-		} catch (Exception e) {
-			// ignore
-		}
-	
-		// add connectors
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				int size2 = service.getConnectorCount();
-				for (int j = 0; j < size2; j++) {
-					Connector connector = service.getConnector(j);
-					String name = "HTTP";
-					String protocol2 = "TCPIP";
-					boolean advanced = true;
-					String[] contentTypes = null;
-					int port = -1;
-					try {
-						port = Integer.parseInt(connector.getPort());
-					} catch (Exception e) {
-						// ignore
-					}
-					String protocol = connector.getProtocol();
-					if (protocol != null && protocol.length() > 0) {
-						name = protocol;
-						protocol2 = protocol; 
-					}
-					if ("HTTP".equals(protocol))
-						contentTypes = new String[] { "web", "webservices" };
-					String secure = connector.getSecure();
-					if (secure != null && secure.length() > 0) {
-						name = "SSL";
-						protocol2 = "SSL";
-					} else
-						advanced = false;
-					ports.add(new ServerPort(i +"/" + j, name, port, protocol2, contentTypes, advanced));
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error getting server ports", e);
-		}
-		return ports;
-	}
-	
-	/**
-	 * Return a list of the web modules in this server.
-	 * @return java.util.List
-	 */
-	public List getWebModules() {
-		List list = new ArrayList();
-	
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					int size2 = host.getContextCount();
-					for (int j = 0; j < size2; j++) {
-						Context context = host.getContext(j);
-						String reload = context.getReloadable();
-						if (reload == null)
-							reload = "false";
-						WebModule module = new WebModule(context.getPath(), 
-							context.getDocBase(), context.getSource(),
-							reload.equalsIgnoreCase("true") ? true : false);
-						list.add(module);
-					}
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error getting project refs", e);
-		}
-		return list;
-	}
-	
-	/**
-	 * @see TomcatConfiguration#load(IPath, IProgressMonitor)
-	 */
-	public void load(IPath path, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.loadingTask, 5);
-			
-			// check for catalina.policy to verify that this is a v5.5 config
-			InputStream in = new FileInputStream(path.append("catalina.policy").toFile());
-			in.read();
-			in.close();
-			monitor.worked(1);
-
-			serverFactory = new Factory();
-			serverFactory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
-			server = (Server) serverFactory.loadDocument(new FileInputStream(path.append("server.xml").toFile()));
-			monitor.worked(1);
-
-			webAppDocument = new WebAppDocument(path.append("web.xml"));
-			monitor.worked(1);
-			
-			tomcatUsersDocument = XMLUtil.getDocumentBuilder().parse(new InputSource(new FileInputStream(path.append("tomcat-users.xml").toFile())));
-			monitor.worked(1);
-			
-			// load policy file
-			BufferedReader br = null;
-			try {
-				br = new BufferedReader(new InputStreamReader(new FileInputStream(path.append("catalina.policy").toFile())));
-				String temp = br.readLine();
-				policyFile = "";
-				while (temp != null) {
-					policyFile += temp + "\n";
-					temp = br.readLine();
-				}
-			} catch (Exception e) {
-				Trace.trace(Trace.WARNING, "Could not load policy file", e);
-			} finally {
-				if (br != null)
-					br.close();
-			}
-			monitor.worked(1);
-			
-			if (monitor.isCanceled())
-				return;
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not load Tomcat v5.5 configuration from " + path.toOSString() + ": " + e.getMessage());
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, path.toOSString()), e));
-		}
-	}
-
-	public void importFromPath(IPath path, boolean isTestEnv, IProgressMonitor monitor) throws CoreException {
-		load(path, monitor);
-		
-		// for test environment, remove existing contexts since a separate
-		// catalina.base will be used
-		if (isTestEnv) {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Host host = service.getEngine().getHost();
-					int size2 = host.getContextCount();
-					for (int j = 0; j < size2; j++) {
-						host.removeElement("Context", 0);
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * @see TomcatConfiguration#load(IFolder, IProgressMonitor)
-	 */
-	public void load(IFolder folder, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.loadingTask, 800);
-	
-			// check for catalina.policy to verify that this is a v4.0 config
-			IFile file = folder.getFile("catalina.policy");
-			if (!file.exists())
-				throw new CoreException(new Status(IStatus.WARNING, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, folder.getFullPath().toOSString()), null));
-	
-			// load server.xml
-			file = folder.getFile("server.xml");
-			InputStream in = file.getContents();
-			serverFactory = new Factory();
-			serverFactory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
-			server = (Server) serverFactory.loadDocument(in);
-			monitor.worked(200);
-	
-			// load web.xml
-			file = folder.getFile("web.xml");
-			webAppDocument = new WebAppDocument(file);
-			monitor.worked(200);
-	
-			// load tomcat-users.xml
-			file = folder.getFile("tomcat-users.xml");
-			in = file.getContents();
-			
-			tomcatUsersDocument = XMLUtil.getDocumentBuilder().parse(new InputSource(in));
-			monitor.worked(200);
-		
-			// load catalina.policy
-			file = folder.getFile("catalina.policy");
-			in = file.getContents();
-			BufferedReader br = null;
-			try {
-				br = new BufferedReader(new InputStreamReader(in));
-				String temp = br.readLine();
-				policyFile = "";
-				while (temp != null) {
-					policyFile += temp + "\n";
-					temp = br.readLine();
-				}
-			} catch (Exception e) {
-				Trace.trace(Trace.WARNING, "Could not load policy file", e);
-			} finally {
-				if (br != null)
-					br.close();
-			}
-			monitor.worked(200);
-	
-			if (monitor.isCanceled())
-				throw new Exception("Cancelled");
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not reload Tomcat v5.5 configuration from: " + folder.getFullPath() + ": " + e.getMessage());
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, folder.getFullPath().toOSString()), e));
-		}
-	}
-
-	/**
-	 * Save to the given directory.
-	 * @param path a path
-	 * @param forceDirty boolean
-	 * @param monitor a progress monitor
-	 * @exception CoreException
-	 */
-	protected void save(IPath path, boolean forceDirty, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.savingTask, 3);
-	
-			// make sure directory exists
-			if (!path.toFile().exists()) {
-				forceDirty = true;
-				path.toFile().mkdir();
-			}
-			monitor.worked(1);
-	
-			// save files
-			if (forceDirty || isServerDirty)
-				serverFactory.save(path.append("server.xml").toOSString());
-			monitor.worked(1);
-	
-			//if (forceDirty || isWebAppDirty)
-			//	webAppFactory.save(dirPath + "web.xml");
-			//webAppDocument.save(path.toOSString(), forceDirty || isPolicyDirty);
-			webAppDocument.save(path.append("web.xml").toOSString(), forceDirty);
-			monitor.worked(1);
-	
-			if (forceDirty)
-				XMLUtil.save(path.append("tomcat-users.xml").toOSString(), tomcatUsersDocument);
-			monitor.worked(1);
-	
-			if (forceDirty || isPolicyDirty) {
-				BufferedWriter bw = new BufferedWriter(new FileWriter(path.append("catalina.policy").toFile()));
-				bw.write(policyFile);
-				bw.close();
-			}
-			monitor.worked(1);
-			isServerDirty = false;
-			isPolicyDirty = false;
-	
-			if (monitor.isCanceled())
-				return;
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save Tomcat v5.5 configuration to " + path, e);
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotSaveConfiguration, new String[] {e.getLocalizedMessage()}), e));
-		}
-	}
-	
-	public void save(IPath path, IProgressMonitor monitor) throws CoreException {
-		save(path, true, monitor);
-	}
-
-	/**
-	 * Save the information held by this object to the given directory.
-	 *
-	 * @param folder a folder
-	 * @param monitor a progress monitor
-	 * @throws CoreException
-	 */
-	public void save(IFolder folder, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.savingTask, 900);
-	
-			// save server.xml
-			byte[] data = serverFactory.getContents();
-			InputStream in = new ByteArrayInputStream(data);
-			IFile file = folder.getFile("server.xml");
-			if (file.exists()) {
-				if (isServerDirty)
-					file.setContents(in, true, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-				else
-					monitor.worked(200);
-			} else
-				file.create(in, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			// save web.xml
-			webAppDocument.save(folder.getFile("web.xml"), ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			// save tomcat-users.xml
-			data = XMLUtil.getContents(tomcatUsersDocument);
-			in = new ByteArrayInputStream(data);
-			file = folder.getFile("tomcat-users.xml");
-			if (file.exists())
-				monitor.worked(200);
-				//file.setContents(in, true, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-			else
-				file.create(in, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			// save catalina.policy
-			in = new ByteArrayInputStream(policyFile.getBytes());
-			file = folder.getFile("catalina.policy");
-			if (file.exists())
-				monitor.worked(200);
-				//file.setContents(in, true, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-			else
-				file.create(in, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-	
-			if (monitor.isCanceled())
-				return;
-			monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save Tomcat v5.5 configuration to " + folder.toString(), e);
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotSaveConfiguration, new String[] {e.getLocalizedMessage()}), e));
-		}
-	}
-
-	protected static boolean hasMDBListener(Server server) {
-		if (server == null)
-			return false;
-		
-		int count = server.getListenerCount();
-		if (count == 0)
-			return false;
-			
-		for (int i = 0; i < count; i++) {
-			Listener listener = server.getListener(i);
-			if (listener != null && listener.getClassName() != null && listener.getClassName().indexOf("mbean") >= 0)
-				return true;
-		}
-		return false;
-	}
-	
-	/**
-	 * @see ITomcatConfigurationWorkingCopy#addMimeMapping(int, IMimeMapping)
-	 */
-	public void addMimeMapping(int index, IMimeMapping map) {
-		webAppDocument.addMimeMapping(index, map);
-		firePropertyChangeEvent(ADD_MAPPING_PROPERTY, new Integer(index), map);
-	}
-
-	/**
-	 * @see ITomcatConfigurationWorkingCopy#addWebModule(int, ITomcatWebModule)
-	 */
-	public void addWebModule(int index, ITomcatWebModule module) {
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					Context context = (Context) host.createElement(index, "Context");
-					context.setDocBase(module.getDocumentBase());
-					context.setPath(module.getPath());
-					context.setReloadable(module.isReloadable() ? "true" : "false");
-					if (module.getMemento() != null && module.getMemento().length() > 0)
-						context.setSource(module.getMemento());
-					isServerDirty = true;
-					firePropertyChangeEvent(ADD_WEB_MODULE_PROPERTY, null, module);
-					return;
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error adding web module " + module.getPath(), e);
-		}
-	}
-
-	/**
-	 * Localize the web projects in this configuration.
-	 *
-	 * @param path a path
-	 * @param server2 a server type
-	 * @param runtime a runtime
-	 * @param monitor a progress monitor
-	 */
-	public void localizeConfiguration(IPath path, TomcatServer server2, TomcatRuntime runtime, IProgressMonitor monitor) {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.beginTask(Messages.updatingConfigurationTask, 100);
-			
-			Tomcat55Configuration config = new Tomcat55Configuration(null);
-			config.load(path, ProgressUtil.getSubMonitorFor(monitor, 40));
-	
-			if (monitor.isCanceled())
-				return;
-	
-			if (!server2.isTestEnvironment()) {
-				//IServerConfigurationWorkingCopy scwc = config.getServerConfiguration().createWorkingCopy();
-				//Tomcat55Configuration cfg = (Tomcat55Configuration) scwc.getAdapter(Tomcat55Configuration.class);
-				config.localizeWebModules();
-			}
-			monitor.worked(20);
-	
-			if (monitor.isCanceled())
-				return;
-	
-			config.save(path, false, ProgressUtil.getSubMonitorFor(monitor, 40));
-	
-			if (!monitor.isCanceled())
-				monitor.done();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error localizing configuration", e);
-		}
-	}
-	
-	/**
-	 * Go through all of the web modules and make the document
-	 * base "local" to the configuration.
-	 */
-	protected void localizeWebModules() {
-		List modules = getWebModules();
-
-		int size = modules.size();
-		for (int i = 0; i < size; i++) {
-			WebModule module = (WebModule) modules.get(i);
-			String memento = module.getMemento();
-			if (memento != null && memento.length() > 0) {
-				// update document base to a relative ref
-				String docBase = getPathPrefix() + module.getPath();
-				if (docBase.startsWith("/") || docBase.startsWith("\\"))
-					docBase = docBase.substring(1);
-				modifyWebModule(i, docBase, module.getPath(), module.isReloadable());
-			}
-		}
-	}
-
-	/**
-	 * Change the extension of a mime mapping.
-	 * 
-	 * @param index
-	 * @param map
-	 */
-	public void modifyMimeMapping(int index, IMimeMapping map) {
-		webAppDocument.modifyMimeMapping(index, map);
-		firePropertyChangeEvent(MODIFY_MAPPING_PROPERTY, new Integer(index), map);
-	}
-	
-	/**
-	 * Modify the port with the given id.
-	 *
-	 * @param id java.lang.String
-	 * @param port int
-	 */
-	public void modifyServerPort(String id, int port) {
-		try {
-			if ("server".equals(id)) {
-				server.setPort(port + "");
-				isServerDirty = true;
-				firePropertyChangeEvent(MODIFY_PORT_PROPERTY, id, new Integer(port));
-				return;
-			}
-	
-			int i = id.indexOf("/");
-			int servNum = Integer.parseInt(id.substring(0, i));
-			int connNum = Integer.parseInt(id.substring(i + 1));
-			
-			Service service = server.getService(servNum);
-			Connector connector = service.getConnector(connNum);
-			connector.setPort(port + "");
-			isServerDirty = true;
-			firePropertyChangeEvent(MODIFY_PORT_PROPERTY, id, new Integer(port));
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error modifying server port " + id, e);
-		}
-	}
-	/**
-	 * Change a web module.
-	 * @param index int
-	 * @param docBase java.lang.String
-	 * @param path java.lang.String
-	 * @param reloadable boolean
-	 */
-	public void modifyWebModule(int index, String docBase, String path, boolean reloadable) {
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					Context context = host.getContext(index);
-					context.setPath(path);
-					context.setDocBase(docBase);
-					context.setReloadable(reloadable ? "true" : "false");
-					isServerDirty = true;
-					WebModule module = new WebModule(path, docBase, null, reloadable);
-					firePropertyChangeEvent(MODIFY_WEB_MODULE_PROPERTY, new Integer(index), module);
-					return;
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error modifying web module " + index, e);
-		}
-	}
-
-	/**
-	 * Removes a mime mapping.
-	 * @param index int
-	 */
-	public void removeMimeMapping(int index) {
-		webAppDocument.removeMimeMapping(index);
-		firePropertyChangeEvent(REMOVE_MAPPING_PROPERTY, null, new Integer(index));
-	}
-
-	/**
-	 * Removes a web module.
-	 * @param index int
-	 */
-	public void removeWebModule(int index) {
-		try {
-			int size = server.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = server.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					host.removeElement("Context", index);
-					isServerDirty = true;
-					firePropertyChangeEvent(REMOVE_WEB_MODULE_PROPERTY, null, new Integer(index));
-					return;
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error removing module ref " + index, e);
-		}
-	}
-
-	protected IStatus backupAndPublish(IPath confDir, boolean doBackup, IProgressMonitor monitor) {
-		MultiStatus ms = new MultiStatus(TomcatPlugin.PLUGIN_ID, 0, Messages.publishConfigurationTask, null);
-		Trace.trace(Trace.FINER, "Backup and publish");
-		monitor = ProgressUtil.getMonitorFor(monitor);
-
-		backupAndPublish(confDir, doBackup, ms, monitor, 300);
-		// TODO Refactor success detection once Bug 81060 is addressed
-		// This approach avoids refactoring TomcatConfiguration.backupFolder()
-		// and backupPath() for now.
-		if (ms.isOK() && ms.getChildren().length > 0)
-			publishContextConfig(confDir, ms, monitor);
-
-		monitor.done();
-		return ms;
-	}
-	
-	protected void publishContextConfig(IPath confDir, MultiStatus ms, IProgressMonitor monitor) {
-		Trace.trace(Trace.FINER, "Apply context configurations");
-		try {
-			confDir = confDir.append("conf");
-			
-			monitor.subTask(Messages.publishContextConfigTask);
-			Factory factory = new Factory();
-			factory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
-			Server publishedServer = (Server) factory.loadDocument(new FileInputStream(confDir.append("server.xml").toFile()));
-			monitor.worked(100);
-			
-			boolean modified = false;
-
-			int size = publishedServer.getServiceCount();
-			for (int i = 0; i < size; i++) {
-				Service service = publishedServer.getService(i);
-				if (service.getName().equalsIgnoreCase(DEFAULT_SERVICE)) {
-					Engine engine = service.getEngine();
-					Host host = engine.getHost();
-					int size2 = host.getContextCount();
-					for (int j = 0; j < size2; j++) {
-						Context context = host.getContext(j);
-						monitor.subTask(NLS.bind(Messages.checkingContextTask,
-								new String[] {context.getPath()}));
-						if (addContextConfig(context)) {
-							modified = true;
-						}
-					}
-				}
-			}
-			monitor.worked(100);
-			if (modified) {
-				monitor.subTask(Messages.savingContextConfigTask);
-				factory.save(confDir.append("server.xml").toOSString());
-			}
-			monitor.worked(100);
-			
-			Trace.trace(Trace.FINER, "Server.xml updated with context.xml configurations");
-			ms.add(new Status(IStatus.OK, TomcatPlugin.PLUGIN_ID, 0, Messages.serverPostProcessingComplete, null));
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not apply context configurations published Tomcat v5.0 configuration from " + confDir.toOSString() + ": " + e.getMessage());
-			IStatus s = new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorPublishConfiguration, new String[] {e.getLocalizedMessage()}), e);
-			ms.add(s);
-		}
-	}
-	
-	/**
-	 * If the specified Context is linked to a project, try to
-	 * update any configuration found a META-INF/context.xml found
-	 * relative to the specified docBase.
-	 * @param context Context object to receive context.xml contents.
-	 * @return Returns true if context is modified.
-	 */
-	protected boolean addContextConfig(Context context) {
-		boolean modified = false;
-		String source = context.getSource();
-		if (source != null && source.length() > 0 )
-		{
-			String docBase = context.getDocBase();
-			Context contextConfig = loadContextConfig(docBase);
-			if (null != contextConfig) {
-				if (context.hasChildNodes())
-					context.removeChildren();
-				contextConfig.copyChildrenTo(context);
-				modified = true;
-			}
-		}
-		return modified;
-	}
-	
-	/**
-	 * Tries to read a META-INF/context.xml file relative to the
-	 * specified docBase.  If found, it creates a Context object
-	 * containing the contexts of that file.
-	 * @param docBase
-	 * @return Context element created from context.xml, or null if not found.
-	 */
-	protected Context loadContextConfig(String docBase) {
-		File contexXML = new File(docBase + File.separator + "META-INF" + File.separator + "context.xml");
-		if (contexXML.exists()) {
-			try {
-				InputStream is = new FileInputStream(contexXML);
-				Factory ctxFactory = new Factory();
-				ctxFactory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
-				Context ctx = (Context)ctxFactory.loadDocument(is);
-				is.close();
-				return ctx;
-			} catch (FileNotFoundException e) {
-				// Ignore, should never occur
-			} catch (IOException e) {
-				Trace.trace(Trace.SEVERE, "Error reading web module's context.xml file: " + docBase, e);
-			}
-		}
-		return null;
- 	}
-
-	protected IStatus prepareRuntimeDirectory(IPath confDir) {
-		Trace.trace(Trace.FINER, "Preparing runtime directory");
-		// Prepare a catalina.base directory structure
-		File temp = confDir.append("conf").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-		temp = confDir.append("logs").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-		temp = confDir.append("temp").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-		temp = confDir.append("webapps").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-		temp = confDir.append("work").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-
-		return new Status(IStatus.OK, TomcatPlugin.PLUGIN_ID, 0, Messages.runtimeDirPrepared, null);		
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat55Handler.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat55Handler.java
deleted file mode 100644
index b9fef29..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Tomcat55Handler.java
+++ /dev/null
@@ -1,43 +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.tomcat.core.internal;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jst.server.core.IWebModule;
-/**
- * Tomcat 55 handler.
- */
-public class Tomcat55Handler extends Tomcat50Handler {
-	/**
-	 * @see ITomcatVersionHandler#verifyInstallPath(IPath)
-	 */
-	public boolean verifyInstallPath(IPath installPath) {
-		if (installPath == null)
-			return false;
-
-		String s = installPath.lastSegment();
-		if (s != null && s.startsWith("jakarta-tomcat-") && !s.startsWith("jakarta-tomcat-5.5"))
-			return false;
-		return TomcatPlugin.verifyInstallPath(installPath, TomcatPlugin.TOMCAT_55);
-	}
-	
-	/**
-	 * @see ITomcatVersionHandler#canAddModule(IWebModule)
-	 */
-	public IStatus canAddModule(IWebModule module) {
-		if ("1.2".equals(module.getJ2EESpecificationVersion()) || "1.3".equals(module.getJ2EESpecificationVersion()) || "1.4".equals(module.getJ2EESpecificationVersion()))
-			return new Status(IStatus.OK, TomcatPlugin.PLUGIN_ID, 0, Messages.canAddModule, null);
-		
-		return new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, Messages.errorSpec55, null);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatConfiguration.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatConfiguration.java
deleted file mode 100644
index 37b52c3..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatConfiguration.java
+++ /dev/null
@@ -1,332 +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.tomcat.core.internal;
-
-import java.beans.PropertyChangeEvent;
-import java.beans.PropertyChangeListener;
-import java.io.File;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.*;
-import org.eclipse.jst.server.core.IWebModule;
-import org.eclipse.osgi.util.NLS;
-
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.ServerPort;
-/**
- * Generic Tomcat server configuration.
- */
-public abstract class TomcatConfiguration implements ITomcatConfiguration, ITomcatConfigurationWorkingCopy {
-	public static final String NAME_PROPERTY = "name";
-	public static final String PORT_PROPERTY = "port";
-	public static final String MODIFY_PORT_PROPERTY = "modifyPort";
-	public static final String ADD_MAPPING_PROPERTY = "addMapping";
-	public static final String REMOVE_MAPPING_PROPERTY = "removeMapping";
-	public static final String MODIFY_MAPPING_PROPERTY = "modifyMapping";
-	
-	public static final String MODIFY_WEB_MODULE_PROPERTY = "modifyWebModule";
-	public static final String ADD_WEB_MODULE_PROPERTY = "addWebModule";
-	public static final String REMOVE_WEB_MODULE_PROPERTY = "removeWebModule";
-	
-	protected IFolder configPath;
-
-	// property change listeners
-	private transient List propertyListeners;
-
-	/**
-	 * TomcatConfiguration constructor.
-	 * 
-	 * @param path a path
-	 */
-	public TomcatConfiguration(IFolder path) {
-		super();
-		this.configPath = path;
-		/*try {
-			load(configPath, new NullProgressMonitor());
-		} catch (Exception e) {
-			// ignore
-		}*/
-	}
-	
-	protected IFolder getFolder() {
-		return configPath;
-	}
-
-	/**
-	 * Copies all files from the given directory in the workbench
-	 * to the given location.  Can be overridden by version specific
-	 * class to modify or enhance what publish does.
-	 * 
-	 * @return org.eclipse.core.runtime.IStatus
-	 */
-	protected IStatus backupAndPublish(IPath confDir, boolean doBackup, IProgressMonitor monitor) {
-		MultiStatus ms = new MultiStatus(TomcatPlugin.PLUGIN_ID, 0, Messages.publishConfigurationTask, null);
-		Trace.trace(Trace.FINER, "Backup and publish");
-		monitor = ProgressUtil.getMonitorFor(monitor);
-
-		backupAndPublish(confDir, doBackup, ms, monitor, 0);
-
-		monitor.done();
-		return ms;
-	}
-	
-	protected void backupAndPublish(IPath confDir, boolean doBackup, MultiStatus ms, IProgressMonitor monitor, int additionalWork) {
-		try {
-			IPath backup = null;
-			if (doBackup) {
-				// create backup directory
-				backup = confDir.append("backup");
-				if (!backup.toFile().exists())
-					backup.toFile().mkdir();
-			}
-			
-			confDir = confDir.append("conf");
-	
-			/*IServerConfiguration config = getServerConfiguration();
-			IFolder folder = config.getConfigurationDataFolder();
-			if (folder != null)
-				backupFolder(folder, confDir, backup, ms, monitor);
-			else {
-				IPath path = config.getConfigurationDataPath();
-				backupPath(configPath, confDir, backup, ms, monitor);*/
-				backupFolder(getFolder(), confDir, backup, ms, monitor, additionalWork);
-			//}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "backupAndPublish() error", e);
-			IStatus s = new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorPublishConfiguration, new String[] {e.getLocalizedMessage()}), e);
-			ms.add(s);
-		}
-	}
-	
-	protected void backupFolder(IFolder folder, IPath confDir, IPath backup, MultiStatus ms, IProgressMonitor monitor, int additionalWork) throws CoreException {
-		IResource[] children = folder.members();
-		if (children == null)
-			return;
-		
-		int size = children.length;
-		monitor.beginTask(Messages.publishConfigurationTask, size * 100 + additionalWork);
-		for (int i = 0; i < size; i++) {
-			if (children[i] instanceof IFile) {
-				try {
-					IFile file = (IFile) children[i];
-					String name = file.getName();
-					monitor.subTask(NLS.bind(Messages.publisherPublishTask, new String[] {name}));
-					Trace.trace(Trace.FINEST, "Publishing " + name);
-
-					// backup and copy file
-					boolean copy = true;
-					if (backup != null && !(backup.append(name).toFile().exists())) {
-						IStatus status = FileUtil.copyFile(confDir.append(name).toOSString(), backup + File.separator + name);
-						ms.add(status);
-						if (!status.isOK())
-							copy = false;
-					}
-					
-					if (copy) {
-						InputStream in = file.getContents();
-						ms.add(FileUtil.copyFile(in, confDir.append(name).toOSString()));
-					}
-				} catch (Exception e) {
-					Trace.trace(Trace.SEVERE, "backupAndPublish() error", e);
-					ms.add(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorPublishConfiguration, new String[] {e.getLocalizedMessage()}), e));
-				}
-			}
-			monitor.worked(100);
-		}
-	}
-	
-	protected void backupPath(IPath path, IPath confDir, IPath backup, MultiStatus ms, IProgressMonitor monitor) {
-		File[] files = path.toFile().listFiles();
-		if (files == null)
-			return;
-			
-		int size = files.length;
-		monitor.beginTask(Messages.publishConfigurationTask, size * 100);
-		for (int i = 0; i < size; i++) {
-			try {
-				File file = files[i];
-				String name = file.getName();
-				monitor.subTask(NLS.bind(Messages.publisherPublishTask, new String[] {name}));
-				Trace.trace(Trace.FINEST, "Publishing " + name);
-
-				// backup and copy file
-				boolean copy = true;
-				if (backup != null && !(backup.append(name).toFile().exists())) {
-					IStatus status = FileUtil.copyFile(confDir.append(name).toOSString(), backup + File.separator + name);
-					ms.add(status);
-					if (!status.isOK())
-						copy = false;
-				}
-				
-				if (copy)
-					ms.add(FileUtil.copyFile(file.getAbsolutePath(), confDir.append(name).toOSString()));
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "backupAndPublish() error", e);
-				ms.add(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorPublishConfiguration, new String[] {e.getLocalizedMessage()}), e));
-			}
-			monitor.worked(100);
-		}
-	}
-	
-	protected IStatus cleanupServer(IPath confDir, IPath installDir, IProgressMonitor monitor) {
-		// Default implementation assumes nothing to clean
-		monitor = ProgressUtil.getMonitorFor(monitor);
-		monitor.done();
-		return Status.OK_STATUS;
-	}
-	
-	protected IStatus prepareRuntimeDirectory(IPath confDir) {
-		File temp = confDir.append("conf").toFile();
-		if (!temp.exists())
-			temp.mkdirs();
-
-		return new Status(IStatus.OK, TomcatPlugin.PLUGIN_ID, 0, "Runtime configuration directory prepared" /* TomcatPlugin.getResource("%canAddModule") */, null);		
-	}
-
-	/**
-	 * Returns the root of the docbase parameter.
-	 *
-	 * @return java.lang.String
-	 */
-	protected abstract String getDocBaseRoot();
-
-	/**
-	 * Returns the main server port.
-	 * @return ServerPort
-	 */
-	public abstract ServerPort getMainPort();
-
-	/**
-	 * Returns the prefix that is used in front of the
-	 * web module path property. (e.g. "webapps")
-	 *
-	 * @return java.lang.String
-	 */
-	public abstract String getPathPrefix();
-
-	/**
-	 * Returns the partial URL applicable to this module.
-	 * 
-	 * @param webModule a web module
-	 * @return the partial URL
-	 */
-	protected String getWebModuleURL(IModule webModule) {
-		WebModule module = getWebModule(webModule);
-		if (module != null)
-			return module.getPath();
-		
-		IWebModule webModule2 = (IWebModule) webModule.getAdapter(IWebModule.class);
-		return "/" + webModule2.getContextRoot();
-	}
-
-	/**
-	 * Returns the given module from the config.
-	 *
-	 * @param module a web module
-	 * @return a web module
-	 */
-	protected WebModule getWebModule(IModule module) {
-		if (module == null)
-			return null;
-	
-		String memento = module.getId();
-	
-		List modules = getWebModules();
-		int size = modules.size();
-		for (int i = 0; i < size; i++) {
-			WebModule webModule = (WebModule) modules.get(i);
-			if (memento.equals(webModule.getMemento())) {
-				return webModule;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Return the docBase of the ROOT web module.
-	 *
-	 * @return java.lang.String
-	 */
-	protected abstract String getROOTModuleDocBase();
-
-	protected abstract void save(IFolder folder, IProgressMonitor monitor) throws CoreException;
-	
-	protected void firePropertyChangeEvent(String propertyName, Object oldValue, Object newValue) {
-		if (propertyListeners == null)
-			return;
-	
-		PropertyChangeEvent event = new PropertyChangeEvent(this, propertyName, oldValue, newValue);
-		try {
-			Iterator iterator = propertyListeners.iterator();
-			while (iterator.hasNext()) {
-				try {
-					PropertyChangeListener listener = (PropertyChangeListener) iterator.next();
-					listener.propertyChange(event);
-				} catch (Exception e) {
-					Trace.trace(Trace.SEVERE, "Error firing property change event", e);
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error in property event", e);
-		}
-	}
-
-	/**
-	 * Adds a property change listener to this server.
-	 *
-	 * @param listener java.beans.PropertyChangeListener
-	 */
-	public void addPropertyChangeListener(PropertyChangeListener listener) {
-		if (propertyListeners == null)
-			propertyListeners = new ArrayList();
-		propertyListeners.add(listener);
-	}
-
-	/**
-	 * Removes a property change listener from this server.
-	 *
-	 * @param listener java.beans.PropertyChangeListener
-	 */
-	public void removePropertyChangeListener(PropertyChangeListener listener) {
-		if (propertyListeners != null)
-			propertyListeners.remove(listener);
-	}
-
-	public void importFromPath(IPath path, boolean isTestEnv, IProgressMonitor monitor) throws CoreException {
-		load(path, monitor);
-	}
-
-	/*public void importFromRuntime(IRuntime runtime, IProgressMonitor monitor) throws CoreException {
-		load(runtime.getLocation().append("conf"), monitor);
-	}*/
-	
-	protected abstract void load(IPath path, IProgressMonitor monitor) throws CoreException;
-	
-	protected abstract void load(IFolder folder, IProgressMonitor monitor) throws CoreException;
-	
-	public abstract void addWebModule(int index, ITomcatWebModule module);
-	
-	public abstract void removeWebModule(int index);
-
-	/**
-	 * Return a string representation of this object.
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		return "TomcatConfiguration[" + this + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatLaunchConfigurationDelegate.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatLaunchConfigurationDelegate.java
deleted file mode 100644
index 43e26db..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatLaunchConfigurationDelegate.java
+++ /dev/null
@@ -1,81 +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.tomcat.core.internal;
-
-import java.io.File;
-import java.util.Map;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.jdt.launching.*;
-
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.ServerUtil;
-/**
- * 
- */
-public class TomcatLaunchConfigurationDelegate extends AbstractJavaLaunchConfigurationDelegate {
-
-	public void launch(ILaunchConfiguration configuration, String mode, ILaunch launch, IProgressMonitor monitor) throws CoreException {
-		IServer server = ServerUtil.getServer(configuration);
-		if (server == null) {
-			Trace.trace(Trace.FINEST, "Launch configuration could not find server");
-			// throw CoreException();
-			return;
-		}
-
-		TomcatServerBehaviour tomcatServer = (TomcatServerBehaviour) server.loadAdapter(TomcatServerBehaviour.class, null);
-		tomcatServer.setupLaunch(launch, mode, monitor);
-		
-		String mainTypeName = tomcatServer.getRuntimeClass();
-
-		IVMInstall vm = verifyVMInstall(configuration);
-
-		IVMRunner runner = vm.getVMRunner(mode);
-
-		File workingDir = verifyWorkingDirectory(configuration);
-		String workingDirName = null;
-		if (workingDir != null)
-			workingDirName = workingDir.getAbsolutePath();
-		
-		// Program & VM args
-		String pgmArgs = getProgramArguments(configuration);
-		String vmArgs = getVMArguments(configuration);
-
-		ExecutionArguments execArgs = new ExecutionArguments(vmArgs, pgmArgs);
-		
-		// VM-specific attributes
-		Map vmAttributesMap = getVMSpecificAttributesMap(configuration);
-		
-		// Classpath
-		String[] classpath = getClasspath(configuration);
-		
-		// Create VM config
-		VMRunnerConfiguration runConfig = new VMRunnerConfiguration(mainTypeName, classpath);
-		runConfig.setProgramArguments(execArgs.getProgramArgumentsArray());
-		runConfig.setVMArguments(execArgs.getVMArgumentsArray());
-		runConfig.setWorkingDirectory(workingDirName);
-		runConfig.setVMSpecificAttributesMap(vmAttributesMap);
-
-		// Bootpath
-		String[] bootpath = getBootpath(configuration);
-		if (bootpath != null && bootpath.length > 0)
-			runConfig.setBootClassPath(bootpath);
-		
-		setDefaultSourceLocator(launch, configuration);
-		
-		// Launch the configuration
-		runner.run(runConfig, launch, monitor);
-		tomcatServer.setProcess(launch.getProcesses()[0]);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatLaunchableAdapterDelegate.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatLaunchableAdapterDelegate.java
deleted file mode 100644
index 01764e1..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatLaunchableAdapterDelegate.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.tomcat.core.internal;
-
-import java.net.URL;
-
-import org.eclipse.jst.server.core.IWebModule;
-import org.eclipse.jst.server.core.Servlet;
-import org.eclipse.wst.server.core.IModuleArtifact;
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.model.*;
-import org.eclipse.wst.server.core.util.HttpLaunchable;
-import org.eclipse.wst.server.core.util.WebResource;
-/**
- * Launchable adapter delegate for Web resources in Tomcat.
- */
-public class TomcatLaunchableAdapterDelegate extends LaunchableAdapterDelegate {
-	/*
-	 * @see LaunchableAdapterDelegate#getLaunchable(IServer, IModuleArtifact)
-	 */
-	public Object getLaunchable(IServer server, IModuleArtifact moduleObject) {
-		Trace.trace(Trace.FINER, "TomcatLaunchableAdapter " + server + "-" + moduleObject);
-		if (server.getAdapter(TomcatServer.class) == null)
-			return null;
-		if (!(moduleObject instanceof Servlet) &&
-			!(moduleObject instanceof WebResource))
-			return null;
-		if (moduleObject.getModule().getAdapter(IWebModule.class) == null)
-			return null;
-
-		try {
-			URL url = ((IURLProvider) server.getAdapter(IURLProvider.class)).getModuleRootURL(moduleObject.getModule());
-			
-			Trace.trace(Trace.FINER, "root: " + url);
-
-			if (moduleObject instanceof Servlet) {
-				Servlet servlet = (Servlet) moduleObject;
-				if (servlet.getAlias() != null) {
-					String path = servlet.getAlias();
-					if (path.startsWith("/"))
-						path = path.substring(1);
-					url = new URL(url, path);
-				} else
-					url = new URL(url, "servlet/" + servlet.getServletClassName());
-			} else if (moduleObject instanceof WebResource) {
-				WebResource resource = (WebResource) moduleObject;
-				String path = resource.getPath().toString();
-				Trace.trace(Trace.FINER, "path: " + path);
-				if (path != null && path.startsWith("/") && path.length() > 0)
-					path = path.substring(1);
-				if (path != null && path.length() > 0)
-					url = new URL(url, path);
-			}
-			return new HttpLaunchable(url);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error getting URL for " + moduleObject, e);
-			return null;
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatPlugin.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatPlugin.java
deleted file mode 100644
index 26165a5..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatPlugin.java
+++ /dev/null
@@ -1,262 +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.tomcat.core.internal;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Properties;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.core.runtime.Status;
-/**
- * The Tomcat plugin.
- */
-public class TomcatPlugin extends Plugin {
-	protected static TomcatPlugin singleton;
-
-	public static final String PLUGIN_ID = "org.eclipse.jst.server.tomcat.core";
-	
-	public static final String TOMCAT_32 = "org.eclipse.jst.server.tomcat.32";
-	public static final String TOMCAT_40 = "org.eclipse.jst.server.tomcat.40";
-	public static final String TOMCAT_41 = "org.eclipse.jst.server.tomcat.41";
-	public static final String TOMCAT_50 = "org.eclipse.jst.server.tomcat.50";
-	public static final String TOMCAT_55 = "org.eclipse.jst.server.tomcat.55";
-	
-	protected static final String VERIFY_INSTALL_FILE = "verifyInstall.properties";
-	protected static String[] verify32;
-	protected static String[] verify40;
-	protected static String[] verify41;
-	protected static String[] verify50;
-	protected static String[] verify55;
-	
-	/**
-	 * TomcatPlugin constructor comment.
-	 */
-	public TomcatPlugin() {
-		super();
-		singleton = this;
-	}
-
-	/**
-	 * Returns the singleton instance of this plugin.
-	 * @return org.eclipse.jst.server.tomcat.internal.TomcatPlugin
-	 */
-	public static TomcatPlugin getInstance() {
-		return singleton;
-	}
-
-	/**
-	 * Return the install location preference.
-	 * 
-	 * @param id a runtime type id
-	 * @return the install location
-	 */
-	public static String getPreference(String id) {
-		return getInstance().getPluginPreferences().getString(id);
-	}
-	
-	/**
-	 * Set the install location preference.
-	 * 
-	 * @param id the runtimt type id
-	 * @param value the location
-	 */
-	public static void setPreference(String id, String value) {
-		getInstance().getPluginPreferences().setValue(id, value);
-		getInstance().savePluginPreferences();
-	}
-
-	/**
-	 * Convenience method for logging.
-	 *
-	 * @param status a status object
-	 */
-	public static void log(IStatus status) {
-		getInstance().getLog().log(status);
-	}
-
-	/**
-	 * Returns the Tomcat home directory.
-	 * @return java.lang.String
-	 */
-	protected static String getTomcatStateLocation() {
-		try {
-			return getInstance().getStateLocation().toOSString();
-		} catch (Exception e) {
-			return null;
-		}
-	}
-
-	public static ITomcatVersionHandler getTomcatVersionHandler(String id) {
-		if (id.indexOf("runtime") > 0)
-			id = id.substring(0, 30) + id.substring(38);
-		//id = id.substring(0, id.length() - 8);
-		if (TOMCAT_32.equals(id))
-			return new Tomcat32Handler();
-		else if (TOMCAT_40.equals(id))
-			return new Tomcat40Handler();
-		else if (TOMCAT_41.equals(id))
-			return new Tomcat41Handler();
-		else if (TOMCAT_50.equals(id))
-			return new Tomcat50Handler();
-		else if (TOMCAT_55.equals(id))
-			return new Tomcat55Handler();
-		else
-			return null;
-	}
-
-	/**
-	 * Loads the files to verify the Tomcat installation.
-	 */
-	public static void loadVerifyFiles() {
-		if (verify32 != null)
-			return;
-	
-		// backup (empty) values
-		verify32 = new String[0];
-		verify40 = new String[0];
-		verify41 = new String[0];
-		verify50 = new String[0];
-		verify55 = new String[0];
-		
-		try {
-			URL url = getInstance().getBundle().getEntry(VERIFY_INSTALL_FILE);
-			url = Platform.resolve(url);
-			Properties p = new Properties();
-			p.load(url.openStream());
-
-			String verify = p.getProperty("verify32install");
-			verify.replace('/', File.separatorChar);
-
-			StringTokenizer st = new StringTokenizer(verify, ",");
-			List list = new ArrayList();
-			while (st.hasMoreTokens())
-				list.add(st.nextToken());
-			Trace.trace(Trace.FINEST, "Verify32: " + list.toString());
-			verify32 = new String[list.size()];
-			list.toArray(verify32);
-
-			// v4.0
-			verify = p.getProperty("verify40install");
-			verify.replace('/', File.separatorChar);
-
-			st = new StringTokenizer(verify, ",");
-			list = new ArrayList();
-			while (st.hasMoreTokens())
-				list.add(st.nextToken());
-			Trace.trace(Trace.FINEST, "Verify40: " + list.toString());
-			verify40 = new String[list.size()];
-			list.toArray(verify40);
-			
-			// v4.1
-			verify = p.getProperty("verify41install");
-			verify.replace('/', File.separatorChar);
-
-			st = new StringTokenizer(verify, ",");
-			list = new ArrayList();
-			while (st.hasMoreTokens())
-				list.add(st.nextToken());
-			Trace.trace(Trace.FINEST, "Verify41: " + list.toString());
-			verify41 = new String[list.size()];
-			list.toArray(verify41);
-			
-			// v5.0
-			verify = p.getProperty("verify50install");
-			verify.replace('/', File.separatorChar);
-
-			st = new StringTokenizer(verify, ",");
-			list = new ArrayList();
-			while (st.hasMoreTokens())
-				list.add(st.nextToken());
-			Trace.trace(Trace.FINEST, "Verify50: " + list.toString());
-			verify50 = new String[list.size()];
-			list.toArray(verify50);
-
-			// v5.5
-			verify = p.getProperty("verify55install");
-			verify.replace('/', File.separatorChar);
-
-			st = new StringTokenizer(verify, ",");
-			list = new ArrayList();
-			while (st.hasMoreTokens())
-				list.add(st.nextToken());
-			Trace.trace(Trace.FINEST, "Verify55: " + list.toString());
-			verify55 = new String[list.size()];
-			list.toArray(verify55);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not load installation verification properties", e);
-		}
-	}
-
-	public static boolean verifyInstallPath(IPath installPath, String id) {
-		if (installPath == null)
-			return false;
-		
-		String dir = installPath.toOSString();
-		if (!dir.endsWith(File.separator))
-			dir += File.separator;
-
-		// look for the following files and directories
-		TomcatPlugin.loadVerifyFiles();
-		
-		String[] paths = null;
-		if (TOMCAT_32.equals(id))
-			paths = verify32;
-		else if (TOMCAT_40.equals(id))
-			paths = verify40;
-		else if (TOMCAT_41.equals(id))
-			paths = verify41;
-		else if (TOMCAT_50.equals(id))
-			paths = verify50;
-		else if (TOMCAT_55.equals(id))
-			paths = verify55;
-		else
-			return false;
-		
-		for (int i = 0; i < paths.length; i++) {
-			File temp = new File(dir + paths[i]);
-			if (!temp.exists())
-				return false;
-		}
-		return true;
-	}
-
-	/**
-	 * Return a <code>java.io.File</code> object that corresponds to the specified
-	 * <code>IPath</code> in the plugin directory.
-	 * 
-	 * @return a file
-	 */
-	protected static File getPlugin() {
-		try {
-			URL installURL = getInstance().getBundle().getEntry("/");
-			URL localURL = Platform.asLocalURL(installURL);
-			return new File(localURL.getFile());
-		} catch (IOException ioe) {
-			return null;
-		}
-	}
-
-	public static void log(String message) {
-		log(new Status(IStatus.ERROR, PLUGIN_ID, IStatus.ERROR, message, null));
-	}
-
-	public static void log(Throwable e) {
-		log(new Status(IStatus.ERROR, PLUGIN_ID, IStatus.ERROR, e.getMessage(), e));
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatRuntime.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatRuntime.java
deleted file mode 100644
index 4b97a9b..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatRuntime.java
+++ /dev/null
@@ -1,230 +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.tomcat.core.internal;
-
-import java.io.File;
-import java.text.MessageFormat;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.core.Launch;
-import org.eclipse.debug.core.model.IStreamsProxy;
-import org.eclipse.jdt.launching.*;
-
-import org.eclipse.wst.server.core.IRuntimeType;
-import org.eclipse.wst.server.core.model.RuntimeDelegate;
-/**
- * 
- */
-public class TomcatRuntime extends RuntimeDelegate implements ITomcatRuntime, ITomcatRuntimeWorkingCopy {
-	protected static final String PROP_VM_INSTALL_TYPE_ID = "vm-install-type-id";
-	protected static final String PROP_VM_INSTALL_ID = "vm-install-id";
-	
-	protected static Map sdkMap = new HashMap(2);
-
-	public TomcatRuntime() {
-		// do nothing
-	}
-
-	public ITomcatVersionHandler getVersionHandler() {
-		IRuntimeType type = getRuntime().getRuntimeType();
-		return TomcatPlugin.getTomcatVersionHandler(type.getId());
-	}
-
-	protected String getVMInstallTypeId() {
-		return getAttribute(PROP_VM_INSTALL_TYPE_ID, (String)null);
-	}
-
-	protected String getVMInstallId() {
-		return getAttribute(PROP_VM_INSTALL_ID, (String)null);
-	}
-	
-	public boolean isUsingDefaultJRE() {
-		return getVMInstallTypeId() == null;
-	}
-
-	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;
-	}
-
-	public List getRuntimeClasspath() {
-		return getVersionHandler().getRuntimeClasspath(getRuntime().getLocation());
-	}
-
-	/**
-	 * Verifies the Tomcat installation directory. If it is
-	 * correct, true is returned. Otherwise, the user is notified
-	 * and false is returned.
-	 * @return boolean
-	 */
-	public boolean verifyLocation() {
-		return getVersionHandler().verifyInstallPath(getRuntime().getLocation());
-	}
-	
-	/*
-	 * Validate the runtime
-	 */
-	public IStatus validate() {
-		IStatus status = super.validate();
-		if (!status.isOK())
-			return status;
-	
-		if (!verifyLocation())
-			return new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, Messages.errorInstallDir, null);
-		// don't accept trailing space since that can cause startup problems
-		if (getRuntime().getLocation().hasTrailingSeparator())
-			return new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, Messages.errorInstallDirTrailingSlash, null);
-		if (getVMInstall() == null)
-			return new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, Messages.errorJRE, null);
-
-		// check for tools.jar (contains the javac compiler on Windows & Linux) to see whether
-		// Tomcat will be able to compile JSPs.
-		boolean found = false;
-		File file = getVMInstall().getInstallLocation();
-		if (file != null) {
-			File toolsJar = new File(file, "lib" + File.separator + "tools.jar");
-			if (toolsJar.exists())
-				found = true;
-		}
-		
-		// on Mac, tools.jar is merged into classes.zip. if tools.jar wasn't found,
-		// try loading the javac class by running a check inside the VM
-		if (!found) {
-			String os = Platform.getOS();
-			if (os != null && os.toLowerCase().indexOf("mac") >= 0)
-				found = checkForCompiler();
-		}
-		
-		if (!found)
-			return new Status(IStatus.WARNING, TomcatPlugin.PLUGIN_ID, 0, Messages.warningJRE, null);
-		
-		return new Status(IStatus.OK, TomcatPlugin.PLUGIN_ID, 0, "", null);
-	}
-
-	public void setDefaults() {
-		IVMInstall vmInstall = JavaRuntime.getDefaultVMInstall();
-		setVMInstall(vmInstall.getVMInstallType().getId(), vmInstall.getId());
-		
-		IRuntimeType type = getRuntimeWorkingCopy().getRuntimeType();
-		getRuntimeWorkingCopy().setLocation(new Path(TomcatPlugin.getPreference("location" + type.getId())));
-	}
-
-	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);
-	}
-	
-	/**
-	 * Checks for the existance of the Java compiler in the given java
-	 * executable. A main program is run (<code>org.eclipse.jst.tomcat.core.
-	 * internal.ClassDetector</code>), that dumps a true or false value
-	 * depending on whether the compiler is found. This output is then
-	 * parsed and cached for future reference.
-	 * 
-	 * @return true if the compiler was found
-	 */	
-	protected boolean checkForCompiler() {
-		// first try the cache
-		File javaHome = getVMInstall().getInstallLocation();
-		try {
-			Boolean b = (Boolean) sdkMap.get(javaHome);
-			return b.booleanValue();
-		} catch (Exception e) {
-			// ignore
-		}
-
-		// locate tomcatcore.jar - it contains the class detector main program
-		File file = TomcatPlugin.getPlugin();
-		if (file != null && file.exists()) {
-			IVMRunner vmRunner = getVMInstall().getVMRunner(ILaunchManager.RUN_MODE);
-			VMRunnerConfiguration config = new VMRunnerConfiguration("org.eclipse.jst.server.tomcat.core.internal.ClassDetector", new String[] { file.getAbsolutePath() });
-			config.setProgramArguments(new String[] { "com.sun.tools.javac.Main" });
-			ILaunch launch = new Launch(null, ILaunchManager.RUN_MODE, null);
-			try {
-				vmRunner.run(config, launch, null);
-				for (int i = 0; i < 200; i++) {
-					// wait no more than 10 seconds (200 * 50 mils)
-					if (launch.isTerminated()) {
-						break;
-					}
-					try {
-						Thread.sleep(50);
-					} catch (InterruptedException e) {
-						// ignore
-					}
-				}
-				IStreamsProxy streamsProxy = launch.getProcesses()[0].getStreamsProxy();
-				String text = null;
-				if (streamsProxy != null) {
-					text = streamsProxy.getOutputStreamMonitor().getContents();
-				
-					if (text != null && text.length() > 0) {
-						boolean found = false;
-						if ("true".equals(text))
-							found = true;
-						
-						sdkMap.put(javaHome, new Boolean(found));
-						return found;
-					}
-				}
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "Error checking for JDK", e);
-			} finally {
-				if (!launch.isTerminated()) {
-					try {
-						launch.terminate();
-					} catch (Exception ex) {
-						// ignore
-					}
-				}
-			}
-		}
-		
-		// log error that we were unable to check for the compiler
-		TomcatPlugin.log(MessageFormat.format("Failed compiler check for {0}", new String[] { javaHome.getAbsolutePath() }));
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatRuntimeLocator.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatRuntimeLocator.java
deleted file mode 100644
index 9094bff..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatRuntimeLocator.java
+++ /dev/null
@@ -1,117 +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.tomcat.core.internal;
-
-import java.io.File;
-import java.io.FileFilter;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.jdt.launching.JavaRuntime;
-
-import org.eclipse.wst.server.core.IRuntimeType;
-import org.eclipse.wst.server.core.IRuntimeWorkingCopy;
-import org.eclipse.wst.server.core.ServerCore;
-import org.eclipse.wst.server.core.model.RuntimeLocatorDelegate;
-/**
- * 
- */
-public class TomcatRuntimeLocator extends RuntimeLocatorDelegate {
-	protected static final String[] runtimeTypes = new String[] {
-		"org.eclipse.jst.server.tomcat.runtime.32",
-		"org.eclipse.jst.server.tomcat.runtime.40",
-		"org.eclipse.jst.server.tomcat.runtime.41",
-		"org.eclipse.jst.server.tomcat.runtime.50",
-		"org.eclipse.jst.server.tomcat.runtime.55"};
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.model.IRuntimeFactoryDelegate#getKnownRuntimes()
-	 */
-	public void searchForRuntimes(IPath path, IRuntimeSearchListener listener, IProgressMonitor monitor) {
-		searchForRuntimes2(path, listener, monitor);
-	}
-
-	protected static void searchForRuntimes2(IPath path, IRuntimeSearchListener listener, IProgressMonitor monitor) {
-		File[] files = null;
-		if (path != null) {
-			File f = path.toFile();
-			if (f.exists())
-				files = f.listFiles();
-			else
-				return;
-		} else
-			files = File.listRoots();
-
-		if (files != null) {
-			int size = files.length;
-			int work = 100 / size;
-			int workLeft = 100 - (work * size);
-			for (int i = 0; i < size; i++) {
-				if (monitor.isCanceled())
-					return;
-				if (files[i] != null && files[i].isDirectory())
-					searchDir(listener, files[i], 4, monitor);
-				monitor.worked(work);
-			}
-			monitor.worked(workLeft);
-		} else
-			monitor.worked(100);
-	}
-
-	protected static void searchDir(IRuntimeSearchListener listener, File dir, int depth, IProgressMonitor monitor) {
-		if ("conf".equals(dir.getName())) {
-			IRuntimeWorkingCopy runtime = getRuntimeFromDir(dir.getParentFile(), monitor);
-			if (runtime != null) {
-				listener.runtimeFound(runtime);
-				return;
-			}
-		}
-		
-		if (depth == 0)
-			return;
-		
-		File[] files = dir.listFiles(new FileFilter() {
-			public boolean accept(File file) {
-				return file.isDirectory();
-			}
-		});
-		if (files != null) {
-			int size = files.length;
-			for (int i = 0; i < size; i++) {
-				if (monitor.isCanceled())
-					return;
-				searchDir(listener, files[i], depth - 1, monitor);
-			}
-		}
-	}
-
-	protected static IRuntimeWorkingCopy getRuntimeFromDir(File dir, IProgressMonitor monitor) {
-		for (int i = 0; i < runtimeTypes.length; i++) {
-			try {
-				IRuntimeType runtimeType = ServerCore.findRuntimeType(runtimeTypes[i]);
-				String absolutePath = dir.getAbsolutePath();
-				String id = absolutePath.replace(File.separatorChar,'_').replace(':','-');
-				IRuntimeWorkingCopy runtime = runtimeType.createRuntime(id, monitor);
-				runtime.setName(dir.getName());
-				runtime.setLocation(new Path(absolutePath));
-				ITomcatRuntimeWorkingCopy wc = (ITomcatRuntimeWorkingCopy) runtime.getAdapter(ITomcatRuntimeWorkingCopy.class);
-				wc.setVMInstall(JavaRuntime.getDefaultVMInstall());
-				IStatus status = runtime.validate(monitor);
-				if (status == null || status.getSeverity() != IStatus.ERROR)
-					return runtime;
-				
-				Trace.trace(Trace.FINER, "False runtime found at " + dir.getAbsolutePath() + ": " + status.getMessage());
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "Could not find runtime", e);
-			}
-		}
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatRuntimeTargetHandler.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatRuntimeTargetHandler.java
deleted file mode 100644
index 20d7104..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatRuntimeTargetHandler.java
+++ /dev/null
@@ -1,84 +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.tomcat.core.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.launching.IVMInstall;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.jst.server.core.ClasspathRuntimeTargetHandler;
-
-import org.eclipse.wst.server.core.IRuntime;
-/**
- * 
- */
-public class TomcatRuntimeTargetHandler extends ClasspathRuntimeTargetHandler {
-	public IClasspathEntry[] getDelegateClasspathEntries(IRuntime runtime, IProgressMonitor monitor) {
-		ITomcatRuntime tomcatRuntime = (ITomcatRuntime) runtime.loadAdapter(ITomcatRuntime.class, null);
-		IVMInstall vmInstall = tomcatRuntime.getVMInstall();
-		if (vmInstall != null) {
-			String name = vmInstall.getName();
-			return new IClasspathEntry[] { JavaCore.newContainerEntry(new Path(JavaRuntime.JRE_CONTAINER).append("org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType").append(name)) };
-		}
-		return null;
-	}
-
-	/**
-	 * @see ClasspathRuntimeTargetHandler#getClasspathContainerLabel(IRuntime, String)
-	 */
-	public String getClasspathContainerLabel(IRuntime runtime, String id) {
-		String id2 = runtime.getRuntimeType().getId();
-		if (id2.indexOf("32") > 0)
-			return Messages.target32runtime;
-		else if (id2.indexOf("40") > 0)
-			return Messages.target40runtime;
-		else if (id2.indexOf("41") > 0)
-			return Messages.target41runtime;
-		else if (id2.indexOf("50") > 0)
-			return Messages.target50runtime;
-		
-		return Messages.target55runtime;
-	}
-
-	/**
-	 * @see ClasspathRuntimeTargetHandler#resolveClasspathContainer(IRuntime, String)
-	 */
-	public IClasspathEntry[] resolveClasspathContainer(IRuntime runtime, String id) {
-		return resolveClasspathContainer(runtime);
-	}
-
-	/**
-	 * Resolve the classpath container.
-	 */
-	protected IClasspathEntry[] resolveClasspathContainer(IRuntime runtime) {
-		IPath installPath = runtime.getLocation();
-		
-		if (installPath == null)
-			return new IClasspathEntry[0];
-		
-		List list = new ArrayList();
-		if (runtime.getRuntimeType().getId().indexOf("32") > 0) {
-			IPath path = installPath.append("lib");
-			addLibraryEntries(list, path.toFile(), true);
-		} else {
-			IPath path = installPath.append("common");
-			addLibraryEntries(list, path.append("lib").toFile(), true);
-			addLibraryEntries(list, path.append("endorsed").toFile(), true);
-		}
-		return (IClasspathEntry[])list.toArray(new IClasspathEntry[list.size()]);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServer.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServer.java
deleted file mode 100644
index fb74a58..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServer.java
+++ /dev/null
@@ -1,334 +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.tomcat.core.internal;
-
-import java.net.URL;
-import java.util.List;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.runtime.*;
-import org.eclipse.jst.server.core.IWebModule;
-import org.eclipse.osgi.util.NLS;
-
-import org.eclipse.wst.server.core.*;
-import org.eclipse.wst.server.core.internal.ServerMonitorManager;
-import org.eclipse.wst.server.core.model.*;
-/**
- * Generic Tomcat server.
- */
-public class TomcatServer extends ServerDelegate implements ITomcatServer, ITomcatServerWorkingCopy {
-	public static final String PROPERTY_SECURE = "secure";
-	public static final String PROPERTY_DEBUG = "debug";
-
-	protected transient TomcatConfiguration configuration;
-
-	/**
-	 * TomcatServer.
-	 */
-	public TomcatServer() {
-		super();
-	}
-
-	public TomcatRuntime getTomcatRuntime() {
-		if (getServer().getRuntime() == null)
-			return null;
-		
-		return (TomcatRuntime) getServer().getRuntime().loadAdapter(TomcatRuntime.class, null);
-	}
-
-	public ITomcatVersionHandler getTomcatVersionHandler() {
-		if (getServer().getRuntime() == null || getTomcatRuntime() == null)
-			return null;
-
-		return getTomcatRuntime().getVersionHandler();
-	}
-
-	public ITomcatConfiguration getServerConfiguration() throws CoreException {
-		return getTomcatConfiguration();
-	}
-
-	public TomcatConfiguration getTomcatConfiguration() throws CoreException {
-		if (configuration == null) {
-			IFolder folder = getServer().getServerConfiguration();
-			if (folder == null || !folder.exists())
-				throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorNoConfiguration, folder.getFullPath().toOSString()), null));
-			
-			String id = getServer().getServerType().getId();
-			if (id.indexOf("32") > 0)
-				configuration = new Tomcat32Configuration(folder);
-			else if (id.indexOf("40") > 0)
-				configuration = new Tomcat40Configuration(folder);
-			else if (id.indexOf("41") > 0)
-				configuration = new Tomcat41Configuration(folder);
-			else if (id.indexOf("50") > 0)
-				configuration = new Tomcat50Configuration(folder);
-			else if (id.indexOf("55") > 0)
-				configuration = new Tomcat55Configuration(folder);
-			try {
-				configuration.load(folder, null);
-			} catch (CoreException ce) {
-				// ignore
-				configuration = null;
-				throw ce;
-			}
-		}
-		return configuration;
-	}
-
-	public void importConfiguration(IRuntime runtime, IProgressMonitor monitor) {
-		if (runtime == null) {
-			configuration = null;
-			return;
-		}
-		IPath path = runtime.getLocation().append("conf");
-		
-		String id = getServer().getServerType().getId();
-		IFolder folder = getServer().getServerConfiguration();
-		if (id.indexOf("32") > 0)
-			configuration = new Tomcat32Configuration(folder);
-		else if (id.indexOf("40") > 0)
-			configuration = new Tomcat40Configuration(folder);
-		else if (id.indexOf("41") > 0)
-			configuration = new Tomcat41Configuration(folder);
-		else if (id.indexOf("50") > 0)
-			configuration = new Tomcat50Configuration(folder);
-		else if (id.indexOf("55") > 0)
-			configuration = new Tomcat55Configuration(folder);
-		try {
-			configuration.importFromPath(path, isTestEnvironment(), monitor);
-		} catch (CoreException ce) {
-			// ignore
-			configuration = null;
-		}
-	}
-
-	public void saveConfiguration(IProgressMonitor monitor) throws CoreException {
-		TomcatConfiguration config = getTomcatConfiguration();
-		if (config == null)
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotSaveConfiguration, "null"), null));
-		config.save(getServer().getServerConfiguration(), monitor);
-	}
-
-	public void configurationChanged() {
-		configuration = null;
-	}
-
-	/**
-	 * Return the root URL of this module.
-	 * @param module org.eclipse.wst.server.core.model.IModule
-	 * @return java.net.URL
-	 */
-	public URL getModuleRootURL(IModule module) {
-		try {
-			if (module == null)
-				return null;
-	
-			TomcatConfiguration config = getTomcatConfiguration();
-			if (config == null)
-				return null;
-	
-			String url = "http://localhost";
-			int port = config.getMainPort().getPort();
-			port = ServerMonitorManager.getInstance().getMonitoredPort(getServer(), port, "web");
-			if (port != 80)
-				url += ":" + port;
-
-			url += config.getWebModuleURL(module);
-			
-			if (!url.endsWith("/"))
-				url += "/";
-
-			return new URL(url);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not get root URL", e);
-			return null;
-		}
-	}
-
-	/**
-	 * Returns true if the process is set to run in debug mode.
-	 * This feature only works with Tomcat v4.0.
-	 *
-	 * @return boolean
-	 */
-	public boolean isDebug() {
-		return getAttribute(PROPERTY_DEBUG, false);
-	}
-
-	/**
-	 * Returns true if this is a test (run code out of the workbench) server.
-	 *
-	 * @return boolean
-	 */
-	public boolean isTestEnvironment() {
-		return getAttribute(PROPERTY_TEST_ENVIRONMENT, false);
-	}
-
-	/**
-	 * Returns true if the process is set to run in secure mode.
-	 *
-	 * @return boolean
-	 */
-	public boolean isSecure() {
-		return getAttribute(PROPERTY_SECURE, false);
-	}
-	
-	protected static String renderCommandLine(String[] commandLine, String separator) {
-		if (commandLine == null || commandLine.length < 1)
-			return "";
-		StringBuffer buf= new StringBuffer(commandLine[0]);
-		for (int i = 1; i < commandLine.length; i++) {
-			buf.append(separator);
-			buf.append(commandLine[i]);
-		}	
-		return buf.toString();
-	}
-
-	/**
-	 * Return a string representation of this object.
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		return "TomcatServer";
-	}
-
-	/*
-	 * Returns the child module(s) of this module.
-	 */
-	public IModule[] getChildModules(IModule[] module) {
-		return new IModule[0];
-	}
-
-	/*
-	 * Returns the root module(s) of this module.
-	 */
-	public IModule[] getRootModules(IModule module) throws CoreException {
-		if (module.getAdapter(IWebModule.class) != null) {
-			IStatus status = canModifyModules(new IModule[] { module }, null);
-			if (status == null || !status.isOK())
-				throw new CoreException(status);
-			return new IModule[] { module };
-		}
-		return null;
-	}
-
-	/**
-	 * Returns true if the given project is supported by this
-	 * server, and false otherwise.
-	 *
-	 * @param add modules
-	 * @param remove modules
-	 * @return the status
-	 */
-	public IStatus canModifyModules(IModule[] add, IModule[] remove) {
-		if (add != null) {
-			int size = add.length;
-			for (int i = 0; i < size; i++) {
-				IModule module = add[i];
-				IWebModule webModule = (IWebModule) module.getAdapter(IWebModule.class);
-				if (webModule == null)
-					return new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, Messages.errorWebModulesOnly, null);
-				
-				IStatus status = getTomcatVersionHandler().canAddModule(webModule);
-				if (status != null && !status.isOK())
-					return status;
-			}
-		}
-		
-		return new Status(IStatus.OK, TomcatPlugin.PLUGIN_ID, 0, "%canModifyModules", null);
-	}
-
-	public ServerPort[] getServerPorts() {
-		if (getServer().getServerConfiguration() == null)
-			return new ServerPort[0];
-		
-		try {
-			List list = getTomcatConfiguration().getServerPorts();
-			ServerPort[] sp = new ServerPort[list.size()];
-			list.toArray(sp);
-			return sp;
-		} catch (Exception e) {
-			return new ServerPort[0]; 
-		}
-	}
-	
-	public void setDefaults() {
-		setTestEnvironment(true);
-	}
-	
-	/**
-	 * Sets this process to debug mode. This feature only works
-	 * with Tomcat v4.0.
-	 *
-	 * @param b boolean
-	 */
-	public void setDebug(boolean b) {
-		setAttribute(PROPERTY_DEBUG, b);
-	}
-
-	/**
-	 * Sets this process to secure mode.
-	 * @param b boolean
-	 */
-	public void setSecure(boolean b) {
-		setAttribute(PROPERTY_SECURE, b);
-	}
-
-	/**
-	 * Sets this server to test environment mode.
-	 * 
-	 * @param b boolean
-	 */
-	public void setTestEnvironment(boolean b) {
-		setAttribute(PROPERTY_TEST_ENVIRONMENT, b);
-	}
-	
-	/**
-	 * @see ServerDelegate#modifyModules(IModule[], IModule[], IProgressMonitor)
-	 */
-	public void modifyModules(IModule[] add, IModule[] remove, IProgressMonitor monitor) throws CoreException {
-		IStatus status = canModifyModules(add, remove);
-		if (status == null || !status.isOK())
-			throw new CoreException(status);
-		
-		TomcatConfiguration config = getTomcatConfiguration();
-
-		if (add != null) {
-			int size = add.length;
-			for (int i = 0; i < size; i++) {
-				IModule module3 = add[i];
-				IWebModule module = (IWebModule) module3.loadAdapter(IWebModule.class, monitor);
-				String contextRoot = module.getContextRoot();
-				if (contextRoot != null && !contextRoot.startsWith("/"))
-					contextRoot = "/" + contextRoot;
-				WebModule module2 = new WebModule(contextRoot,
-						module.getLocation().toOSString(), module3.getId(), true);
-				config.addWebModule(-1, module2);
-			}
-		}
-		
-		if (remove != null) {
-			int size2 = remove.length;
-			for (int j = 0; j < size2; j++) {
-				IModule module3 = remove[j];
-				String memento = module3.getId();
-				List modules = getTomcatConfiguration().getWebModules();
-				int size = modules.size();
-				for (int i = 0; i < size; i++) {
-					WebModule module = (WebModule) modules.get(i);
-					if (memento.equals(module.getMemento()))
-						config.removeWebModule(i);
-				}
-			}
-		}
-		config.save(config.getFolder(), monitor);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServerBehaviour.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServerBehaviour.java
deleted file mode 100644
index 4500d2d..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServerBehaviour.java
+++ /dev/null
@@ -1,565 +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.tomcat.core.internal;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Properties;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.debug.core.*;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.jdt.launching.IJavaLaunchConfigurationConstants;
-import org.eclipse.jdt.launching.IRuntimeClasspathEntry;
-import org.eclipse.jdt.launching.IVMInstall;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.jst.server.core.IWebModule;
-import org.eclipse.osgi.util.NLS;
-
-import org.eclipse.wst.server.core.*;
-import org.eclipse.wst.server.core.internal.Server;
-import org.eclipse.wst.server.core.model.*;
-import org.eclipse.wst.server.core.util.SocketUtil;
-/**
- * Generic Tomcat server.
- */
-public class TomcatServerBehaviour extends ServerBehaviourDelegate implements ITomcatServerBehaviour {
-	private static final String ATTR_STOP = "stop-server";
-
-	// the thread used to ping the server to check for startup
-	protected transient PingThread ping = null;
-	protected transient IProcess process;
-	protected transient IDebugEventSetListener processListener;
-
-	/**
-	 * TomcatServer.
-	 */
-	public TomcatServerBehaviour() {
-		super();
-	}
-	
-	public void initialize() {
-		// do nothing
-	}
-
-	public TomcatRuntime getTomcatRuntime() {
-		if (getServer().getRuntime() == null)
-			return null;
-		
-		return (TomcatRuntime) getServer().getRuntime().loadAdapter(TomcatRuntime.class, null);
-	}
-	
-	public ITomcatVersionHandler getTomcatVersionHandler() {
-		if (getServer().getRuntime() == null || getTomcatRuntime() == null)
-			return null;
-
-		return getTomcatRuntime().getVersionHandler();
-	}
-	
-	public TomcatConfiguration getTomcatConfiguration() throws CoreException {
-		return getTomcatServer().getTomcatConfiguration();
-	}
-
-	public TomcatServer getTomcatServer() {
-		return (TomcatServer) getServer().getAdapter(TomcatServer.class);
-	}
-
-	/**
-	 * Return the runtime class name.
-	 *
-	 * @return the class name
-	 */
-	public String getRuntimeClass() {
-		return getTomcatVersionHandler().getRuntimeClass();
-	}
-	
-	/**
-	 * Returns the runtime base path for relative paths in the server
-	 * configuration.
-	 * 
-	 * @return the base path
-	 */
-	public IPath getRuntimeBaseDirectory() {
-		return getTomcatVersionHandler().getRuntimeBaseDirectory(this);
-	}
-
-	/**
-	 * Return the program's runtime arguments to start or stop.
-	 *
-	 * @param starting true if starting
-	 * @return an array of runtime program arguments
-	 */
-	protected String[] getRuntimeProgramArguments(boolean starting) {
-		IPath configPath = null;
-		if (getTomcatServer().isTestEnvironment())
-			configPath = getTempDirectory();
-		return getTomcatVersionHandler().getRuntimeProgramArguments(configPath, getTomcatServer().isDebug(), starting);
-	}
-
-	/**
-	 * Return the runtime (VM) arguments.
-	 *
-	 * @return an array of runtime arguments
-	 */
-	protected String[] getRuntimeVMArguments() {
-		IPath installPath = getServer().getRuntime().getLocation();
-		IPath configPath = null;
-		if (getTomcatServer().isTestEnvironment())
-			configPath = getTempDirectory();
-		else
-			configPath = installPath;
-		return getTomcatVersionHandler().getRuntimeVMArguments(installPath, configPath,
-				getTomcatServer().isTestEnvironment(), getTomcatServer().isSecure());
-	}
-	
-	protected static String renderCommandLine(String[] commandLine, String separator) {
-		if (commandLine == null || commandLine.length < 1)
-			return "";
-		StringBuffer buf= new StringBuffer(commandLine[0]);
-		for (int i = 1; i < commandLine.length; i++) {
-			buf.append(separator);
-			buf.append(commandLine[i]);
-		}	
-		return buf.toString();
-	}
-
-	public void setProcess(final IProcess newProcess) {
-		if (process != null)
-			return;
-
-		process = newProcess;
-		if (processListener != null)
-			DebugPlugin.getDefault().removeDebugEventListener(processListener);
-		if (newProcess == null)
-			return;
-		
-		processListener = new IDebugEventSetListener() {
-			public void handleDebugEvents(DebugEvent[] events) {
-				if (events != null) {
-					int size = events.length;
-					for (int i = 0; i < size; i++) {
-						if (process != null && process.equals(events[i].getSource()) && events[i].getKind() == DebugEvent.TERMINATE) {
-							DebugPlugin.getDefault().removeDebugEventListener(this);
-							stopImpl();
-						}
-					}
-				}
-			}
-		};
-		DebugPlugin.getDefault().addDebugEventListener(processListener);
-	}
-	
-	protected void setServerStarted() {
-		setServerState(IServer.STATE_STARTED);
-	}
-
-	protected void stopImpl() {
-		if (ping != null) {
-			ping.stop();
-			ping = null;
-		}
-		if (process != null) {
-			process = null;
-			DebugPlugin.getDefault().removeDebugEventListener(processListener);
-			processListener = null;
-		}
-		setServerState(IServer.STATE_STOPPED);
-	}
-
-	protected void publishServer(int kind, IProgressMonitor monitor) throws CoreException {
-		IPath installDir = getServer().getRuntime().getLocation();
-		IPath confDir = null;
-		if (getTomcatServer().isTestEnvironment()) {
-			confDir = getTempDirectory();
-			IStatus status = getTomcatConfiguration().prepareRuntimeDirectory(confDir);
-			if (status != null && !status.isOK())
-				throw new CoreException(status);
-/*			File temp = confDir.append("conf").toFile();
-			if (!temp.exists())
-				temp.mkdirs();*/
-		} else
-			confDir = installDir;
-
-		monitor = ProgressUtil.getMonitorFor(monitor);
-		monitor.beginTask(Messages.publishServerTask, 500);
-		
-		IStatus status = getTomcatConfiguration().cleanupServer(confDir, installDir, ProgressUtil.getSubMonitorFor(monitor, 100));
-		if (status != null && !status.isOK())
-			throw new CoreException(status);
-		
-		status = getTomcatConfiguration().backupAndPublish(confDir, !getTomcatServer().isTestEnvironment(), ProgressUtil.getSubMonitorFor(monitor, 400));
-		if (status != null && !status.isOK())
-			throw new CoreException(status);
-		
-		monitor.done();
-		
-		setServerPublishState(IServer.PUBLISH_STATE_NONE);
-	}
-
-	/*
-	 * Publishes the given module to the server.
-	 */
-	protected void publishModule(int kind, int deltaKind, IModule[] moduleTree, IProgressMonitor monitor) throws CoreException {
-		if (getTomcatServer().isTestEnvironment())
-			return;
-
-		IPath path = getTempDirectory().append("publish.txt");
-		Properties p = new Properties();
-		try {
-			p.load(new FileInputStream(path.toFile()));
-		} catch (Exception e) {
-			// ignore
-		}
-		
-		IModule module = moduleTree[0];
-		
-		if (deltaKind == REMOVED) {
-			try {
-				String publishPath = (String) p.get(module.getId());
-				FileUtil.deleteDirectory(new File(publishPath), monitor);
-			} catch (Exception e) {
-				throw new CoreException(new Status(IStatus.WARNING, TomcatPlugin.PLUGIN_ID, 0, "Could not remove module", e));
-			}
-		} else {
-			IWebModule webModule = (IWebModule) module.loadAdapter(IWebModule.class, null);
-			IPath from = webModule.getLocation();
-			IPath to = getServer().getRuntime().getLocation().append("webapps").append(webModule.getContextRoot());
-			FileUtil.smartCopyDirectory(from.toOSString(), to.toOSString(), monitor);
-			p.put(module.getId(), to.toOSString());
-			setModulePublishState(moduleTree, IServer.PUBLISH_STATE_NONE);
-		}
-		
-		try {
-			p.store(new FileOutputStream(path.toFile()), "Tomcat publish data");
-		} catch (Exception e) {
-			// ignore
-		}
-	}
-
-	/**
-	 * Setup for starting the server.
-	 * 
-	 * @param launch ILaunch
-	 * @param launchMode String
-	 * @param monitor IProgressMonitor
-	 * @throws CoreException if anything goes wrong
-	 */
-	public void setupLaunch(ILaunch launch, String launchMode, IProgressMonitor monitor) throws CoreException {
-		if ("true".equals(launch.getLaunchConfiguration().getAttribute(ATTR_STOP, "false")))
-			return;
-		//if (getTomcatRuntime() == null)
-		//	throw new CoreException();
-		
-		IStatus status = getTomcatRuntime().validate();
-		if (status != null && status.getSeverity() == IStatus.ERROR)
-			throw new CoreException(status);
-
-		//setRestartNeeded(false);
-		TomcatConfiguration configuration = getTomcatConfiguration();
-	
-		// check that ports are free
-		Iterator iterator = configuration.getServerPorts().iterator();
-		List usedPorts = new ArrayList();
-		while (iterator.hasNext()) {
-			ServerPort sp = (ServerPort) iterator.next();
-			if (sp.getPort() < 0)
-				throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, Messages.errorPortInvalid, null));
-			if (SocketUtil.isPortInUse(sp.getPort(), 5)) {
-				usedPorts.add(sp);
-			}
-		}
-		if (usedPorts.size() == 1) {
-			ServerPort port = (ServerPort) usedPorts.get(0);
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorPortInUse, new String[] {port.getPort() + "", getServer().getName()}), null));
-		} else if (usedPorts.size() > 1) {
-			String portStr = "";
-			iterator = usedPorts.iterator();
-			boolean first = true;
-			while (iterator.hasNext()) {
-				if (!first)
-					portStr += ", ";
-				first = false;
-				ServerPort sp = (ServerPort) iterator.next();
-				portStr += "" + sp.getPort();
-			}
-			throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorPortsInUse, new String[] {portStr, getServer().getName()}), null));
-		}
-		
-		setServerState(IServer.STATE_STARTING);
-		setMode(launchMode);
-	
-		// ping server to check for startup
-		try {
-			String url = "http://localhost";
-			int port = configuration.getMainPort().getPort();
-			if (port != 80)
-				url += ":" + port;
-			ping = new PingThread(getServer(), url, 50, this);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Can't ping for Tomcat startup.");
-		}
-	}
-
-	/**
-	 * Cleanly shuts down and terminates the server.
-	 * 
-	 * @param force <code>true</code> to kill the server
-	 */
-	public void stop(boolean force) {
-		if (force) {
-			terminate();
-			return;
-		}
-		int state = getServer().getServerState();
-		if (state == IServer.STATE_STOPPED)
-			return;
-		else if (state == IServer.STATE_STARTING || state == IServer.STATE_STOPPING) {
-			terminate();
-			return;
-		}
-
-		try {
-			Trace.trace(Trace.FINER, "Stopping Tomcat");
-			if (state != IServer.STATE_STOPPED)
-				setServerState(IServer.STATE_STOPPING);
-	
-			ILaunchConfiguration launchConfig = ((Server)getServer()).getLaunchConfiguration(true, null);
-			ILaunchConfigurationWorkingCopy wc = launchConfig.getWorkingCopy();
-			
-			String args = renderCommandLine(getRuntimeProgramArguments(false), " ");
-			wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_PROGRAM_ARGUMENTS, args);
-			wc.setAttribute(ATTR_STOP, "true");
-			wc.launch(ILaunchManager.RUN_MODE, new NullProgressMonitor());
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error stopping Tomcat", e);
-		}
-	}
-
-	/**
-	 * Terminates the server.
-	 */
-	protected void terminate() {
-		if (getServer().getServerState() == IServer.STATE_STOPPED)
-			return;
-
-		try {
-			setServerState(IServer.STATE_STOPPING);
-			Trace.trace(Trace.FINER, "Killing the Tomcat process");
-			if (process != null && !process.isTerminated()) {
-				process.terminate();
-				stopImpl();
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error killing the process", e);
-		}
-	}
-
-	public IPath getTempDirectory() {
-		return super.getTempDirectory();
-	}
-
-	/**
-	 * Return a string representation of this object.
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		return "TomcatServer";
-	}
-	
-	protected static int getNextToken(String s, int start) {
-		int i = start;
-		int length = s.length();
-		char lookFor = ' ';
-		
-		while (i < length) {
-			char c = s.charAt(i);
-			if (lookFor == c) {
-				if (lookFor == '"')
-					return i+1;
-				return i;
-			}
-			if (c == '"')
-				lookFor = '"';
-			i++;
-		}
-		return -1;
-	}
-	
-	/**
-	 * Merge the given arguments into the original argument string, replacing
-	 * invalid values if they have been changed.
-	 * 
-	 * @param originalArg
-	 * @param vmArgs
-	 * @return merged argument string
-	 */
-	public static String mergeArguments(String originalArg, String[] vmArgs) {
-		if (vmArgs == null)
-			return originalArg;
-		
-		if (originalArg == null)
-			originalArg = "";
-		
-		// replace and null out all vmargs that already exist
-		int size = vmArgs.length;
-		for (int i = 0; i < size; i++) {
-			int ind = vmArgs[i].indexOf(" ");
-			int ind2 = vmArgs[i].indexOf("=");
-			if (ind >= 0 && (ind2 == -1 || ind < ind2)) { // -a bc style
-				int index = originalArg.indexOf(vmArgs[i].substring(0, ind + 1));
-				if (index == 0 || (index > 0 && originalArg.charAt(index - 1) == ' ')) {
-					// replace
-					String s = originalArg.substring(0, index);
-					int index2 = getNextToken(originalArg, index + ind + 1);
-					if (index2 >= 0)
-						originalArg = s + vmArgs[i] + originalArg.substring(index2);
-					else
-						originalArg = s + vmArgs[i];
-					vmArgs[i] = null;
-				}
-			} else if (ind2 >= 0) { // a=b style
-				int index = originalArg.indexOf(vmArgs[i].substring(0, ind2 + 1));
-				if (index == 0 || (index > 0 && originalArg.charAt(index - 1) == ' ')) {
-					// replace
-					String s = originalArg.substring(0, index);
-					int index2 = getNextToken(originalArg, index);
-					if (index2 >= 0)
-						originalArg = s + vmArgs[i] + originalArg.substring(index2);
-					else
-						originalArg = s + vmArgs[i];
-					vmArgs[i] = null;
-				}
-			} else { // abc style
-				int index = originalArg.indexOf(vmArgs[i]);
-				if (index == 0 || (index > 0 && originalArg.charAt(index-1) == ' ')) {
-					// replace
-					String s = originalArg.substring(0, index);
-					int index2 = getNextToken(originalArg, index);
-					if (index2 >= 0)
-						originalArg = s + vmArgs[i] + originalArg.substring(index2);
-					else
-						originalArg = s + vmArgs[i];
-					vmArgs[i] = null;
-				}
-			}
-		}
-		
-		// add remaining vmargs to the end
-		for (int i = 0; i < size; i++) {
-			if (vmArgs[i] != null) {
-				if (originalArg.length() > 0 && !originalArg.endsWith(" "))
-					originalArg += " ";
-				originalArg += vmArgs[i];
-			}
-		}
-		
-		return originalArg;
-	}
-
-	/**
-	 * Replace the current JRE container classpath with the given entry.
-	 * 
-	 * @param cp
-	 * @param entry
-	 */
-	public static void replaceJREContainer(List cp, IRuntimeClasspathEntry entry) {
-		int size = cp.size();
-		for (int i = 0; i < size; i++) {
-			IRuntimeClasspathEntry entry2 = (IRuntimeClasspathEntry) cp.get(i);
-			if (entry2.getPath().uptoSegment(2).isPrefixOf(entry.getPath())) {
-				cp.set(i, entry);
-				return;
-			}
-		}
-		
-		cp.add(0, entry);
-	}
-
-	/**
-	 * Merge a single classpath entry into the classpath list.
-	 * 
-	 * @param cp
-	 * @param entry
-	 */
-	public static void mergeClasspath(List cp, IRuntimeClasspathEntry entry) {
-		Iterator iterator = cp.iterator();
-		while (iterator.hasNext()) {
-			IRuntimeClasspathEntry entry2 = (IRuntimeClasspathEntry) iterator.next();
-			
-			if (entry2.getPath().equals(entry.getPath()))
-				return;
-		}
-		
-		cp.add(entry);
-	}
-
-	public void setupLaunchConfiguration(ILaunchConfigurationWorkingCopy workingCopy, IProgressMonitor monitor) throws CoreException {
-		String existingProgArgs = workingCopy.getAttribute(IJavaLaunchConfigurationConstants.ATTR_PROGRAM_ARGUMENTS, (String)null);
-		workingCopy.setAttribute(IJavaLaunchConfigurationConstants.ATTR_PROGRAM_ARGUMENTS, mergeArguments(existingProgArgs, getRuntimeProgramArguments(true)));
-
-		String existingVMArgs = workingCopy.getAttribute(IJavaLaunchConfigurationConstants.ATTR_VM_ARGUMENTS, (String)null);
-		workingCopy.setAttribute(IJavaLaunchConfigurationConstants.ATTR_VM_ARGUMENTS, mergeArguments(existingVMArgs, getRuntimeVMArguments()));
-		
-		ITomcatRuntime runtime = getTomcatRuntime();
-		IVMInstall vmInstall = runtime.getVMInstall();
-		if (vmInstall != null) {
-			workingCopy.setAttribute(IJavaLaunchConfigurationConstants.ATTR_VM_INSTALL_TYPE, vmInstall.getVMInstallType().getId());
-			workingCopy.setAttribute(IJavaLaunchConfigurationConstants.ATTR_VM_INSTALL_NAME, vmInstall.getName());
-		}
-		
-		// update classpath
-		IRuntimeClasspathEntry[] originalClasspath = JavaRuntime.computeUnresolvedRuntimeClasspath(workingCopy);
-		int size = originalClasspath.length;
-		List oldCp = new ArrayList(originalClasspath.length + 2);
-		for (int i = 0; i < size; i++)
-			oldCp.add(originalClasspath[i]);
-		
-		List cp2 = runtime.getRuntimeClasspath();
-		Iterator iterator = cp2.iterator();
-		while (iterator.hasNext()) {
-			IRuntimeClasspathEntry entry = (IRuntimeClasspathEntry) iterator.next();
-			mergeClasspath(oldCp, entry);
-		}
-		
-		if (vmInstall != null) {
-			try {
-				replaceJREContainer(oldCp, JavaRuntime.newRuntimeContainerClasspathEntry(new Path(JavaRuntime.JRE_CONTAINER).append("org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType").append(vmInstall.getName()), IRuntimeClasspathEntry.BOOTSTRAP_CLASSES));
-			} catch (Exception e) {
-				// ignore
-			}
-			
-			IPath jrePath = new Path(vmInstall.getInstallLocation().getAbsolutePath());
-			if (jrePath != null) {
-				IPath toolsPath = jrePath.append("lib").append("tools.jar");
-				if (toolsPath.toFile().exists())
-					mergeClasspath(oldCp, JavaRuntime.newArchiveRuntimeClasspathEntry(toolsPath));
-			}
-		}
-		
-		iterator = oldCp.iterator();
-		List list = new ArrayList();
-		while (iterator.hasNext()) {
-			IRuntimeClasspathEntry entry = (IRuntimeClasspathEntry) iterator.next();
-			try {
-				list.add(entry.getMemento());
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "Could not resolve classpath entry: " + entry, e);
-			}
-		}
-		
-		workingCopy.setAttribute(IJavaLaunchConfigurationConstants.ATTR_CLASSPATH, list);
-		workingCopy.setAttribute(IJavaLaunchConfigurationConstants.ATTR_DEFAULT_CLASSPATH, false);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServerLocator.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServerLocator.java
deleted file mode 100644
index 2087618..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServerLocator.java
+++ /dev/null
@@ -1,37 +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.tomcat.core.internal;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-
-import org.eclipse.wst.server.core.*;
-import org.eclipse.wst.server.core.internal.provisional.ServerLocatorDelegate;
-/**
- * 
- */
-public class TomcatServerLocator extends ServerLocatorDelegate {
-	public void searchForServers(String host, final IServerSearchListener listener, final IProgressMonitor monitor) {
-		TomcatRuntimeLocator.IRuntimeSearchListener listener2 = new TomcatRuntimeLocator.IRuntimeSearchListener() {
-			public void runtimeFound(IRuntimeWorkingCopy runtime) {
-				String runtimeTypeId = runtime.getRuntimeType().getId();
-				String serverTypeId = runtimeTypeId.substring(0, runtimeTypeId.length() - 8);
-				IServerType serverType = ServerCore.findServerType(serverTypeId);
-				try {
-					IServerWorkingCopy server = serverType.createServer(serverTypeId, null, runtime, monitor);
-					listener.serverFound(server);
-				} catch (Exception e) {
-					Trace.trace(Trace.WARNING, "Could not create Tomcat server", e);
-				}
-			}
-		};
-		TomcatRuntimeLocator.searchForRuntimes2(null, listener2, monitor);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServerUtil.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServerUtil.java
deleted file mode 100644
index 4f720e8..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatServerUtil.java
+++ /dev/null
@@ -1,86 +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.tomcat.core.internal;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.JavaCore;
-/**
- * Helper class to load and save Tomcat server and identify configurations.
- */
-public class TomcatServerUtil {
-	/**
-	 * TomcatServerSerializer constructor comment.
-	 */
-	protected TomcatServerUtil() {
-		super();
-	}
-	
-	/**
-	 * Returns the kind of a <code>PackageFragmentRoot</code> from its <code>String</code> form.
-	 */
-	protected static int getClasspathKindFromString(String kindStr) {
-		//if (kindStr.equalsIgnoreCase("prj"))
-		//	return IClasspathEntry.CPE_PROJECT;
-		if (kindStr.equalsIgnoreCase("var"))
-			return IClasspathEntry.CPE_VARIABLE;
-		//if (kindStr.equalsIgnoreCase("src"))
-		//	return IClasspathEntry.CPE_SOURCE;
-		if (kindStr.equalsIgnoreCase("lib"))
-			return IClasspathEntry.CPE_LIBRARY;
-		return -1;
-	}
-
-	/**
-	 * Returns a <code>String</code> for the kind of a class path entry.
-	 */
-	protected static String getClasspathKindToString(int kind) {
-		switch (kind) {
-			//case IClasspathEntry.CPE_PROJECT :
-			//	return "prj";
-			//case IClasspathEntry.CPE_SOURCE :
-			//	return "src";
-			case IClasspathEntry.CPE_LIBRARY :
-				return "lib";
-			case IClasspathEntry.CPE_VARIABLE :
-				return "var";
-			default :
-				return "unknown";
-		}
-	}
-	
-	/**
-	 * Create's a classpath entry of the specified kind.
-	 *
-	 * Returns null if unable to create a valid entry.
-	 */
-	protected static IClasspathEntry createClasspathEntry(IPath path, int kind, IPath sourceAttachmentPath, IPath sourceAttachmentRootPath) {
-		switch (kind) {
-			/*case IClasspathEntry.CPE_PROJECT:
-				if (!path.isAbsolute())
-					return null;
-				else
-					return JavaCore.newProjectEntry(path);*/
-	
-			case IClasspathEntry.CPE_LIBRARY:
-				if (!path.isAbsolute())
-					return null;
-				
-				return JavaCore.newLibraryEntry(path, sourceAttachmentPath, sourceAttachmentRootPath);
-	
-			case IClasspathEntry.CPE_VARIABLE:
-				return JavaCore.newVariableEntry(path, sourceAttachmentPath, sourceAttachmentRootPath);
-	
-			default:
-				return null;
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatSourcePathComputerDelegate.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatSourcePathComputerDelegate.java
deleted file mode 100644
index 90f36c0..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/TomcatSourcePathComputerDelegate.java
+++ /dev/null
@@ -1,119 +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.jst.server.tomcat.core.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourcePathComputerDelegate;
-import org.eclipse.debug.core.sourcelookup.containers.FolderSourceContainer;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
-import org.eclipse.jdt.launching.IRuntimeClasspathEntry;
-import org.eclipse.jdt.launching.JavaRuntime;
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.ServerUtil;
-/**
- *
- */
-public class TomcatSourcePathComputerDelegate implements ISourcePathComputerDelegate {
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.sourcelookup.ISourcePathComputerDelegate#computeSourceContainers(org.eclipse.debug.core.ILaunchConfiguration, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public ISourceContainer[] computeSourceContainers(ILaunchConfiguration configuration, IProgressMonitor monitor) throws CoreException {
-		IRuntimeClasspathEntry[] entries = JavaRuntime.computeUnresolvedSourceLookupPath(configuration);
-		List sourcefolderList = new ArrayList();
-
-		IServer server = ServerUtil.getServer(configuration);
-		if (server != null) {
-			IPath basePath = ((TomcatServerBehaviour)server.getAdapter(TomcatServerBehaviour.class)).getRuntimeBaseDirectory();
-			List list = new ArrayList();
-			List pathList = new ArrayList();
-			IModule[] modules = server.getModules();
-			for (int i = 0; i < modules.length; i++) {
-				IProject project = modules[i].getProject();
-				if (project != null) {
-					/**
-					 * WORKAROUND for bug 93174,
-					 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=93174
-					 * 
-					 * Assume that a folder with the same name as the IModule
-					 * name located directly under the module's project is a
-					 * "flexible" module. Alter the behavior so that a folder
-					 * container is added instead.
-					 */
-					IFolder moduleFolder = project.getFolder(modules[i].getName());
-					if (moduleFolder.exists()) {
-						sourcefolderList.add(new FolderSourceContainer(moduleFolder, true));
-					} else {
-						try {
-							if (project.hasNature(JavaCore.NATURE_ID)) {
-								IJavaProject javaProject = (IJavaProject) project.getNature(JavaCore.NATURE_ID);
-								list.add(javaProject);
-							}
-						} catch (Exception e) {
-							// ignore
-						}
-					}
-					
-					IPath path = basePath.append("work").append("Catalina").append("localhost").append(modules[i].getName());
-					pathList.add(path);
-				}
-			}
-			int size = list.size();
-			IJavaProject[] projects = new IJavaProject[size];
-			list.toArray(projects);
-			
-			int size2 = entries.length;
-			int size3 = pathList.size();
-			IRuntimeClasspathEntry[] entries2 = new IRuntimeClasspathEntry[size + size2 + size3];
-			System.arraycopy(entries, 0, entries2, 0, size2);
-			
-			for (int i = 0; i < size; i++) {
-				entries2[size2 + i] = JavaRuntime.newProjectRuntimeClasspathEntry(projects[i]); 
-			}
-			
-			for (int i = 0; i < size3; i++) {
-				entries2[size + size2 + i] = JavaRuntime.newArchiveRuntimeClasspathEntry((IPath) pathList.get(i)); 
-			}
-			
-			entries = entries2;
-		}
-		
-		IRuntimeClasspathEntry[] resolved = JavaRuntime.resolveSourceLookupPath(entries, configuration);
-		ISourceContainer[] sourceContainers = JavaRuntime.getSourceContainers(resolved);
-
-		/**
-		 * WORKAROUND for bug 93174,
-		 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=93174
-		 * 
-		 * FolderSourceContainers have a source container of null, so the
-		 * mapping of the regular classpath to source containers is done
-		 * before adding the known FolderSourceContainers.
-		 */
-		if (!sourcefolderList.isEmpty()) {
-			ISourceContainer[] combinedSourceContainers = new ISourceContainer[sourceContainers.length + sourcefolderList.size()];
-			sourcefolderList.toArray(combinedSourceContainers);
-			System.arraycopy(sourceContainers, 0, combinedSourceContainers, sourcefolderList.size(), sourceContainers.length);
-			sourceContainers = combinedSourceContainers;
-		}
-
-		return sourceContainers;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Trace.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Trace.java
deleted file mode 100644
index dc9bf41..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/Trace.java
+++ /dev/null
@@ -1,54 +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.tomcat.core.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;
-	public static byte FINER = 4;
-
-	/**
-	 * Trace constructor comment.
-	 */
-	private Trace() {
-		super();
-	}
-
-	/**
-	 * Trace the given text.
-	 *
-	 * @param level the 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 the trace level
-	 * @param s a message
-	 * @param t a throwable
-	 */
-	public static void trace(byte level, String s, Throwable t) {
-		if (!TomcatPlugin.getInstance().isDebugging())
-			return;
-
-		System.out.println(TomcatPlugin.PLUGIN_ID + " " + s);
-		if (t != null)
-			t.printStackTrace();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/WebAppDocument.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/WebAppDocument.java
deleted file mode 100644
index b9c0751..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/WebAppDocument.java
+++ /dev/null
@@ -1,164 +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.tomcat.core.internal;
-
-import java.io.ByteArrayInputStream;
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jst.server.tomcat.core.internal.xml.XMLUtil;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.InputSource;
-/**
- * Helper class to access a web.xml file.
- */
-public class WebAppDocument {
-	protected boolean isWebAppDirty;
-	protected Document webAppDocument;
-
-	/**
-	 * Loads a web.xml from the given URL.
-	 *
-	 * @param path a path
-	 * @throws Exception if anything goes wrong
-	 */
-	public WebAppDocument(IPath path) throws Exception {
-		webAppDocument = XMLUtil.getDocumentBuilder().parse(new InputSource(new FileInputStream(path.toFile())));
-	}
-
-	/**
-	 * Loads a web.xml from the given resource.
-	 *
-	 * @param file a file
-	 * @throws Exception if anything goes wrong
-	 */
-	public WebAppDocument(IFile file) throws Exception {
-		webAppDocument = XMLUtil.getDocumentBuilder().parse(new InputSource(file.getContents()));
-	}
-
-	/**
-	 * Adds a MimeMapping.
-	 *
-	 * @param index int
-	 * @param map org.eclipse.jst.server.tomcat.IMimeMapping
-	 */
-	public void addMimeMapping(int index, IMimeMapping map) {
-		Trace.trace(Trace.FINER, "Adding mime mapping " + index + " " + map.getMimeType() + " " + map.getExtension());
-		Element element = webAppDocument.getDocumentElement();
-		Element mapping = XMLUtil.createChildElement(webAppDocument, element, index, "mime-mapping");
-		XMLUtil.insertText(webAppDocument, mapping, "\n\t");
-		XMLUtil.createTextChildElement(webAppDocument, mapping, "extension", map.getExtension());
-		XMLUtil.insertText(webAppDocument, mapping, "\n\t");
-		XMLUtil.createTextChildElement(webAppDocument, mapping, "mime-type", map.getMimeType());
-		XMLUtil.insertText(webAppDocument, mapping, "\n");
-	
-		isWebAppDirty = true;
-	}
-
-	/**
-	 * Returns a list of MimeMappings.
-	 *
-	 * @return java.util.List
-	 */
-	public List getMimeMappings() {
-		List map = new ArrayList();
-	
-		Element root = webAppDocument.getDocumentElement();
-		Iterator iterator = XMLUtil.getNodeIterator(root, "mime-mapping");
-		while (iterator.hasNext()) {
-			Element element = (Element) iterator.next();
-			String mimeType = XMLUtil.getSubNodeValue(element, "mime-type");
-			String extension = XMLUtil.getSubNodeValue(element, "extension");
-			MimeMapping mm = new MimeMapping(extension, mimeType);
-			map.add(mm);
-		}
-	
-		return map;
-	}
-
-	/**
-	 * Modifies a mime mapping.
-	 *
-	 * @param index
-	 * @param map
-	 */
-	public void modifyMimeMapping(int index, IMimeMapping map) {
-		Element element = webAppDocument.getDocumentElement();
-		NodeList list = element.getElementsByTagName("mime-mapping");
-		Element element2 = (Element) list.item(index);
-		XMLUtil.setNodeValue(element2.getElementsByTagName("extension").item(0), "extension", map.getExtension());
-		XMLUtil.setNodeValue(element2.getElementsByTagName("mime-type").item(0), "mime-type", map.getMimeType());
-			
-		isWebAppDirty = true;
-	}
-
-	/**
-	 * Removes the mime mapping at the specified index.
-	 *
-	 * @param index int
-	 */
-	public void removeMimeMapping(int index) {
-		Element element = webAppDocument.getDocumentElement();
-		NodeList list = element.getElementsByTagName("mime-mapping");
-		Node node = list.item(index);
-		element.removeChild(node);
-		isWebAppDirty = true;
-	}
-	
-	/**
-	 * Saves the Web app document.
-	 *
-	 * @param path a path
-	 * @param forceDirty true to force a save
-	 * @throws IOException if anything goes wrong
-	 */
-	public void save(String path, boolean forceDirty) throws IOException {
-		if (forceDirty || isWebAppDirty)
-			XMLUtil.save(path, webAppDocument);
-	}
-	
-	/**
-	 * Saves the Web app document.
-	 *
-	 * @param file a file
-	 * @param monitor a progress monitor
-	 * @throws Exception if anything goes wrong 
-	 */
-	public void save(IFile file, IProgressMonitor monitor) throws Exception {
-		byte[] data = XMLUtil.getContents(webAppDocument);
-		InputStream in = null;
-		try {
-			in = new ByteArrayInputStream(data);
-			if (file.exists())
-				file.setContents(in, true, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-			else
-				file.create(in, true, ProgressUtil.getSubMonitorFor(monitor, 200));
-		} catch (Exception e) {
-			// ignore
-		} finally {
-			try {
-				in.close();
-			} catch (Exception e) {
-				// ignore
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/WebModule.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/WebModule.java
deleted file mode 100644
index 8117169..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/WebModule.java
+++ /dev/null
@@ -1,89 +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.jst.server.tomcat.core.internal;
-/**
- * A Web module.
- */
-public class WebModule implements ITomcatWebModule {
-	private String docBase;
-	private String path;
-	private String memento;
-	private boolean reloadable;
-
-	/**
-	 * WebModule constructor comment.
-	 * 
-	 * @param path a path
-	 * @param docBase a document base
-	 * @param memento a memento
-	 * @param reloadable <code>true</code> if reloadable
-	 */
-	public WebModule(String path, String docBase, String memento, boolean reloadable) {
-		super();
-		this.path = path;
-		this.docBase = docBase;
-		this.memento = memento;
-		this.reloadable = reloadable;
-	}
-
-	/**
-	 * Get the document base.
-	 *
-	 * @return java.lang.String
-	 */
-	public String getDocumentBase() {
-		return docBase;
-	}
-
-	/**
-	 * Return the path. (context root)
-	 *
-	 * @return java.lang.String
-	 */
-	public String getPath() {
-		return path;
-	}
-
-	/**
-	 * Return the memento.
-	 *
-	 * @return java.lang.String
-	 */
-	public String getMemento() {
-		return memento;
-	}
-
-	/**
-	 * Return true if the web module is auto-reloadable.
-	 *
-	 * @return java.lang.String
-	 */
-	public boolean isReloadable() {
-		return reloadable;
-	}
-	
-	/**
-	 * @see Object#equals(Object)
-	 */
-	public boolean equals(Object obj) {
-		if (!(obj instanceof WebModule))
-			return false;
-		
-		WebModule wm = (WebModule) obj;
-		if (!getDocumentBase().equals(wm.getDocumentBase()))
-			return false;
-		if (!getPath().equals(wm.getPath()))
-			return false;
-		if (!getMemento().equals(wm.getMemento()))
-			return false;
-		return true;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/AddMimeMappingCommand.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/AddMimeMappingCommand.java
deleted file mode 100644
index b88404f..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/AddMimeMappingCommand.java
+++ /dev/null
@@ -1,46 +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.tomcat.core.internal.command;
-
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatConfigurationWorkingCopy;
-import org.eclipse.jst.server.tomcat.core.internal.Messages;
-import org.eclipse.jst.server.tomcat.core.internal.MimeMapping;
-/**
- * Command to add a mime mapping.
- */
-public class AddMimeMappingCommand extends ConfigurationCommand {
-	protected MimeMapping map;
-
-	/**
-	 * AddMimeMappingCommand constructor.
-	 * 
-	 * @param configuration a tomcat configuration
-	 * @param map a mime mapping
-	 */
-	public AddMimeMappingCommand(ITomcatConfigurationWorkingCopy configuration, MimeMapping map) {
-		super(configuration, Messages.configurationEditorActionAddMimeMapping);
-		this.map = map;
-	}
-
-	/**
-	 * Execute the command.
-	 */
-	public void execute() {
-		configuration.addMimeMapping(0, map);
-	}
-
-	/**
-	 * Undo the command.
-	 */
-	public void undo() {
-		configuration.removeMimeMapping(0);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/AddWebModuleCommand.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/AddWebModuleCommand.java
deleted file mode 100644
index e01d3b7..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/AddWebModuleCommand.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.jst.server.tomcat.core.internal.command;
-
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatConfigurationWorkingCopy;
-import org.eclipse.jst.server.tomcat.core.internal.Messages;
-import org.eclipse.jst.server.tomcat.core.internal.WebModule;
-/**
- * Command to add a web module.
- */
-public class AddWebModuleCommand extends ConfigurationCommand {
-	protected WebModule module;
-	protected int modules = -1;
-
-	/**
-	 * AddWebModuleCommand constructor comment.
-	 * 
-	 * @param configuration a tomcat configuration
-	 * @param module a web module
-	 */
-	public AddWebModuleCommand(ITomcatConfigurationWorkingCopy configuration, WebModule module) {
-		super(configuration, Messages.configurationEditorActionAddWebModule);
-		this.module = module;
-	}
-
-	/**
-	 * Execute the command.
-	 */
-	public void execute() {
-		modules = configuration.getWebModules().size();
-		configuration.addWebModule(-1, module);
-	}
-
-	/**
-	 * Undo the command.
-	 */
-	public void undo() {
-		configuration.removeWebModule(modules);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/ConfigurationCommand.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/ConfigurationCommand.java
deleted file mode 100644
index 8dcc142..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/ConfigurationCommand.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.tomcat.core.internal.command;
-
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.commands.operations.AbstractOperation;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatConfigurationWorkingCopy;
-/**
- * Configuration command.
- */
-public abstract class ConfigurationCommand extends AbstractOperation {
-	protected ITomcatConfigurationWorkingCopy configuration;
-
-	/**
-	 * ConfigurationCommand constructor comment.
-	 * 
-	 * @param configuration a Tomcat configuration
-	 * @param label a label
-	 */
-	public ConfigurationCommand(ITomcatConfigurationWorkingCopy configuration, String label) {
-		super(label);
-		this.configuration = configuration;
-	}
-
-	public IStatus redo(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		return execute(monitor, info);
-	}
-
-	public abstract void execute();
-
-	public IStatus execute(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		execute();
-		return null;
-	}
-
-	public abstract void undo();
-
-	public IStatus undo(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		undo();
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/FixModuleContextRootTask.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/FixModuleContextRootTask.java
deleted file mode 100644
index 5717871..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/FixModuleContextRootTask.java
+++ /dev/null
@@ -1,73 +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.tomcat.core.internal.command;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jst.server.tomcat.core.internal.*;
-import org.eclipse.osgi.util.NLS;
-
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.IServerWorkingCopy;
-import org.eclipse.wst.server.core.TaskModel;
-import org.eclipse.wst.server.core.model.PublishOperation;
-/**
- * Task to fix a context root on a web module.
- */
-public class FixModuleContextRootTask extends PublishOperation {
-	protected int index;
-	protected WebModule module;
-	protected IModule webModule;
-	protected String contextRoot;
-
-	/**
-	 * FixModuleContextRootTask constructor.
-	 * 
-	 * @param webModule
-	 * @param index
-	 * @param contextRoot
-	 */
-	public FixModuleContextRootTask(IModule webModule, int index, String contextRoot) {
-		super(NLS.bind(Messages.fixModuleContextRoot, webModule.getName()), Messages.fixModuleContextRootDescription);
-		this.webModule = webModule;
-		this.index = index;
-		this.contextRoot = contextRoot;
-	}
-
-	/**
-	 * Execute the command.
-	 * 
-	 * @param monitor a progress monitor
-	 * @param info
-	 * @throws CoreException
-	 */
-	public void execute(IProgressMonitor monitor, IAdaptable info) throws CoreException {
-		IServerWorkingCopy wc = (IServerWorkingCopy) getTaskModel().getObject(TaskModel.TASK_SERVER);
-		TomcatServer server = (TomcatServer) wc.getAdapter(TomcatServer.class);
-		TomcatConfiguration configuration = server.getTomcatConfiguration();
-		if (configuration.getWebModules().size() <= index)
-			return;
-		module = (WebModule) configuration.getWebModules().get(index);
-		if (contextRoot != null && !contextRoot.startsWith("/"))
-			contextRoot = "/" + contextRoot;
-		configuration.modifyWebModule(index, module.getDocumentBase(), contextRoot, module.isReloadable());
-		wc.save(true, monitor);
-	}
-
-	public int getKind() {
-		return PREFERRED;
-	}
-
-	public int getOrder() {
-		return 0;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/ModifyMimeMappingCommand.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/ModifyMimeMappingCommand.java
deleted file mode 100644
index 34aa15f..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/ModifyMimeMappingCommand.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.jst.server.tomcat.core.internal.command;
-
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatConfigurationWorkingCopy;
-import org.eclipse.jst.server.tomcat.core.internal.Messages;
-import org.eclipse.jst.server.tomcat.core.internal.MimeMapping;
-/**
- * Command to change a mime type extension.
- */
-public class ModifyMimeMappingCommand extends ConfigurationCommand {
-	protected int index;
-	protected MimeMapping oldMap;
-	protected MimeMapping newMap;
-
-	/**
-	 * A command to modify a mime mapping.
-	 * 
-	 * @param configuration a tomcat configuration
-	 * @param index an index
-	 * @param map a mime mapping
-	 */
-	public ModifyMimeMappingCommand(ITomcatConfigurationWorkingCopy configuration, int index, MimeMapping map) {
-		super(configuration, Messages.configurationEditorActionModifyMimeMapping);
-		this.index = index;
-		newMap = map;
-	}
-
-	/**
-	 * Execute the command.
-	 */
-	public void execute() {
-		oldMap = (MimeMapping) configuration.getMimeMappings().get(index);
-		configuration.modifyMimeMapping(index, newMap);
-	}
-
-	/**
-	 * Undo the command.
-	 */
-	public void undo() {
-		configuration.modifyMimeMapping(index, oldMap);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/ModifyPortCommand.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/ModifyPortCommand.java
deleted file mode 100644
index 10ed13a..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/ModifyPortCommand.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.tomcat.core.internal.command;
-
-import java.util.Iterator;
-
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatConfigurationWorkingCopy;
-import org.eclipse.jst.server.tomcat.core.internal.Messages;
-import org.eclipse.wst.server.core.ServerPort;
-/**
- * Command to change the configuration port.
- */
-public class ModifyPortCommand extends ConfigurationCommand {
-	protected String id;
-	protected int port;
-	protected int oldPort;
-
-	/**
-	 * ModifyPortCommand constructor.
-	 * 
-	 * @param configuration a Tomcat configuration
-	 * @param id a port id
-	 * @param port new port number
-	 */
-	public ModifyPortCommand(ITomcatConfigurationWorkingCopy configuration, String id, int port) {
-		super(configuration, Messages.configurationEditorActionModifyPort);
-		this.id = id;
-		this.port = port;
-	}
-
-	/**
-	 * Execute the command.
-	 */
-	public void execute() {
-		// find old port number
-		Iterator iterator = configuration.getServerPorts().iterator();
-		while (iterator.hasNext()) {
-			ServerPort temp = (ServerPort) iterator.next();
-			if (id.equals(temp.getId()))
-				oldPort = temp.getPort();
-		}
-	
-		// make the change
-		configuration.modifyServerPort(id, port);
-	}
-
-	/**
-	 * Undo the command.
-	 */
-	public void undo() {
-		configuration.modifyServerPort(id, oldPort);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/ModifyWebModuleCommand.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/ModifyWebModuleCommand.java
deleted file mode 100644
index 69c3ffd..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/ModifyWebModuleCommand.java
+++ /dev/null
@@ -1,44 +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.tomcat.core.internal.command;
-
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatConfigurationWorkingCopy;
-import org.eclipse.jst.server.tomcat.core.internal.Messages;
-import org.eclipse.jst.server.tomcat.core.internal.WebModule;
-/**
- * Command to change a web module.
- */
-public class ModifyWebModuleCommand extends ConfigurationCommand {
-	protected int index;
-	protected WebModule oldModule;
-	protected WebModule newModule;
-
-	public ModifyWebModuleCommand(ITomcatConfigurationWorkingCopy configuration, int index, WebModule module) {
-		super(configuration, Messages.configurationEditorActionModifyWebModule);
-		this.index = index;
-		newModule = module;
-	}
-
-	/**
-	 * Execute the command.
-	 */
-	public void execute() {
-		oldModule = (WebModule) configuration.getWebModules().get(index);
-		configuration.modifyWebModule(index, newModule.getDocumentBase(), newModule.getPath(), newModule.isReloadable());
-	}
-
-	/**
-	 * Undo the command.
-	 */
-	public void undo() {
-		configuration.modifyWebModule(index, oldModule.getDocumentBase(), oldModule.getPath(), oldModule.isReloadable());
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/RemoveMimeMappingCommand.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/RemoveMimeMappingCommand.java
deleted file mode 100644
index d8c2758..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/RemoveMimeMappingCommand.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.jst.server.tomcat.core.internal.command;
-
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatConfigurationWorkingCopy;
-import org.eclipse.jst.server.tomcat.core.internal.Messages;
-import org.eclipse.jst.server.tomcat.core.internal.MimeMapping;
-/**
- * Command to remove a mime mapping.
- */
-public class RemoveMimeMappingCommand extends ConfigurationCommand {
-	protected int index;
-	protected MimeMapping mapping;
-
-	/**
-	 * RemoveMimeMappingCommand constructor.
-	 * 
-	 * @param configuration a tomcat configuration
-	 * @param index an index
-	 */
-	public RemoveMimeMappingCommand(ITomcatConfigurationWorkingCopy configuration, int index) {
-		super(configuration, Messages.configurationEditorActionRemoveMimeMapping);
-		this.index = index;
-	}
-
-	/**
-	 * Execute the command.
-	 */
-	public void execute() {
-		mapping = (MimeMapping) configuration.getMimeMappings().get(index);
-		configuration.removeMimeMapping(index);
-	}
-
-	/**
-	 * Undo the command.
-	 */
-	public void undo() {
-		configuration.addMimeMapping(index, mapping);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/RemoveWebModuleCommand.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/RemoveWebModuleCommand.java
deleted file mode 100644
index 3849d1c..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/RemoveWebModuleCommand.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.jst.server.tomcat.core.internal.command;
-
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatConfigurationWorkingCopy;
-import org.eclipse.jst.server.tomcat.core.internal.Messages;
-import org.eclipse.jst.server.tomcat.core.internal.WebModule;
-/**
- * Command to remove a web module.
- */
-public class RemoveWebModuleCommand extends ConfigurationCommand {
-	protected int index;
-	protected WebModule module;
-
-	/**
-	 * RemoveWebModuleCommand constructor comment.
-	 * 
-	 * @param configuration a tomcat configuration
-	 * @param index an index
-	 */
-	public RemoveWebModuleCommand(ITomcatConfigurationWorkingCopy configuration, int index) {
-		super(configuration, Messages.configurationEditorActionRemoveWebModule);
-		this.index = index;
-	}
-
-	/**
-	 * Execute the command.
-	 */
-	public void execute() {
-		module = (WebModule) configuration.getWebModules().get(index);
-		configuration.removeWebModule(index);
-	}
-
-	/**
-	 * Undo the command.
-	 */
-	public void undo() {
-		configuration.addWebModule(index, module);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/ServerCommand.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/ServerCommand.java
deleted file mode 100644
index 56e8ad2..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/ServerCommand.java
+++ /dev/null
@@ -1,54 +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.tomcat.core.internal.command;
-
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.commands.operations.AbstractOperation;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatServerWorkingCopy;
-import org.eclipse.jst.server.tomcat.core.internal.TomcatServer;
-/**
- * A command on a Tomcat server.
- */
-public abstract class ServerCommand extends AbstractOperation {
-	protected TomcatServer server;
-
-	/**
-	 * ServerCommand constructor comment.
-	 * 
-	 * @param server a Tomcat server
-	 * @param label a label
-	 */
-	public ServerCommand(ITomcatServerWorkingCopy server, String label) {
-		super(label);
-		this.server = (TomcatServer) server;
-	}
-	
-	public IStatus redo(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		return execute(monitor, info);
-	}
-
-	public abstract void execute();
-
-	public IStatus execute(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		execute();
-		return null;
-	}
-
-	public abstract void undo();
-
-	public IStatus undo(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-		undo();
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/SetDebugModeCommand.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/SetDebugModeCommand.java
deleted file mode 100644
index 02b56c4..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/SetDebugModeCommand.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.tomcat.core.internal.command;
-
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatServerWorkingCopy;
-import org.eclipse.jst.server.tomcat.core.internal.Messages;
-/**
- * Command to change the server debug mode.
- */
-public class SetDebugModeCommand extends ServerCommand {
-	protected boolean debug;
-	protected boolean oldDebug;
-
-	/**
-	 * SetDebugModeCommand constructor comment.
-	 * 
-	 * @param server a Tomcat server
-	 * @param debug <code>true</code> for debug mode
-	 */
-	public SetDebugModeCommand(ITomcatServerWorkingCopy server, boolean debug) {
-		super(server, Messages.serverEditorActionSetDebugMode);
-		this.debug = debug;
-	}
-
-	/**
-	 * Execute the command.
-	 */
-	public void execute() {
-		oldDebug = server.isDebug();
-		server.setDebug(debug);
-	}
-
-	/**
-	 * Undo the command.
-	 */
-	public void undo() {
-		server.setDebug(oldDebug);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/SetSecureCommand.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/SetSecureCommand.java
deleted file mode 100644
index e15429f..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/SetSecureCommand.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.tomcat.core.internal.command;
-
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatServerWorkingCopy;
-import org.eclipse.jst.server.tomcat.core.internal.Messages;
-/**
- * Command to change the server security option.
- */
-public class SetSecureCommand extends ServerCommand {
-	protected boolean secure;
-	protected boolean oldSecure;
-
-	/**
-	 * SetSecureCommand constructor comment.
-	 * 
-	 * @param server a Tomcat server
-	 * @param secure <code>true</code> for security on
-	 */
-	public SetSecureCommand(ITomcatServerWorkingCopy server, boolean secure) {
-		super(server, Messages.serverEditorActionSetSecure);
-		this.secure = secure;
-	}
-
-	/**
-	 * Execute the command.
-	 */
-	public void execute() {
-		oldSecure = server.isSecure();
-		server.setSecure(secure);
-	}
-
-	/**
-	 * Undo the command.
-	 */
-	public void undo() {
-		server.setSecure(oldSecure);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/SetTestEnvironmentCommand.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/SetTestEnvironmentCommand.java
deleted file mode 100644
index a2b48af..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/SetTestEnvironmentCommand.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.tomcat.core.internal.command;
-
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatServerWorkingCopy;
-import org.eclipse.jst.server.tomcat.core.internal.Messages;
-/**
- * Command to change the server debug mode.
- */
-public class SetTestEnvironmentCommand extends ServerCommand {
-	protected boolean te;
-	protected boolean oldTe;
-
-	/**
-	 * SetTestEnvironmentCommand constructor comment.
-	 * 
-	 * @param server a Tomcat server
-	 * @param te <code>true</code> for a test environment.
-	 */
-	public SetTestEnvironmentCommand(ITomcatServerWorkingCopy server, boolean te) {
-		super(server, Messages.serverEditorActionSetTestEnvironment);
-		this.te = te;
-	}
-
-	/**
-	 * Execute the command.
-	 */
-	public void execute() {
-		oldTe = server.isTestEnvironment();
-		server.setTestEnvironment(te);
-	}
-
-	/**
-	 * Undo the command.
-	 */
-	public void undo() {
-		server.setTestEnvironment(oldTe);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/SetWebModulePathCommand.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/SetWebModulePathCommand.java
deleted file mode 100644
index e40f1da..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/command/SetWebModulePathCommand.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.tomcat.core.internal.command;
-
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatConfigurationWorkingCopy;
-import org.eclipse.jst.server.tomcat.core.internal.Messages;
-import org.eclipse.jst.server.tomcat.core.internal.WebModule;
-/**
- * Command to modify the path of a Web module.
- */
-public class SetWebModulePathCommand extends ConfigurationCommand {
-	protected int index;
-	protected WebModule oldModule;
-	protected String path;
-
-	/**
-	 * SetWebModulePathCommand constructor comment.
-	 * 
-	 * @param configuration a tomcat configuration
-	 * @param index an index
-	 * @param contextRoot the context root
-	 */
-	public SetWebModulePathCommand(ITomcatConfigurationWorkingCopy configuration, int index, String contextRoot) {
-		super(configuration, Messages.configurationEditorActionEditWebModulePath);
-		this.index = index;
-		this.path = contextRoot;
-	}
-
-	/**
-	 * Execute the command.
-	 */
-	public void execute() {
-		oldModule = (WebModule) configuration.getWebModules().get(index);
-		configuration.removeWebModule(index);
-		
-		WebModule module = new WebModule(path, oldModule.getDocumentBase(), oldModule.getMemento(), oldModule.isReloadable());
-		configuration.addWebModule(index, module);
-	}
-
-	/**
-	 * Undo the command.
-	 */
-	public void undo() {
-		configuration.removeWebModule(index);
-		configuration.addWebModule(index, oldModule);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/Factory.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/Factory.java
deleted file mode 100644
index 27007aa..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/Factory.java
+++ /dev/null
@@ -1,128 +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.tomcat.core.internal.xml;
-
-import java.io.*;
-
-import org.w3c.dom.*;
-import org.xml.sax.InputSource;
-
-import org.eclipse.jst.server.tomcat.core.internal.Trace;
-/**
- * Factory for reading and writing from XML files.
- */
-public class Factory {
-	protected String packageName;
-	protected Document document;
-
-	public Factory() {
-		// do nothing
-	}
-	
-	protected Attr createAttribute(String s, Element element) {
-		Attr attr = document.createAttribute(s);
-		element.setAttributeNode(attr);
-		return attr;
-	}
-	
-	protected XMLElement createElement(int index, String s, Node node) {
-		if (index < 0)
-			return createElement(s, node);
-	
-		Element element = document.createElement(s);
-		try {
-			Node child = node.getFirstChild();
-			for (int i = 0; i < index; i++)
-				child = child.getNextSibling();
-	
-			node.insertBefore(element, child);
-		} catch (Exception e) {
-			node.appendChild(element);
-		}
-		return newInstance(element);
-	}
-	
-	protected XMLElement createElement(String s, Node node) {
-		Element element = document.createElement(s);
-		node.appendChild(element);
-		return newInstance(element);
-	}
-	
-	public byte[] getContents() throws IOException {
-		return XMLUtil.getContents(document);
-	}
-	
-	/**
-	 * 
-	 * @return org.w3c.dom.Document
-	 */
-	public Document getDocument() {
-		return document;
-	}
-
-	public String getPackageName() {
-		return packageName;
-	}
-
-	public XMLElement loadDocument(InputStream in) throws IOException {
-		try {
-			document = XMLUtil.getDocumentBuilder().parse(new InputSource(in));
-			Element element = document.getDocumentElement();
-			return newInstance(element);
-		} catch (Exception exception) {
-			Trace.trace(Trace.WARNING, "Error loading document", exception);
-			throw new IOException("Could not load document");
-		}
-	}
-
-	protected XMLElement newInstance(Element element) {
-		String s = element.getNodeName();
-		try {
-			// change "web-app:test" to "WebAppTest"
-			s = s.substring(0, 1).toUpperCase() + s.substring(1);
-			int i = s.indexOf("-");
-			while (i >= 0) {
-				s = s.substring(0, i) + s.substring(i+1, i+2).toUpperCase() + s.substring(i+2);
-				i = s.indexOf("-");
-			}
-			i = s.indexOf(":");
-			while (i >= 0) {
-				s = s.substring(0, i) + s.substring(i+1, i+2).toUpperCase() + s.substring(i+2);
-				i = s.indexOf(":");
-			}
-	
-			// add package name
-			if (packageName != null)
-				s = packageName + "." + s;
-			Class class1 = Class.forName(s);
-	
-			XMLElement xmlElement = (XMLElement) class1.newInstance();
-			xmlElement.setElement(element);
-			xmlElement.setFactory(this);
-			return xmlElement;
-		} catch (Exception exception) {
-			// ignore
-		}
-		return null;
-	}
-	
-	public void save(String filename) throws IOException {
-		XMLUtil.save(filename, document);
-	}
-	
-	public void setDocument(Document d) {
-		document = d;
-	}
-	
-	public void setPackageName(String s) {
-		packageName = s;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/XMLElement.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/XMLElement.java
deleted file mode 100644
index 5ac618f..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/XMLElement.java
+++ /dev/null
@@ -1,232 +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.tomcat.core.internal.xml;
-
-import org.w3c.dom.*;
-/**
- * An XML element.
- */
-public class XMLElement {
-	private Element xmlElement;
-	protected Factory factory;
-
-	public XMLElement() {
-		// do nothing
-	}
-
-	public Attr addAttribute(String s, String s1) {
-		Attr attr = factory.createAttribute(s, xmlElement);
-		attr.setValue(s1);
-		return attr;
-	}
-
-	public XMLElement createElement(int index, String s) {
-		return factory.createElement(index, s, xmlElement);
-	}
-
-	public XMLElement createElement(String s) {
-		return factory.createElement(s, xmlElement);
-	}
-
-	public XMLElement findElement(String s) {
-		NodeList nodelist = xmlElement.getElementsByTagName(s);
-		int i = nodelist == null ? 0 : nodelist.getLength();
-		for (int j = 0; j < i; j++) {
-			Node node = nodelist.item(j);
-			String s1 = node.getNodeName().trim();
-			if (s1.equals(s))
-				return factory.newInstance((Element) node);
-		}
-	
-		return createElement(s);
-	}
-
-	public XMLElement findElement(String s, int i) {
-		NodeList nodelist = xmlElement.getElementsByTagName(s);
-		int j = nodelist == null ? 0 : nodelist.getLength();
-		for (int k = 0; k < j; k++) {
-			Node node = nodelist.item(k);
-			String s1 = node.getNodeName().trim();
-			if (s1.equals(s) && k == i)
-				return factory.newInstance((Element) node);
-		}
-	
-		return createElement(s);
-	}
-
-	public String getAttributeValue(String s) {
-		Attr attr = xmlElement.getAttributeNode(s);
-		if (attr != null)
-			return attr.getValue();
-		
-		return null;
-	}
-	
-	public String getElementName() {
-		return xmlElement.getNodeName();
-	}
-	
-	public String getElementValue() {
-		return getElementValue(xmlElement);
-	}
-	
-	protected static String getElementValue(Element element) {
-		String s = element.getNodeValue();
-		if (s != null)
-			return s;
-		NodeList nodelist = element.getChildNodes();
-		for (int i = 0; i < nodelist.getLength(); i++)
-			if (nodelist.item(i) instanceof Text)
-				return ((Text) nodelist.item(i)).getData();
-	
-		return null;
-	}
-	
-	public Element getSubElement(String s) {
-		NodeList nodelist = xmlElement.getElementsByTagName(s);
-		int i = nodelist == null ? 0 : nodelist.getLength();
-		for (int j = 0; j < i; j++) {
-			Node node = nodelist.item(j);
-			String s1 = node.getNodeName().trim();
-			if (s1.equals(s))
-				return (Element) node;
-		}
-	
-		return null;
-	}
-
-	public String getSubElementValue(String s) {
-		Element element = getSubElement(s);
-		if (element == null)
-			return null;
-	
-		String value = getElementValue(element);
-		if (value == null)
-			return null;
-		
-		return value.trim();
-	}
-
-	public boolean removeAttribute(String s) {
-		try {
-			xmlElement.removeAttribute(s);
-			return true;
-		} catch (Exception ex) {
-			return false;
-		}
-	}
-
-	public boolean removeElement(String s, int i) {
-		NodeList nodelist = xmlElement.getElementsByTagName(s);
-		int j = nodelist == null ? 0 : nodelist.getLength();
-		for (int k = 0; k < j; k++) {
-			Node node = nodelist.item(k);
-			String s1 = node.getNodeName().trim();
-			if (s1.equals(s) && k == i) {
-				xmlElement.removeChild(node);
-				return true;
-			}
-		}
-	
-		return false;
-	}
-
-	public void setAttributeValue(String s, String s1) {
-		Attr attr = xmlElement.getAttributeNode(s);
-		if (attr == null)
-			attr = addAttribute(s, s1);
-		else
-			attr.setValue(s1);
-	}
-
-	void setElement(Element element) {
-		xmlElement = element;
-	}
-
-	protected static void setElementValue(Element element, String value) {
-		String s = element.getNodeValue();
-		if (s != null) {
-			element.setNodeValue(value);
-			return;
-		}
-		NodeList nodelist = element.getChildNodes();
-		for (int i = 0; i < nodelist.getLength(); i++)
-			if (nodelist.item(i) instanceof Text) {
-				Text text = (Text) nodelist.item(i);
-				text.setData(value);
-				return;
-			}
-	
-		return;
-	}
-
-	void setFactory(Factory factory1) {
-		factory = factory1;
-	}
-
-	public void setSubElementValue(String s, String value) {
-		Element element = getSubElement(s);
-		if (element == null) {
-			element = factory.document.createElement(s);
-			element.appendChild(factory.document.createTextNode("temp"));
-			xmlElement.appendChild(element);
-		}
-		setElementValue(element, value);
-	}
-
-	public int sizeOfElement(String s) {
-		NodeList nodelist = xmlElement.getElementsByTagName(s);
-		int i = nodelist == null ? 0 : nodelist.getLength();
-		return i;
-	}
-
-	public void updateElementValue(String s) {
-		try {
-			xmlElement.setNodeValue(s);
-		} catch (DOMException ex) {
-			NodeList nodelist = xmlElement.getChildNodes();
-			int i = nodelist == null ? 0 : nodelist.getLength();
-			if (i > 0) {
-				for (int j = 0; j < i; j++)
-					if (nodelist.item(j) instanceof Text) {
-						((Text) nodelist.item(j)).setData(s);
-						return;
-					}
-			} else {
-				xmlElement.appendChild(factory.document.createTextNode(s));
-			}
-		}
-	}
-	
-	public boolean hasChildNodes() {
-		return xmlElement.hasChildNodes();
-	}
-	
-	public void removeChildren()
-	{
-		while (xmlElement.hasChildNodes()) {
-			xmlElement.removeChild(xmlElement.getFirstChild());
-		}
-	}
-	
-	public void copyChildrenTo(XMLElement destination) {
-		NodeList nodelist = xmlElement.getChildNodes();
-		int len = nodelist == null ? 0 : nodelist.getLength();
-		for (int i = 0; i < len; i++) {
-			Node node = nodelist.item(i);
-			destination.importNode(node, true);
-		}
-	}
-	
-	void importNode(Node node, boolean deep) {
-		xmlElement.appendChild(xmlElement.getOwnerDocument().importNode(node, deep));
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/XMLUtil.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/XMLUtil.java
deleted file mode 100644
index 76d96f6..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/XMLUtil.java
+++ /dev/null
@@ -1,390 +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.tomcat.core.internal.xml;
-
-import java.io.*;
-import java.util.*;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-
-import org.eclipse.jst.server.tomcat.core.internal.Trace;
-import org.w3c.dom.*;
-import org.xml.sax.EntityResolver;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-/**
- * Utility class to create and read XML documents.
- */
-public class XMLUtil {
-	private static DocumentBuilder documentBuilder;
-
-	/**
-	 * XMLUtil constructor comment.
-	 */
-	public XMLUtil() {
-		super();
-	}
-	
-	public static DocumentBuilder getDocumentBuilder() {
-		if (documentBuilder == null)
-			try {
-				DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
-				factory.setValidating(false);
-				factory.setNamespaceAware(false);
-				factory.setExpandEntityReferences(false);
-				//factory.setAttribute("http://apache.org/xml/features/nonvalidating/load-external-dtd", new Boolean(false));
-				documentBuilder = factory.newDocumentBuilder();
-				documentBuilder.setEntityResolver(new EntityResolver() {
-					public InputSource resolveEntity(String publicId, String systemId) throws SAXException, IOException {
-						return new InputSource(new ByteArrayInputStream(new byte[0]));
-					}
-				});
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "Rrror creating document builder");
-			}
-
-		return documentBuilder;
-	}
-
-	/**
-	 * Create a child of the given node at the given index.
-	 *
-	 * @param doc a document
-	 * @param element an element
-	 * @param index an index
-	 * @param nodeName a node name
-	 * @return org.w3c.dom.Element
-	 */
-	public static Element createChildElement(Document doc, Element element, int index, String nodeName) {
-		Element element2 = doc.createElement(nodeName);
-		try {
-			NodeList childList = element.getElementsByTagName(nodeName);
-			Node child = childList.item(index);
-			element.insertBefore(element2, child);
-		} catch (Exception e) {
-			element.appendChild(element2);
-		}
-		return element2;
-	}
-
-	/**
-	 * Create a child of the given node.
-	 *
-	 * @param doc a document
-	 * @param node a node
-	 * @param nodeName a node name
-	 * @return org.w3c.dom.Element
-	 */
-	public static Element createChildElement(Document doc, Node node, String nodeName) {
-		Element element = doc.createElement(nodeName);
-		node.appendChild(element);
-		return element;
-	}
-
-	/*
-	 * Set the value of the given node to the given text.
-	 */
-	public static void createTextChildElement(Document doc, Node node, String name, String value) {
-		Element element = createChildElement(doc, node, name);
-		element.appendChild(doc.createTextNode(value));
-	}
-
-	/**
-	 * Return the attribute value.
-	 * @return java.lang.String
-	 * @param element org.w3c.dom.Element
-	 * @param attr java.lang.String
-	 */
-	public static String getAttributeValue(Element element, String attr) {
-		return element.getAttributeNode(attr).getValue();
-	}
-
-	public static byte[] getContents(Document document) throws IOException {
-		ByteArrayOutputStream out = new ByteArrayOutputStream();
-		try {
-			print(new PrintStream(out, true, "UTF-8"), document);
-			return out.toByteArray();
-		} catch (Exception ex) {
-			throw new IOException(ex.getLocalizedMessage());
-		} finally {
-			if (out != null)
-				try {
-					out.close();
-				} catch (Exception e) {
-					// ignore
-				}
-		}
-	}
-
-	protected static String getDocumentTypeData(DocumentType doctype) {
-		String data = doctype.getName();
-		if (doctype.getPublicId() != null) {
-			data += " PUBLIC \"" + doctype.getPublicId() + "\"";
-			String systemId = doctype.getSystemId();
-			if (systemId == null)
-				systemId = "";
-			data += " \"" + systemId + "\"";
-		} else
-			data += " SYSTEM \"" + doctype.getSystemId() + "\"";
-	
-		return data;
-	}
-
-	/**
-	 * Return an iterator for the subelements.
-	 * @return java.util.Iterator
-	 * @param element org.w3c.dom.Element
-	 * @param name java.lang.String
-	 */
-	public static Iterator getNodeIterator(Element element, String name) {
-		List list = new ArrayList();
-		NodeList nodeList = element.getElementsByTagName(name);
-	
-		int length = nodeList.getLength();
-		for (int i = 0; i < length; i++)
-			list.add(nodeList.item(i));
-	
-		return list.iterator();
-	}
-
-	/**
-	 * Get the value of this node. Will return "" instead of null.
-	 * @return java.lang.String
-	 * @param node org.w3c.dom.Node
-	 */
-	public static String getNodeValue(Node node) {
-		NodeList nodeList = node.getChildNodes();
-	
-		int length = nodeList.getLength();
-		for (int i = 0; i < length; i++) {
-			Node n = nodeList.item(i);
-			if (n instanceof Text) {
-				Text t = (Text) n;
-				return t.getNodeValue();
-			}
-		}
-		return "";
-	}
-
-	/*
-	 * Get the value of a subnode.
-
-	 * @return java.lang.String
-	 */
-	public static String getSubNodeValue(Element element, String name) {
-		NodeList nodeList = element.getElementsByTagName(name);
-		return getNodeValue(nodeList.item(0)).trim();
-	}
-
-	/*
-	 * Insert the given text.
-	 */
-	public static void insertText(Document doc, Node node, String text) {
-		node.appendChild(doc.createCDATASection(text));
-	}
-
-	protected static String normalize(String s) {
-		StringBuffer stringbuffer = new StringBuffer();
-		int i = s == null ? 0 : s.length();
-		for (int j = 0; j < i; j++) {
-			char c = s.charAt(j);
-			switch (c) {
-				case 60 : /* '<' */
-					stringbuffer.append("&lt;");
-					break;
-	
-				case 62 : /* '>' */
-					stringbuffer.append("&gt;");
-					break;
-	
-				case 38 : /* '&' */
-					stringbuffer.append("&amp;");
-					break;
-	
-				case 34 : /* '"' */
-					stringbuffer.append("&quot;");
-					break;
-	
-				case 10 : /* '\n' */
-				case 13 : /* '\r' */
-				default :
-					stringbuffer.append(c);
-					break;
-	
-			}
-		}
-	
-		return stringbuffer.toString();
-	}
-
-	protected static void print(PrintStream out, Node node) {
-		if (node == null)
-			return;
-		short type = node.getNodeType();
-		switch (type) {
-			case Node.DOCUMENT_NODE: {
-				out.println("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
-				//out.println("<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n");
-				NodeList nodelist = node.getChildNodes();
-				int size = nodelist.getLength();
-				for (int i = 0; i < size; i++)
-					print(out, nodelist.item(i));
-				break;
-			}
-	
-			case Node.DOCUMENT_TYPE_NODE: {
-				DocumentType docType = (DocumentType) node;
-				out.print("<!DOCTYPE " + getDocumentTypeData(docType) + ">\n");
-				break;
-			}
-	
-			case Node.ELEMENT_NODE: {
-				out.print('<');
-				out.print(node.getNodeName());
-				NamedNodeMap map = node.getAttributes();
-				if (map != null) {
-					int size = map.getLength();
-					for (int i = 0; i < size; i++) {
-						Attr attr = (Attr) map.item(i);
-						out.print(' ');
-						out.print(attr.getNodeName());
-						out.print("=\"");
-						out.print(normalize(attr.getNodeValue()));
-						out.print('"');
-					}
-				}
-	
-				if (!node.hasChildNodes())
-					out.print("/>");
-				else {
-					out.print('>');
-					NodeList nodelist = node.getChildNodes();
-					int numChildren = nodelist.getLength();
-					for (int i = 0; i < numChildren; i++)
-						print(out, nodelist.item(i));
-	
-					out.print("</");
-					out.print(node.getNodeName());
-					out.print('>');
-				}
-				break;
-			}
-	
-			case Node.ENTITY_REFERENCE_NODE: {
-				NodeList nodelist = node.getChildNodes();
-				if (nodelist != null) {
-					int size = nodelist.getLength();
-					for (int i = 0; i < size; i++)
-						print(out, nodelist.item(i));
-	
-				}
-				break;
-			}
-	
-			case Node.CDATA_SECTION_NODE: {
-				out.print(normalize(node.getNodeValue()));
-				break;
-			}
-	
-			case Node.TEXT_NODE: {
-				out.print(normalize(node.getNodeValue()));
-				break;
-			}
-	
-			case Node.PROCESSING_INSTRUCTION_NODE: {
-				out.print("<?");
-				out.print(node.getNodeName());
-				String s = node.getNodeValue();
-				if (s != null && s.length() > 0) {
-					out.print(' ');
-					out.print(s);
-				}
-				out.print("?>");
-				break;
-			}
-	
-			case Node.COMMENT_NODE: {
-				out.print("<!--");
-				out.print(node.getNodeValue());
-				out.print("-->");
-				break;
-			}
-	
-			default: {
-				out.print(normalize(node.getNodeValue()));
-				break;
-			}
-		}
-		out.flush();
-	}
-
-	public static void save(String filename, Document document) throws IOException {
-		PrintStream out = null;
-		try {
-			out = new PrintStream(new BufferedOutputStream(new FileOutputStream(filename)), true, "UTF-8");
-			//traceNode(document, "");
-			print(out, document);
-		} catch (Exception ex) {
-			throw new IOException(ex.getLocalizedMessage());
-		} finally {
-			if (out != null)
-				try {
-					out.close();
-				} catch (Exception e) {
-					// ignore
-				}
-		}
-	}
-
-	/*
-	 * Set the value of the subnode
-	 *
-	 * @param name java.lang.String
-	 * @param value java.lang.String
-	 */
-	public static void setNodeValue(Node node, String name, String value) {
-		String s = node.getNodeValue();
-		if (s != null) {
-			node.setNodeValue(value);
-			return;
-		}
-		NodeList nodelist = node.getChildNodes();
-		for (int i = 0; i < nodelist.getLength(); i++) {
-			if (nodelist.item(i) instanceof Text) {
-				Text text = (Text) nodelist.item(i);
-				text.setData(value);
-				return;
-			}
-		}
-		return;
-	}
-
-	public static String toString(Document document) {
-		PrintStream out = null;
-		try {
-			ByteArrayOutputStream baos = new ByteArrayOutputStream(2048);
-			out = new PrintStream(baos);
-			print(out, document);
-			return new String(baos.toByteArray(), "UTF-8");
-		} catch (Exception ex) {
-			// ignore
-		} finally {
-			if (out != null)
-				try {
-					out.close();
-				} catch (Exception e) {
-					// ignore
-				}
-		}
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server32/Connector.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server32/Connector.java
deleted file mode 100644
index a0324f2..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server32/Connector.java
+++ /dev/null
@@ -1,37 +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.tomcat.core.internal.xml.server32;
-
-import org.eclipse.jst.server.tomcat.core.internal.xml.*;
-/**
- * 
- */
-public class Connector extends XMLElement {
-	public Connector() {
-		// do nothing
-	}
-	
-	public String getClassName() {
-		return getAttributeValue("className");
-	}
-	
-	public Parameter getParameter(int index) {
-		return (Parameter) findElement("Parameter", index);
-	}
-	
-	public int getParameterCount() {
-		return sizeOfElement("Parameter");
-	}
-	
-	public void setClassName(String className) {
-		setAttributeValue("className", className);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server32/Context.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server32/Context.java
deleted file mode 100644
index b5568e8..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server32/Context.java
+++ /dev/null
@@ -1,77 +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.tomcat.core.internal.xml.server32;
-
-import org.eclipse.jst.server.tomcat.core.internal.xml.*;
-/**
- * 
- */
-public class Context extends XMLElement {
-	public Context() {
-		// do nothing
-	}
-	
-	public String getCrossContext() {
-		return getAttributeValue("crossContext");
-	}
-	
-	public String getDebug() {
-		return getAttributeValue("debug");
-	}
-	
-	public String getDocBase() {
-		return getAttributeValue("docBase");
-	}
-	
-	public String getPath() {
-		return getAttributeValue("path");
-	}
-	
-	public String getReloadable() {
-		return getAttributeValue("reloadable");
-	}
-	
-	public String getSource() {
-		return getAttributeValue("source");
-	}
-	
-	public String getTrusted() {
-		return getAttributeValue("trusted");
-	}
-	
-	public void setCrossContext(String crossContext) {
-		setAttributeValue("crossContext", crossContext);
-	}
-	
-	public void setDebug(String debug) {
-		setAttributeValue("debug", debug);
-	}
-	
-	public void setDocBase(String docBase) {
-		setAttributeValue("docBase", docBase);
-	}
-	
-	public void setPath(String path) {
-		setAttributeValue("path", path);
-	}
-	
-	public void setReloadable(String reloadable) {
-		setAttributeValue("reloadable", reloadable);
-	}
-	
-	public void setSource(String source) {
-		setAttributeValue("source", source);
-	}
-	
-	public void setTrusted(String trusted) {
-		setAttributeValue("trusted", trusted);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server32/ContextManager.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server32/ContextManager.java
deleted file mode 100644
index e7829d1..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server32/ContextManager.java
+++ /dev/null
@@ -1,77 +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.tomcat.core.internal.xml.server32;
-
-import org.eclipse.jst.server.tomcat.core.internal.xml.*;
-/**
- * 
- */
-public class ContextManager extends XMLElement {
-	public ContextManager() {
-		// do nothing
-	}
-	
-	public Connector getConnector(int index) {
-		return (Connector) findElement("Connector", index);
-	}
-	
-	public int getConnectorCount() {
-		return sizeOfElement("Connector");
-	}
-	
-	public Context getContext(int index) {
-		return (Context) findElement("Context", index);
-	}
-	
-	public int getContextCount() {
-		return sizeOfElement("Context");
-	}
-	
-	public int getContextInterceptorCount() {
-		return sizeOfElement("ContextInterceptor");
-	}
-	
-	public String getDebug() {
-		return getAttributeValue("debug");
-	}
-	
-	public String getHome() {
-		return getAttributeValue("home");
-	}
-	
-	public int getRequestInterceptorCount() {
-		return sizeOfElement("RequestInterceptor");
-	}
-	
-	public String getShowDebugInfo() {
-		return getAttributeValue("showDebugInfo");
-	}
-	
-	public String getWorkDir() {
-		return getAttributeValue("workDir");
-	}
-	
-	public void setDebug(String debug) {
-		setAttributeValue("debug", debug);
-	}
-	
-	public void setHome(String home) {
-		setAttributeValue("home", home);
-	}
-	
-	public void setShowDebugInfo(String showDebugInfo) {
-		setAttributeValue("showDebugInfo", showDebugInfo);
-	}
-	
-	public void setWorkDir(String workDir) {
-		setAttributeValue("workDir", workDir);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server32/Parameter.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server32/Parameter.java
deleted file mode 100644
index 1608cf1..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server32/Parameter.java
+++ /dev/null
@@ -1,37 +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.tomcat.core.internal.xml.server32;
-
-import org.eclipse.jst.server.tomcat.core.internal.xml.*;
-/**
- * 
- */
-public class Parameter extends XMLElement {
-	public Parameter() {
-		// do nothing
-	}
-	
-	public String getName() {
-		return getAttributeValue("name");
-	}
-	
-	public String getValue() {
-		return getAttributeValue("value");
-	}
-	
-	public void setName(String name) {
-		setAttributeValue("name", name);
-	}
-	
-	public void setValue(String value) {
-		setAttributeValue("value", value);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server32/Server.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server32/Server.java
deleted file mode 100644
index 5d8cdd0..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server32/Server.java
+++ /dev/null
@@ -1,37 +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.tomcat.core.internal.xml.server32;
-
-import org.eclipse.jst.server.tomcat.core.internal.xml.*;
-/**
- * 
- */
-public class Server extends XMLElement {
-	public Server() {
-		// do nothing
-	}
-	
-	public ContextManager getContextManager() {
-		return (ContextManager) findElement("ContextManager");
-	}
-	
-	public int getLoggerCount() {
-		return sizeOfElement("Logger");
-	}
-
-	public String getName() {
-		return getAttributeValue("name");
-	}
-	
-	public void setName(String name) {
-		setAttributeValue("name", name);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Connector.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Connector.java
deleted file mode 100644
index 79bf6c9..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Connector.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.tomcat.core.internal.xml.server40;
-
-import org.eclipse.jst.server.tomcat.core.internal.xml.*;
-/**
- * 
- */
-public class Connector extends XMLElement {
-	public Connector() {
-		// do nothing
-	}
-
-	public String getAcceptCount() {
-		return getAttributeValue("acceptCount");
-	}
-
-	public String getClassName() {
-		return getAttributeValue("className");
-	}
-
-	public String getDebug() {
-		return getAttributeValue("debug");
-	}
-
-	public String getMaxProcessors() {
-		return getAttributeValue("maxProcessors");
-	}
-
-	public String getMinProcessors() {
-		return getAttributeValue("minProcessors");
-	}
-
-	public String getPort() {
-		return getAttributeValue("port");
-	}
-	
-	public String getSecure() {
-		return getAttributeValue("secure");
-	}
-	
-	public String getProtocol() {
-		return getAttributeValue("protocol");
-	}
-
-	public String getProtocolHandlerClassName() {
-		return getAttributeValue("protocolHandlerClassName");
-	}
-
-	public void setAcceptCount(String acceptCount) {
-		setAttributeValue("acceptCount", acceptCount);
-	}
-
-	public void setClassName(String className) {
-		setAttributeValue("className", className);
-	}
-
-	public void setDebug(String debug) {
-		setAttributeValue("debug", debug);
-	}
-
-	public void setMaxProcessors(String maxProcessors) {
-		setAttributeValue("maxProcessors", maxProcessors);
-	}
-
-	public void setMinProcessors(String minProcessors) {
-		setAttributeValue("minProcessors", minProcessors);
-	}
-
-	public void setPort(String port) {
-		setAttributeValue("port", port);
-	}
-	
-	public void setProtocolHandlerClassName(String protocolHandlerClassName) {
-		setAttributeValue("protocolHandlerClassName", protocolHandlerClassName);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Context.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Context.java
deleted file mode 100644
index b597c89..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Context.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.tomcat.core.internal.xml.server40;
-
-import org.eclipse.jst.server.tomcat.core.internal.xml.*;
-/**
- * 
- */
-public class Context extends XMLElement {
-	public Context() {
-		// do nothing
-	}
-
-	public String getDebug() {
-		return getAttributeValue("debug");
-	}
-
-	public String getDocBase() {
-		return getAttributeValue("docBase");
-	}
-
-	public String getPath() {
-		return getAttributeValue("path");
-	}
-
-	public String getReloadable() {
-		return getAttributeValue("reloadable");
-	}
-
-	public String getSource() {
-		return getAttributeValue("source");
-	}
-
-	public void setDebug(String debug) {
-		setAttributeValue("debug", debug);
-	}
-
-	public void setDocBase(String docBase) {
-		setAttributeValue("docBase", docBase);
-	}
-
-	public void setPath(String path) {
-		setAttributeValue("path", path);
-	}
-
-	public void setReloadable(String reloadable) {
-		setAttributeValue("reloadable", reloadable);
-	}
-
-	public void setSource(String source) {
-		setAttributeValue("source", source);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Engine.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Engine.java
deleted file mode 100644
index 166ce0b..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Engine.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.tomcat.core.internal.xml.server40;
-
-import org.eclipse.jst.server.tomcat.core.internal.xml.*;
-/**
- * 
- */
-public class Engine extends XMLElement {
-	public Engine() {
-		// do nothing
-	}
-	
-	public String getAppBase() {
-		return getAttributeValue("appBase");
-	}
-	
-	public String getClassName() {
-		return getAttributeValue("className");
-	}
-	
-	public String getDebug() {
-		return getAttributeValue("debug");
-	}
-	
-	public String getDefaultHost() {
-		return getAttributeValue("defaultHost");
-	}
-	
-	public Host getHost() {
-		return (Host) findElement("Host");
-	}
-	
-	public String getName() {
-		return getAttributeValue("name");
-	}
-	
-	public void setAppBase(String appBase) {
-		setAttributeValue("appBase", appBase);
-	}
-	
-	public void setClassName(String className) {
-		setAttributeValue("className", className);
-	}
-	
-	public void setDebug(String debug) {
-		setAttributeValue("debug", debug);
-	}
-	
-	public void setDefaultHost(String defaultHost) {
-		setAttributeValue("defaultHost", defaultHost);
-	}
-	
-	public void setName(String name) {
-		setAttributeValue("name", name);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Host.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Host.java
deleted file mode 100644
index dc91098..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Host.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.tomcat.core.internal.xml.server40;
-
-import org.eclipse.jst.server.tomcat.core.internal.xml.*;
-/**
- * 
- */
-public class Host extends XMLElement {
-	public Host() {
-		// do nothing
-	}
-	
-	public String getAppBase() {
-		return getAttributeValue("appBase");
-	}
-	
-	public Context getContext(int index) {
-		return (Context) findElement("Context", index);
-	}
-	
-	public int getContextCount() {
-		return sizeOfElement("Context");
-	}
-	
-	public String getDebug() {
-		return getAttributeValue("debug");
-	}
-	
-	public String getName() {
-		return getAttributeValue("name");
-	}
-	
-	public void setAppBase(String appBase) {
-		setAttributeValue("appBase", appBase);
-	}
-	
-	public void setDebug(String debug) {
-		setAttributeValue("debug", debug);
-	}
-	
-	public void setName(String name) {
-		setAttributeValue("name", name);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Listener.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Listener.java
deleted file mode 100644
index 97378bc..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Listener.java
+++ /dev/null
@@ -1,37 +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.tomcat.core.internal.xml.server40;
-
-import org.eclipse.jst.server.tomcat.core.internal.xml.*;
-/**
- * 
- */
-public class Listener extends XMLElement {
-	public Listener() {
-		// do nothing
-	}
-
-	public String getClassName() {
-		return getAttributeValue("className");
-	}
-
-	public String getDebug() {
-		return getAttributeValue("debug");
-	}
-
-	public void setClassName(String className) {
-		setAttributeValue("className", className);
-	}
-
-	public void setDebug(String debug) {
-		setAttributeValue("debug", debug);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Server.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Server.java
deleted file mode 100644
index 097111d..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Server.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.tomcat.core.internal.xml.server40;
-
-import org.eclipse.jst.server.tomcat.core.internal.xml.*;
-/**
- * 
- */
-public class Server extends XMLElement {
-	public Server() {
-		// do nothing
-	}
-
-	public String getDebug() {
-		return getAttributeValue("debug");
-	}
-
-	public String getName() {
-		return getAttributeValue("name");
-	}
-	
-	public String getPort() {
-		return getAttributeValue("port");
-	}
-	
-	public Service getService(int index) {
-		return (Service) findElement("Service", index);
-	}
-	
-	public int getServiceCount() {
-		return sizeOfElement("Service");
-	}
-	
-	public String getShutdown() {
-		return getAttributeValue("shutdown");
-	}
-	
-	public void setDebug(String debug) {
-		setAttributeValue("debug", debug);
-	}
-	
-	public void setName(String name) {
-		setAttributeValue("name", name);
-	}
-	
-	public void setPort(String port) {
-		setAttributeValue("port", port);
-	}
-	
-	public void setShutdown(String shutdown) {
-		setAttributeValue("shutdown", shutdown);
-	}
-
-	public Listener getListener(int index) {
-		return (Listener) findElement("Listener", index);
-	}
-	
-	public int getListenerCount() {
-		return sizeOfElement("Listener");
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Service.java b/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Service.java
deleted file mode 100644
index cc24a4a..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/tomcatcore/org/eclipse/jst/server/tomcat/core/internal/xml/server40/Service.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.tomcat.core.internal.xml.server40;
-
-import org.eclipse.jst.server.tomcat.core.internal.xml.*;
-/**
- * 
- */
-public class Service extends XMLElement {
-	public Service() {
-		// do nothing
-	}
-
-	public Connector getConnector(int index) {
-		return (Connector) findElement("Connector", index);
-	}
-
-	public int getConnectorCount() {
-		return sizeOfElement("Connector");
-	}
-
-	public Engine getEngine() {
-		return (Engine) findElement("Engine");
-	}
-
-	public String getName() {
-		return getAttributeValue("name");
-	}
-
-	public void setName(String name) {
-		setAttributeValue("name", name);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.core/verifyInstall.properties b/plugins/org.eclipse.jst.server.tomcat.core/verifyInstall.properties
deleted file mode 100644
index 02a559c..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.core/verifyInstall.properties
+++ /dev/null
@@ -1,18 +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
-###############################################################################
-
-# this file must not be translated
-
-verify32install=lib/jasper.jar,lib/servlet.jar,bin,conf,webapps
-verify40install=bin/bootstrap.jar,conf,webapps
-verify41install=bin/bootstrap.jar,conf,webapps
-verify50install=bin/bootstrap.jar,conf,webapps
-verify55install=bin/bootstrap.jar,conf,webapps
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/.classpath b/plugins/org.eclipse.jst.server.tomcat.ui/.classpath
deleted file mode 100644
index b0cfa1b..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="tomcatui/"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/.cvsignore b/plugins/org.eclipse.jst.server.tomcat.ui/.cvsignore
deleted file mode 100644
index dc63549..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/.cvsignore
+++ /dev/null
@@ -1,5 +0,0 @@
-bin
-build.xml
-org.eclipse.jst.server.tomcat.ui_3.0.0.jar
-tomcatui.jar
-temp.folder
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/.options b/plugins/org.eclipse.jst.server.tomcat.ui/.options
deleted file mode 100644
index d88b03b..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/.options
+++ /dev/null
@@ -1,4 +0,0 @@
-# Debugging options for the org.eclipse.jst.server.tomcat.ui plugin
-
-# Turn on general debugging
-org.eclipse.jst.server.tomcat.ui/debug=true
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/.project b/plugins/org.eclipse.jst.server.tomcat.ui/.project
deleted file mode 100644
index 731f756..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.jst.server.tomcat.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.tomcat.ui/META-INF/MANIFEST.MF b/plugins/org.eclipse.jst.server.tomcat.ui/META-INF/MANIFEST.MF
deleted file mode 100644
index d33fad0..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,23 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.jst.server.tomcat.ui; singleton:=true
-Bundle-Version: 1.0.0
-Bundle-Activator: org.eclipse.jst.server.tomcat.ui.internal.TomcatUIPlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.jst.server.tomcat.ui.internal;x-internal:=true,
- org.eclipse.jst.server.tomcat.ui.internal.editor;x-internal:=true
-Require-Bundle: org.eclipse.core.runtime,
- org.eclipse.core.expressions,
- org.eclipse.ui,
- org.eclipse.ui.ide,
- org.eclipse.ui.forms,
- org.eclipse.debug.ui,
- org.eclipse.jdt.debug.ui,
- org.eclipse.jdt.launching,
- org.eclipse.wst.server.core,
- org.eclipse.wst.server.ui,
- org.eclipse.jst.server.core,
- org.eclipse.jst.server.tomcat.core
-Eclipse-AutoStart: true
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/build.properties b/plugins/org.eclipse.jst.server.tomcat.ui/build.properties
deleted file mode 100644
index a87998a..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/build.properties
+++ /dev/null
@@ -1,20 +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/
-bin.excludes = bin/**,\
-               @dot/**,\
-               temp.folder/**
-src.includes = build.properties
-source.. = tomcatui/
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/mime_extension.gif b/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/mime_extension.gif
deleted file mode 100644
index c585010..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/mime_extension.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/mime_mapping.gif b/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/mime_mapping.gif
deleted file mode 100644
index 0a8e4bf..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/mime_mapping.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/port.gif b/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/port.gif
deleted file mode 100644
index 7a354b7..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/port.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/project_missing.gif b/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/project_missing.gif
deleted file mode 100644
index 0cb4c16..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/project_missing.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/tomcat.gif b/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/tomcat.gif
deleted file mode 100644
index a857c0f..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/tomcat.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/web_module.gif b/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/web_module.gif
deleted file mode 100644
index bf20f70..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/icons/obj16/web_module.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/icons/wizban/tomcat_wiz.gif b/plugins/org.eclipse.jst.server.tomcat.ui/icons/wizban/tomcat_wiz.gif
deleted file mode 100644
index 63a9599..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/icons/wizban/tomcat_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/plugin.properties b/plugins/org.eclipse.jst.server.tomcat.ui/plugin.properties
deleted file mode 100644
index 3718472..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/plugin.properties
+++ /dev/null
@@ -1,14 +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
-###############################################################################
-pluginName=Apache Tomcat UI Support
-providerName=Eclipse.org
-
-configurationEditorWebModulesPage=Modules
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/plugin.xml b/plugins/org.eclipse.jst.server.tomcat.ui/plugin.xml
deleted file mode 100644
index eafb85b..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/plugin.xml
+++ /dev/null
@@ -1,140 +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.tomcat.32"
-         icon="icons/obj16/tomcat.gif"
-         typeIds="org.eclipse.jst.server.tomcat.runtime.32"/>
-      <image
-         id="org.eclipse.jst.server.tomcat.40"
-         icon="icons/obj16/tomcat.gif"
-         typeIds="org.eclipse.jst.server.tomcat.runtime.40"/>
-      <image
-         id="org.eclipse.jst.server.tomcat.41"
-         icon="icons/obj16/tomcat.gif"
-         typeIds="org.eclipse.jst.server.tomcat.runtime.41"/>
-      <image
-         id="org.eclipse.jst.server.tomcat.50"
-         icon="icons/obj16/tomcat.gif"
-         typeIds="org.eclipse.jst.server.tomcat.runtime.50"/>
-      <image
-         id="org.eclipse.jst.server.tomcat.55"
-         icon="icons/obj16/tomcat.gif"
-         typeIds="org.eclipse.jst.server.tomcat.runtime.55"/>
-
-      <image
-         id="org.eclipse.jst.server.tomcat.32"
-         icon="icons/obj16/tomcat.gif"
-         typeIds="org.eclipse.jst.server.tomcat.32"/>
-      <image
-         id="org.eclipse.jst.server.tomcat.40"
-         icon="icons/obj16/tomcat.gif"
-         typeIds="org.eclipse.jst.server.tomcat.40"/>
-      <image
-         id="org.eclipse.jst.server.tomcat.41"
-         icon="icons/obj16/tomcat.gif"
-         typeIds="org.eclipse.jst.server.tomcat.41"/>
-      <image
-         id="org.eclipse.jst.server.tomcat.50"
-         icon="icons/obj16/tomcat.gif"
-         typeIds="org.eclipse.jst.server.tomcat.50"/>
-      <image
-         id="org.eclipse.jst.server.tomcat.55"
-         icon="icons/obj16/tomcat.gif"
-         typeIds="org.eclipse.jst.server.tomcat.55"/>
-   </extension>
-   
-   <extension point="org.eclipse.core.expressions.propertyTesters">
-      <propertyTester
-         id="org.eclipse.jst.server.tomcat.ui.propertyTester"
-         namespace="org.eclipse.jst.server.tomcat.ui"
-         properties="hasConfiguration"
-         type="java.lang.Object"
-         class="org.eclipse.jst.server.tomcat.ui.internal.ConfigurationPropertyTester">
-      </propertyTester>
-   </extension>
-
-   <extension point="org.eclipse.wst.server.ui.editorPages">
-      <page
-         id="org.eclipse.jst.server.tomcat.configuration.editor.webmodule"
-         order="20"
-         name="%configurationEditorWebModulesPage"
-         typeIds="org.eclipse.jst.server.tomcat.*"
-         class="org.eclipse.jst.server.tomcat.ui.internal.editor.ConfigurationWebModuleEditorPart">
-         <enablement>
-           <test property="org.eclipse.jst.server.tomcat.ui.hasConfiguration" value="true"/>
-         </enablement>
-      </page>
-   </extension>
-
-   <extension point="org.eclipse.wst.server.ui.editorPageSections">
-      <section
-         id="org.eclipse.jst.server.tomcat.server.editor.general"
-         order="0"
-         insertionId="org.eclipse.wst.server.editor.overview.left"
-         typeIds="org.eclipse.jst.server.tomcat.*"
-         class="org.eclipse.jst.server.tomcat.ui.internal.editor.ServerGeneralEditorSection"/>
-      <section
-         id="org.eclipse.jst.server.tomcat.configuration.editor.port"
-         order="10"
-         insertionId="org.eclipse.wst.server.editor.overview.right"
-         typeIds="org.eclipse.jst.server.tomcat.*"
-         class="org.eclipse.jst.server.tomcat.ui.internal.editor.ConfigurationPortEditorSection">
-         <enablement>
-           <test property="org.eclipse.jst.server.tomcat.ui.hasConfiguration" value="true"/>
-         </enablement>
-      </section>
-      <section
-         id="org.eclipse.jst.server.tomcat.configuration.editor.mime"
-         order="20"
-         insertionId="org.eclipse.wst.server.editor.overview.right"
-         typeIds="org.eclipse.jst.server.tomcat.*"
-         class="org.eclipse.jst.server.tomcat.ui.internal.editor.ConfigurationMimeEditorSection">
-         <enablement>
-           <test property="org.eclipse.jst.server.tomcat.ui.hasConfiguration" value="true"/>
-         </enablement>
-      </section>
-   </extension>
-   
-   <extension point="org.eclipse.wst.server.ui.wizardFragments">
-      <fragment
-         id="org.eclipse.jst.server.tomcat.runtime.32"
-         typeIds="org.eclipse.jst.server.tomcat.runtime.32"
-         class="org.eclipse.jst.server.tomcat.ui.internal.TomcatRuntimeWizardFragment"/>
-      <fragment
-         id="org.eclipse.jst.server.tomcat.runtime.40"
-         typeIds="org.eclipse.jst.server.tomcat.runtime.40"
-         class="org.eclipse.jst.server.tomcat.ui.internal.TomcatRuntimeWizardFragment"/>
-      <fragment
-         id="org.eclipse.jst.server.tomcat.runtime.41"
-         typeIds="org.eclipse.jst.server.tomcat.runtime.41"
-         class="org.eclipse.jst.server.tomcat.ui.internal.TomcatRuntimeWizardFragment"/>
-      <fragment
-         id="org.eclipse.jst.server.tomcat.runtime.50"
-         typeIds="org.eclipse.jst.server.tomcat.runtime.50"
-         class="org.eclipse.jst.server.tomcat.ui.internal.TomcatRuntimeWizardFragment"/>
-      <fragment
-         id="org.eclipse.jst.server.tomcat.runtime.55"
-         typeIds="org.eclipse.jst.server.tomcat.runtime.55"
-         class="org.eclipse.jst.server.tomcat.ui.internal.TomcatRuntimeWizardFragment"/>
-   </extension>
-   
-  <extension point="org.eclipse.debug.ui.launchConfigurationTypeImages">
-    <launchConfigurationTypeImage
-      id="org.eclipse.jst.server.tomcat.ui.launchConfigurationTypeImage"
-      configTypeID="org.eclipse.jst.server.tomcat.core.launchConfigurationType"
-      icon="icons/obj16/tomcat.gif">
-    </launchConfigurationTypeImage>
-  </extension>
-
-  <extension point="org.eclipse.debug.ui.launchConfigurationTabGroups">
-    <launchConfigurationTabGroup
-      id="org.eclipse.jst.server.tomcat.ui.launchConfigurationTabGroup"
-      type="org.eclipse.jst.server.tomcat.core.launchConfigurationType"
-      class="org.eclipse.jst.server.tomcat.ui.internal.TomcatLaunchConfigurationTabGroup">
-    </launchConfigurationTabGroup>
-  </extension>
-
-</plugin>
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/ConfigurationPropertyTester.java b/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/ConfigurationPropertyTester.java
deleted file mode 100644
index 892b2d0..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/ConfigurationPropertyTester.java
+++ /dev/null
@@ -1,35 +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.tomcat.ui.internal;
-
-import org.eclipse.core.expressions.PropertyTester;
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatServer;
-import org.eclipse.jst.server.tomcat.core.internal.TomcatServer;
-import org.eclipse.wst.server.core.IServerAttributes;
-/**
- * 
- */
-public class ConfigurationPropertyTester extends PropertyTester {
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.expressions.IPropertyTester#test(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Object)
-	 */
-	public boolean test(Object receiver, String property, Object[] args, Object expectedValue) {
-		try {
-			IServerAttributes server = (IServerAttributes) receiver;
-			TomcatServer tomcatServer = (TomcatServer) server.loadAdapter(ITomcatServer.class, null);
-			if (tomcatServer != null)
-				return tomcatServer.getServerConfiguration() != null;
-		} catch (Exception e) {
-			// ignore
-		}
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/ContextIds.java b/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/ContextIds.java
deleted file mode 100644
index e8aa59b..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/ContextIds.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.jst.server.tomcat.ui.internal;
-/**
- * Constant ids for context help.
- */
-public interface ContextIds {
-	public static final String SERVER_EDITOR = TomcatUIPlugin.PLUGIN_ID + ".teig0000";
-	public static final String SERVER_EDITOR_TEST_ENVIRONMENT = TomcatUIPlugin.PLUGIN_ID + ".teig0002";
-	public static final String SERVER_EDITOR_SECURE = TomcatUIPlugin.PLUGIN_ID + ".teig0004";
-	public static final String SERVER_EDITOR_DEBUG_MODE = TomcatUIPlugin.PLUGIN_ID + ".teig0006";
-
-	public static final String CONFIGURATION_EDITOR_WEBMODULES = TomcatUIPlugin.PLUGIN_ID + ".tecw0000";
-	public static final String CONFIGURATION_EDITOR_WEBMODULES_LIST = TomcatUIPlugin.PLUGIN_ID + ".tecw0002";
-	public static final String CONFIGURATION_EDITOR_WEBMODULES_ADD_PROJECT = TomcatUIPlugin.PLUGIN_ID + ".tecw0004";
-	public static final String CONFIGURATION_EDITOR_WEBMODULES_ADD_EXTERNAL = TomcatUIPlugin.PLUGIN_ID + ".tecw0006";
-	public static final String CONFIGURATION_EDITOR_WEBMODULES_EDIT = TomcatUIPlugin.PLUGIN_ID + ".tecw0008";
-	public static final String CONFIGURATION_EDITOR_WEBMODULES_REMOVE = TomcatUIPlugin.PLUGIN_ID + ".tecw0010";
-
-	public static final String CONFIGURATION_EDITOR_WEBMODULE_DIALOG = TomcatUIPlugin.PLUGIN_ID + ".tdwm0000";
-	public static final String CONFIGURATION_EDITOR_WEBMODULE_DIALOG_PROJECT = TomcatUIPlugin.PLUGIN_ID + ".tdpr0002";
-	public static final String CONFIGURATION_EDITOR_WEBMODULE_DIALOG_PATH = TomcatUIPlugin.PLUGIN_ID + ".tdpr0004";
-	public static final String CONFIGURATION_EDITOR_WEBMODULE_DIALOG_DOCBASE = TomcatUIPlugin.PLUGIN_ID + ".tdpr0006";
-	public static final String CONFIGURATION_EDITOR_WEBMODULE_DIALOG_RELOAD = TomcatUIPlugin.PLUGIN_ID + ".tdpr0008";
-
-	public static final String CONFIGURATION_EDITOR_MAPPINGS = TomcatUIPlugin.PLUGIN_ID + ".tecm0000";
-	public static final String CONFIGURATION_EDITOR_MAPPINGS_LIST = TomcatUIPlugin.PLUGIN_ID + ".tecm0002";
-	public static final String CONFIGURATION_EDITOR_MAPPINGS_ADD = TomcatUIPlugin.PLUGIN_ID + ".tecm0004";
-	public static final String CONFIGURATION_EDITOR_MAPPINGS_EDIT = TomcatUIPlugin.PLUGIN_ID + ".tecm0006";
-	public static final String CONFIGURATION_EDITOR_MAPPINGS_REMOVE = TomcatUIPlugin.PLUGIN_ID + ".tecm0008";
-
-	public static final String CONFIGURATION_EDITOR_MAPPING_DIALOG = TomcatUIPlugin.PLUGIN_ID + ".tdmm0000";
-	public static final String CONFIGURATION_EDITOR_MAPPING_DIALOG_TYPE = TomcatUIPlugin.PLUGIN_ID + ".tdmm0002";
-	public static final String CONFIGURATION_EDITOR_MAPPING_DIALOG_EXTENSION = TomcatUIPlugin.PLUGIN_ID + ".tdmm0004";
-
-	public static final String CONFIGURATION_EDITOR_PORTS = TomcatUIPlugin.PLUGIN_ID + ".tecp0000";
-	public static final String CONFIGURATION_EDITOR_PORTS_LIST = TomcatUIPlugin.PLUGIN_ID + ".tecp0002";
-		
-	public static final String RUNTIME = TomcatUIPlugin.PLUGIN_ID + ".twnr0000";
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/Messages.java b/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/Messages.java
deleted file mode 100644
index c2991cd..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/Messages.java
+++ /dev/null
@@ -1,69 +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.tomcat.ui.internal;
-
-import org.eclipse.osgi.util.NLS;
-/**
- * Translated messages.
- */
-public class Messages extends NLS {
-	public static String wizardTitle;
-	public static String wizardDescription;
-	public static String runtimeName;
-	public static String installDir;
-	public static String browse;
-	public static String selectInstallDir;
-	public static String installedJRE;
-	public static String installedJREs;
-	public static String runtimeDefaultJRE;
-	public static String editorAdd;
-	public static String editorEdit;
-	public static String editorRemove;
-	public static String configurationEditorMimeMappingsSection;
-	public static String configurationEditorMimeMappingsDescription;
-	public static String configurationEditorPortsSection;
-	public static String configurationEditorPortsDescription;
-	public static String configurationEditorPortNameColumn;
-	public static String configurationEditorPortValueColumn;
-	public static String configurationEditorWebModulesPageTitle;
-	public static String configurationEditorWebModulesSection;
-	public static String configurationEditorWebModulesDescription;
-	public static String configurationEditorPathColumn;
-	public static String configurationEditorDocBaseColumn;
-	public static String configurationEditorProjectColumn;
-	public static String configurationEditorReloadColumn;
-	public static String configurationEditorAddProjectModule;
-	public static String configurationEditorAddExternalModule;
-	public static String configurationEditorProjectMissing;
-	public static String configurationEditorReloadEnabled;
-	public static String configurationEditorReloadDisabled;
-	public static String configurationEditorMimeMapppingDialogTitleEdit;
-	public static String configurationEditorMimeMapppingDialogTitleAdd;
-	public static String configurationEditorMimeMapppingDialogMimeType;
-	public static String configurationEditorMimeMapppingDialogMimeExtension;
-	public static String serverEditorGeneralSection;
-	public static String serverEditorGeneralDescription;
-	public static String serverEditorTestEnvironment;
-	public static String serverEditorSecure;
-	public static String serverEditorDebugMode;
-	public static String configurationEditorWebModuleDialogTitleEdit;
-	public static String configurationEditorWebModuleDialogTitleAdd;
-	public static String configurationEditorWebModuleDialogProjects;
-	public static String configurationEditorWebModuleDialogDocumentBase;
-	public static String configurationEditorWebModuleDialogSelectDirectory;
-	public static String configurationEditorWebModuleDialogPath;
-	public static String configurationEditorWebModuleDialogAutoReload;
-	public static String configurationEditorWebModuleDialogReloadEnabled;
-
-	static {
-		NLS.initializeMessages(TomcatUIPlugin.PLUGIN_ID + ".internal.Messages", Messages.class);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/Messages.properties b/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/Messages.properties
deleted file mode 100644
index f3855d4..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/Messages.properties
+++ /dev/null
@@ -1,83 +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
-###############################################################################
-pluginName=Apache Tomcat UI Support
-providerName=Eclipse.org
-
-# --------------- Editors ---------------
-
-# General text used in both editors
-editorRemove=Remove
-editorAdd=Add...
-editorEdit=Edit...
-
-# --- Configuration Editor ---
-configurationEditorWebModulesPage=Modules
-configurationEditorWebModulesPageTitle=Web Modules
-configurationEditorWebModulesSection=Web Modules
-configurationEditorWebModulesDescription=Configure the Web Modules on this server.
-configurationEditorMimeMappingsSection=MIME Mappings
-configurationEditorMimeMappingsDescription=Configure MIME type mappings.
-configurationEditorPortsSection=Ports
-configurationEditorPortsDescription=Modify the server ports.
-
-# Fields
-configurationEditorPortNameColumn=Port Name
-configurationEditorPortValueColumn=Port Number
-configurationEditorPathColumn=Path
-configurationEditorDocBaseColumn=Document Base
-configurationEditorProjectColumn=Project
-configurationEditorReloadColumn=Auto Reload
-configurationEditorProjectMissing={0} missing
-configurationEditorReloadEnabled=Enabled
-configurationEditorReloadDisabled=Disabled
-configurationEditorAddProjectModule=Add Web Project...
-configurationEditorAddExternalModule=Add External Web Module...
-
-# Add/Edit Mime Mapping dialog
-configurationEditorMimeMapppingDialogTitleEdit=Edit MIME Mapping
-configurationEditorMimeMapppingDialogTitleAdd=Add MIME Mapping
-configurationEditorMimeMapppingDialogMimeType=MIME type:
-configurationEditorMimeMapppingDialogMimeExtension=MIME extension:
-
-# Add/Edit Web Module dialog
-configurationEditorWebModuleDialogTitleEdit=Edit Web Module
-configurationEditorWebModuleDialogTitleAdd=Add Web Module
-configurationEditorWebModuleDialogProjects=Projects:
-configurationEditorWebModuleDialogPath=Path:
-configurationEditorWebModuleDialogDocumentBase=Document base:
-configurationEditorWebModuleDialogAutoReload=Auto reloading:
-configurationEditorWebModuleDialogReloadEnabled=Enabled
-configurationEditorWebModuleDialogSelectDirectory=Select the Web module directory.
-
-
-# --- Server Editor ---
-serverEditorGeneralSection=Server
-serverEditorGeneralDescription=Enter settings for the server.
-
-# Fields
-serverEditorSecure=Enable security
-serverEditorDebugMode=Enable Tomcat debug mode (v4.x and above only)
-serverEditorTestEnvironment=Run modules directly from the workspace (do not modify the Tomcat installation)
-
-
-# --------------- General UI ---------------
-
-runtimeName=Na&me:
-browse=B&rowse...
-installDir=Tomcat installation &directory:
-installedJRE=&JRE:
-installedJREs=&Installed JREs...
-selectInstallDir=Select Tomcat installation directory.
-runtimeDefaultJRE=Workbench default JRE
-
-# New Tomcat server wizard
-wizardTitle=Tomcat Server
-wizardDescription=Specify the installation directory
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/SWTUtil.java b/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/SWTUtil.java
deleted file mode 100644
index cbe03c5..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/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.tomcat.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.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/TomcatLaunchConfigurationTabGroup.java b/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/TomcatLaunchConfigurationTabGroup.java
deleted file mode 100644
index 4c6f725..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/TomcatLaunchConfigurationTabGroup.java
+++ /dev/null
@@ -1,42 +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.tomcat.ui.internal;
-
-import org.eclipse.debug.ui.*;
-import org.eclipse.debug.ui.sourcelookup.SourceLookupTab;
-import org.eclipse.jdt.debug.ui.launchConfigurations.JavaArgumentsTab;
-import org.eclipse.jdt.debug.ui.launchConfigurations.JavaClasspathTab;
-
-import org.eclipse.wst.server.ui.ServerLaunchConfigurationTab;
-/**
- * A debug tab group for launching Tomcat. 
- */
-public class TomcatLaunchConfigurationTabGroup extends AbstractLaunchConfigurationTabGroup {
-	/*
-	 * @see ILaunchConfigurationTabGroup#createTabs(ILaunchConfigurationDialog, String)
-	 */
-	public void createTabs(ILaunchConfigurationDialog dialog, String mode) {
-		ILaunchConfigurationTab[] tabs = new ILaunchConfigurationTab[6];
-		tabs[0] = new ServerLaunchConfigurationTab(new String[] { "org.eclipse.jst.server.tomcat" });
-		tabs[0].setLaunchConfigurationDialog(dialog);
-		tabs[1] = new JavaArgumentsTab();
-		tabs[1].setLaunchConfigurationDialog(dialog);
-		tabs[2] = new JavaClasspathTab();
-		tabs[2].setLaunchConfigurationDialog(dialog);
-		tabs[3] = new SourceLookupTab();
-		tabs[3].setLaunchConfigurationDialog(dialog);
-		tabs[4] = new EnvironmentTab();
-		tabs[4].setLaunchConfigurationDialog(dialog);
-		tabs[5] = new CommonTab();
-		tabs[5].setLaunchConfigurationDialog(dialog);
-		setTabs(tabs);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/TomcatRuntimeComposite.java b/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/TomcatRuntimeComposite.java
deleted file mode 100644
index 3d81283..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/TomcatRuntimeComposite.java
+++ /dev/null
@@ -1,285 +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.tomcat.ui.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-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.tomcat.core.internal.ITomcatRuntimeWorkingCopy;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.DirectoryDialog;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.PlatformUI;
-
-import org.eclipse.wst.server.core.IRuntimeWorkingCopy;
-import org.eclipse.wst.server.ui.wizard.IWizardHandle;
-/**
- * Wizard page to set the server install directory.
- */
-public class TomcatRuntimeComposite extends Composite {
-	protected IRuntimeWorkingCopy runtimeWC;
-	protected ITomcatRuntimeWorkingCopy runtime;
-	
-	protected IWizardHandle wizard;
-	
-	protected Text installDir;
-	protected Text name;
-	protected Combo combo;
-	protected List installedJREs;
-	protected String[] jreNames;
-
-	/**
-	 * TomcatRuntimeWizardPage constructor comment.
-	 * 
-	 * @param parent the parent composite
-	 * @param wizard the wizard handle
-	 */
-	protected TomcatRuntimeComposite(Composite parent, IWizardHandle wizard) {
-		super(parent, SWT.NONE);
-		this.wizard = wizard;
-		
-		wizard.setTitle(Messages.wizardTitle);
-		wizard.setDescription(Messages.wizardDescription);
-		wizard.setImageDescriptor(TomcatUIPlugin.getImageDescriptor(TomcatUIPlugin.IMG_WIZ_TOMCAT));
-		
-		createControl();
-	}
-	
-	protected void setRuntime(IRuntimeWorkingCopy newRuntime) {
-		if (newRuntime == null) {
-			runtimeWC = null;
-			runtime = null;
-		} else {
-			runtimeWC = newRuntime;
-			runtime = (ITomcatRuntimeWorkingCopy) newRuntime.getAdapter(ITomcatRuntimeWorkingCopy.class);
-		}
-		
-		init();
-		validate();
-	}
-
-	/**
-	 * Provide a wizard page to change the Tomcat installation 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);
-		
-		Label label = new Label(this, SWT.NONE);
-		label.setText(Messages.runtimeName);
-		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.installDir);
-		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(TomcatRuntimeComposite.this.getShell());
-				dialog.setMessage(Messages.selectInstallDir);
-				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.installedJRE);
-		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.installedJREs);
-		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.runtimeDefaultJRE;
-		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 (name == null || runtime == null)
-			return;
-		
-		if (runtimeWC.getName() != null)
-			name.setText(runtimeWC.getName());
-		else
-			name.setText("");
-	
-		if (runtimeWC.getLocation() != null)
-			installDir.setText(runtimeWC.getLocation().toOSString());
-		else
-			installDir.setText("");
-		
-		// set selection
-		if (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 if (status.getSeverity() == IStatus.WARNING)
-			wizard.setMessage(status.getMessage(), IMessageProvider.WARNING);
-		else
-			wizard.setMessage(status.getMessage(), IMessageProvider.ERROR);
-		wizard.update();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/TomcatRuntimeWizardFragment.java b/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/TomcatRuntimeWizardFragment.java
deleted file mode 100644
index 4bf8c3f..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/TomcatRuntimeWizardFragment.java
+++ /dev/null
@@ -1,66 +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.tomcat.ui.internal;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.jst.server.tomcat.core.internal.TomcatPlugin;
-import org.eclipse.swt.widgets.Composite;
-
-import org.eclipse.wst.server.core.IRuntimeWorkingCopy;
-import org.eclipse.wst.server.core.TaskModel;
-import org.eclipse.wst.server.ui.wizard.IWizardHandle;
-import org.eclipse.wst.server.ui.wizard.WizardFragment;
-/**
- * 
- */
-public class TomcatRuntimeWizardFragment extends WizardFragment {
-	protected TomcatRuntimeComposite comp;
-	
-	public TomcatRuntimeWizardFragment() {
-		// do nothing
-	}
-
-	public boolean hasComposite() {
-		return true;
-	}
-	
-	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.getSeverity() != IStatus.ERROR);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.ui.task.WizardFragment#createComposite()
-	 */
-	public Composite createComposite(Composite parent, IWizardHandle wizard) {
-		comp = new TomcatRuntimeComposite(parent, wizard);
-		return comp;
-	}
-
-	public void enter() {
-		if (comp != null) {
-			IRuntimeWorkingCopy runtime = (IRuntimeWorkingCopy) getTaskModel().getObject(TaskModel.TASK_RUNTIME);
-			comp.setRuntime(runtime);
-		}
-	}
-
-	public void exit() {
-		IRuntimeWorkingCopy runtime = (IRuntimeWorkingCopy) getTaskModel().getObject(TaskModel.TASK_RUNTIME);
-		IPath path = runtime.getLocation();
-		if (runtime.validate(null).isOK())
-			TomcatPlugin.setPreference("location" + runtime.getRuntimeType().getId(), path.toString());
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/TomcatUIPlugin.java b/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/TomcatUIPlugin.java
deleted file mode 100644
index eb8b6c4..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/TomcatUIPlugin.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.tomcat.ui.internal;
-
-import java.net.URL;
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-/**
- * The actual Tomcat plugin. It allows the rest of the classes
- * to load images and get a handle to the desktop.
- */
-public class TomcatUIPlugin extends AbstractUIPlugin {
-	protected static TomcatUIPlugin singleton;
-
-	protected Map imageDescriptors = new HashMap();
-
-	// base url for icons
-	private static URL ICON_BASE_URL;
-
-	private static final String URL_OBJ = "obj16/";
-	private static final String URL_WIZBAN = "wizban/";
-
-	public static final String PLUGIN_ID = "org.eclipse.jst.server.tomcat.ui";
-
-	public static final String IMG_WIZ_TOMCAT = "wizTomcat";
-
-	public static final String IMG_WEB_MODULE = "webModule";
-	public static final String IMG_MIME_MAPPING = "mimeMapping";
-	public static final String IMG_MIME_EXTENSION = "mimeExtension";
-	public static final String IMG_PORT = "port";
-	public static final String IMG_PROJECT_MISSING = "projectMissing";
-
-	public static final String PREF_TOMCAT32_INSTALL_DIR = "tomcat32install";
-	public static final String PREF_TOMCAT40_INSTALL_DIR = "tomcat40install";
-	public static final String PREF_TOMCAT41_INSTALL_DIR = "tomcat41install";
-	public static final String PREF_TOMCAT50_INSTALL_DIR = "tomcat50install";
-	public static final String PREF_JDK_INSTALL_DIR = "jdkinstall";
-
-	/**
-	 * TomcatUIPlugin constructor comment.
-	 */
-	public TomcatUIPlugin() {
-		super();
-		singleton = this;
-	}
-
-	protected ImageRegistry createImageRegistry() {
-		ImageRegistry registry = new ImageRegistry();
-	
-		registerImage(registry, IMG_WIZ_TOMCAT, URL_WIZBAN + "tomcat_wiz.gif");
-	
-		registerImage(registry, IMG_WEB_MODULE, URL_OBJ + "web_module.gif");
-		registerImage(registry, IMG_MIME_MAPPING, URL_OBJ + "mime_mapping.gif");
-		registerImage(registry, IMG_MIME_EXTENSION, URL_OBJ + "mime_extension.gif");
-		registerImage(registry, IMG_PORT, URL_OBJ + "port.gif");
-		registerImage(registry, IMG_PROJECT_MISSING, URL_OBJ + "project_missing.gif");
-	
-		return registry;
-	}
-
-	/**
-	 * Return the image with the given key from the image registry.
-	 * @param key java.lang.String
-	 * @return org.eclipse.jface.parts.IImage
-	 */
-	public static Image getImage(String key) {
-		return getInstance().getImageRegistry().get(key);
-	}
-
-	/**
-	 * Return the image with the given key from the image registry.
-	 * @param key java.lang.String
-	 * @return org.eclipse.jface.parts.IImage
-	 */
-	public static ImageDescriptor getImageDescriptor(String key) {
-		try {
-			getInstance().getImageRegistry();
-			return (ImageDescriptor) getInstance().imageDescriptors.get(key);
-		} catch (Exception e) {
-			return null;
-		}
-	}
-
-	/**
-	 * Returns the singleton instance of this plugin.
-	 * @return org.eclipse.jst.server.tomcat.internal.TomcatUIPlugin
-	 */
-	public static TomcatUIPlugin getInstance() {
-		return singleton;
-	}
-
-	/**
-	 * Convenience method for logging.
-	 *
-	 * @param status org.eclipse.core.runtime.IStatus
-	 */
-	public static void log(IStatus status) {
-		getInstance().getLog().log(status);
-	}
-
-	/**
-	 * Register an image with the registry.
-	 * @param key java.lang.String
-	 * @param partialURL java.lang.String
-	 */
-	private void registerImage(ImageRegistry registry, String key, String partialURL) {
-		if (ICON_BASE_URL == null) {
-			String pathSuffix = "icons/";
-			ICON_BASE_URL = singleton.getBundle().getEntry(pathSuffix);
-		}
-
-		try {
-			ImageDescriptor id = ImageDescriptor.createFromURL(new URL(ICON_BASE_URL, partialURL));
-			registry.put(key, id);
-			imageDescriptors.put(key, id);
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Error registering image", e);
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/Trace.java b/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/Trace.java
deleted file mode 100644
index c2163b8..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/Trace.java
+++ /dev/null
@@ -1,54 +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.tomcat.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;
-	public static byte FINER = 4;
-
-	/**
-	 * Trace constructor comment.
-	 */
-	private Trace() {
-		super();
-	}
-
-	/**
-	 * Trace the given text.
-	 *
-	 * @param level the 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 the trace level
-	 * @param s a message
-	 * @param t a throwable
-	 */
-	public static void trace(byte level, String s, Throwable t) {
-		if (!TomcatUIPlugin.getInstance().isDebugging())
-			return;
-
-		System.out.println(TomcatUIPlugin.PLUGIN_ID + " " + s);
-		if (t != null)
-			t.printStackTrace();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/ConfigurationMimeEditorSection.java b/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/ConfigurationMimeEditorSection.java
deleted file mode 100644
index abd9dc4..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/ConfigurationMimeEditorSection.java
+++ /dev/null
@@ -1,420 +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.tomcat.ui.internal.editor;
-
-import java.beans.*;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.wst.server.ui.editor.*;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Tree;
-import org.eclipse.swt.widgets.TreeItem;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jst.server.tomcat.core.internal.MimeMapping;
-import org.eclipse.jst.server.tomcat.core.internal.TomcatConfiguration;
-import org.eclipse.jst.server.tomcat.core.internal.TomcatServer;
-import org.eclipse.jst.server.tomcat.core.internal.command.*;
-import org.eclipse.jst.server.tomcat.ui.internal.ContextIds;
-import org.eclipse.jst.server.tomcat.ui.internal.Messages;
-import org.eclipse.jst.server.tomcat.ui.internal.TomcatUIPlugin;
-import org.eclipse.ui.*;
-import org.eclipse.ui.forms.widgets.ExpandableComposite;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-import org.eclipse.ui.forms.widgets.Section;
-import org.eclipse.ui.help.IWorkbenchHelpSystem;
-/**
- * Tomcat configuration mime editor section.
- */
-public class ConfigurationMimeEditorSection extends ServerEditorSection {
-	protected TomcatConfiguration tomcatConfiguration;
-
-	protected boolean updating;
-
-	protected PropertyChangeListener listener;
-	
-	protected Tree mimeTypes;
-	protected int index = -1;
-	protected List mappings;
-	protected Button add;
-	protected Button remove;
-	protected Button edit;
-
-	/**
-	 * ConfigurationMimeEditorSection constructor comment.
-	 */
-	public ConfigurationMimeEditorSection() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected void addChangeListener() {
-		listener = new PropertyChangeListener() {
-			public void propertyChange(PropertyChangeEvent event) {
-				if (TomcatConfiguration.ADD_MAPPING_PROPERTY.equals(event.getPropertyName())) {
-					Integer in = (Integer) event.getOldValue();
-					MimeMapping mapping = (MimeMapping) event.getNewValue();
-					addMimeMapping(in.intValue(), mapping);
-				} else if (TomcatConfiguration.REMOVE_MAPPING_PROPERTY.equals(event.getPropertyName())) {
-					Integer in = (Integer) event.getNewValue();
-					removeMimeMapping(in.intValue());
-				} else if (TomcatConfiguration.MODIFY_MAPPING_PROPERTY.equals(event.getPropertyName())) {
-					Integer in = (Integer) event.getOldValue();
-					MimeMapping mapping = (MimeMapping) event.getNewValue();
-					modifyMimeMapping(in.intValue(), mapping);
-				}
-			}
-		};
-		tomcatConfiguration.addPropertyChangeListener(listener);
-	}
-
-	public void createSection(Composite parent) {
-		super.createSection(parent);
-		
-		FormToolkit toolkit = getFormToolkit(parent.getDisplay());
-		
-		Section section = toolkit.createSection(parent, ExpandableComposite.TWISTIE | ExpandableComposite.TITLE_BAR
-			| Section.DESCRIPTION | ExpandableComposite.FOCUS_TITLE);
-		section.setText(Messages.configurationEditorMimeMappingsSection);
-		section.setDescription(Messages.configurationEditorMimeMappingsDescription);
-		section.setLayoutData(new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_FILL));
-		
-		Composite composite = toolkit.createComposite(section);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 2;
-		layout.marginHeight = 5;
-		layout.marginWidth = 10;
-		layout.verticalSpacing = 5;
-		layout.horizontalSpacing = 15;
-		composite.setLayout(layout);
-		GridData data = new GridData(GridData.FILL_BOTH);
-		composite.setLayoutData(data);
-		IWorkbenchHelpSystem whs = PlatformUI.getWorkbench().getHelpSystem();
-		whs.setHelp(composite, ContextIds.CONFIGURATION_EDITOR_MAPPINGS);
-		toolkit.paintBordersFor(composite);
-		section.setClient(composite);
-		
-		mimeTypes = toolkit.createTree(composite, SWT.V_SCROLL | SWT.SINGLE | SWT.H_SCROLL);
-		data = new GridData(GridData.HORIZONTAL_ALIGN_FILL | GridData.VERTICAL_ALIGN_FILL);
-		data.widthHint = 220;
-		data.heightHint = 200;
-		mimeTypes.setLayoutData(data);
-		whs.setHelp(mimeTypes, ContextIds.CONFIGURATION_EDITOR_MAPPINGS_LIST);
-		
-		// add listener to the table
-		mimeTypes.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				selectMimeMapping();
-			}
-		});
-		
-		Composite buttonComp = toolkit.createComposite(composite);
-		layout = new GridLayout();
-		layout.marginHeight = 0;
-		layout.marginWidth = 0;
-		buttonComp.setLayout(layout);
-		buttonComp.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_BEGINNING | GridData.HORIZONTAL_ALIGN_BEGINNING));
-		
-		add = toolkit.createButton(buttonComp, Messages.editorAdd, SWT.PUSH);
-		data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		data.widthHint = 75;
-		add.setLayoutData(data);
-		
-		add.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				MimeMappingDialog dialog = new MimeMappingDialog(getShell());
-				dialog.open();
-				if (dialog.getReturnCode() == IDialogConstants.OK_ID) {
-					execute(new AddMimeMappingCommand(tomcatConfiguration, dialog.getMimeMapping()));
-				}
-			}
-		});
-		whs.setHelp(add, ContextIds.CONFIGURATION_EDITOR_MAPPINGS_ADD);
-		
-		edit = toolkit.createButton(buttonComp, Messages.editorEdit, SWT.PUSH);
-		data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		data.widthHint = 75;
-		edit.setLayoutData(data);
-		edit.setEnabled(false);
-		
-		edit.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				if (index < 0)
-					return;
-				MimeMappingDialog dialog = new MimeMappingDialog(getShell(), (MimeMapping) tomcatConfiguration.getMimeMappings().get(index));
-				dialog.open();
-				if (dialog.getReturnCode() == IDialogConstants.OK_ID) {
-					execute(new ModifyMimeMappingCommand(tomcatConfiguration, index, dialog.getMimeMapping()));
-				}
-			}
-		});
-		whs.setHelp(edit, ContextIds.CONFIGURATION_EDITOR_MAPPINGS_EDIT);
-		
-		remove = toolkit.createButton(buttonComp, Messages.editorRemove, SWT.PUSH);
-		data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		data.widthHint = 75;
-		remove.setLayoutData(data);
-		remove.setEnabled(false);
-		
-		remove.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				if (index < 0)
-					return;
-				execute(new RemoveMimeMappingCommand(tomcatConfiguration, index));
-				index = -1;
-				edit.setEnabled(false);
-				remove.setEnabled(false);
-			}
-		});
-		whs.setHelp(remove, ContextIds.CONFIGURATION_EDITOR_MAPPINGS_REMOVE);
-		
-		initialize();
-	}
-	
-	public void dispose() {
-		if (tomcatConfiguration != null)
-			tomcatConfiguration.removePropertyChangeListener(listener);
-	}
-
-	public void init(IEditorSite site, IEditorInput input) {
-		super.init(site, input);
-		
-		TomcatServer ts = (TomcatServer) server.getAdapter(TomcatServer.class);
-		try {
-			tomcatConfiguration = ts.getTomcatConfiguration();
-		} catch (Exception e) {
-			// ignore
-		}
-		addChangeListener();
-		initialize();
-	}
-
-	/**
-	 * Initialize the fields in this editor.
-	 */
-	protected void initialize() {
-		if (mimeTypes == null)
-			return;
-
-		mimeTypes.removeAll();
-		
-		mappings = tomcatConfiguration.getMimeMappings();
-		
-		// sort mappings
-		int size = mappings.size();
-		int[] map = new int[size];
-		for (int i = 0; i < size; i++)
-			map[i] = i;
-		
-		for (int i = 0; i < size - 1; i++) {
-			for (int j = i + 1; j < size; j++) {
-				MimeMapping mappingA = (MimeMapping) mappings.get(map[i]);
-				MimeMapping mappingB = (MimeMapping) mappings.get(map[j]);
-				if (mappingA.getMimeType().compareTo(mappingB.getMimeType()) > 0 ||
-						((mappingA.getMimeType().equals(mappingB.getMimeType())) &&
-								mappingA.getExtension().compareTo(mappingB.getExtension()) > 0)) {
-					int temp = map[i];
-					map[i] = map[j];
-					map[j] = temp;
-				}
-			}
-		}
-		
-		// display them
-		Map hash = new HashMap();
-		
-		for (int i = 0; i < size; i++) {
-			MimeMapping mapping = (MimeMapping) mappings.get(map[i]);
-			// get parent node
-			TreeItem parent = (TreeItem) hash.get(mapping.getMimeType());
-			if (parent == null) {
-				parent = new TreeItem(mimeTypes, SWT.NONE);
-				parent.setText(mapping.getMimeType());
-				parent.setImage(TomcatUIPlugin.getImage(TomcatUIPlugin.IMG_MIME_MAPPING));
-				hash.put(mapping.getMimeType(), parent);
-			}
-			
-			// add node
-			TreeItem item = new TreeItem(parent, SWT.NONE);
-			item.setText(mapping.getExtension());
-			item.setImage(TomcatUIPlugin.getImage(TomcatUIPlugin.IMG_MIME_EXTENSION));
-			item.setData(new Integer(map[i]));
-		}
-		
-		if (readOnly) {
-			add.setEnabled(false);
-			edit.setEnabled(false);
-			remove.setEnabled(false);
-		} else {
-			add.setEnabled(true);
-			selectMimeMapping();
-		}
-	}
-	
-	/**
-	 * Add a mime mapping.
-	 * 
-	 * @param index2
-	 * @param map
-	 */
-	protected void addMimeMapping(int index2, MimeMapping map) {
-		mappings.add(index2, map);
-		
-		// correct all index numbers
-		int size = mimeTypes.getItemCount();
-		TreeItem[] parents = mimeTypes.getItems();
-		for (int i = 0; i < size; i++) {
-			TreeItem parent = parents[i];
-			
-			int size2 = parent.getItemCount();
-			TreeItem[] children = parent.getItems();
-			for (int j = 0; j < size2; j++) {
-				Integer in = (Integer) children[j].getData();
-				if (in.intValue() >= index2)
-					children[j].setData(new Integer(in.intValue() + 1));
-			}
-		}
-		
-		// check if there is a parent. If so, just add a new child
-		for (int i = 0; i < size; i++) {
-			TreeItem parent = parents[i];
-			if (parent.getText().equals(map.getMimeType())) {
-				TreeItem item = new TreeItem(parent, SWT.NONE);
-				item.setText(map.getExtension());
-				item.setImage(TomcatUIPlugin.getImage(TomcatUIPlugin.IMG_MIME_EXTENSION));
-				item.setData(new Integer(index2));
-				mimeTypes.showItem(item);
-				return;
-			}
-		}
-		
-		// if not, add a new parent and child to the end
-		TreeItem parent = new TreeItem(mimeTypes, SWT.NONE);
-		parent.setText(map.getMimeType());
-		parent.setImage(TomcatUIPlugin.getImage(TomcatUIPlugin.IMG_MIME_MAPPING));
-		
-		TreeItem item = new TreeItem(parent, SWT.NONE);
-		item.setText(map.getExtension());
-		item.setImage(TomcatUIPlugin.getImage(TomcatUIPlugin.IMG_MIME_EXTENSION));
-		item.setData(new Integer(index2));
-		mimeTypes.showItem(item);
-	}
-	
-	/**
-	 * 
-	 * @param index2
-	 * @param map
-	 */
-	protected void modifyMimeMapping(int index2, MimeMapping map) {
-		MimeMapping oldMap = (MimeMapping) mappings.get(index2);
-		mappings.set(index2, map);
-		
-		int size = mimeTypes.getItemCount();
-		TreeItem[] parents = mimeTypes.getItems();
-		
-		if (oldMap.getMimeType().equals(map.getMimeType())) {
-			for (int i = 0; i < size; i++) {
-				TreeItem parent = parents[i];
-				
-				if (parent.getText().equals(map.getMimeType())) {
-					int size2 = parent.getItemCount();
-					TreeItem[] children = parent.getItems();
-					for (int j = 0; j < size2; j++) {
-						Integer in = (Integer) children[j].getData();
-						if (in.intValue() == index2) {
-							children[j].setText(map.getExtension());
-							children[j].setData(new Integer(index2));
-							mimeTypes.showItem(children[j]);
-							return;
-						}
-					}
-				}
-			}
-			return;
-		}
-		
-		// otherwise, let's try a remove and an add
-		removeMimeMapping(index2);
-		addMimeMapping(index2, map);
-	}
-	
-	/**
-	 * Remove the mime mapping at the given index.
-	 * 
-	 * @param index2
-	 */
-	protected void removeMimeMapping(int index2) {
-		mappings.remove(index2);
-		
-		// remove item
-		int size = mimeTypes.getItemCount();
-		TreeItem[] parents = mimeTypes.getItems();
-		for (int i = 0; i < size; i++) {
-			TreeItem parent = parents[i];
-			
-			int size2 = parent.getItemCount();
-			TreeItem[] children = parent.getItems();
-			for (int j = 0; j < size2; j++) {
-				Integer in = (Integer) children[j].getData();
-				if (in.intValue() == index2) {
-					children[j].dispose();
-					if (size2 == 1)
-						parent.dispose();
-					i += size;
-					j += size2;
-				}
-			}
-		}
-		
-		// correct all index numbers
-		size = mimeTypes.getItemCount();
-		parents = mimeTypes.getItems();
-		for (int i = 0; i < size; i++) {
-			TreeItem parent = parents[i];
-			
-			int size2 = parent.getItemCount();
-			TreeItem[] children = parent.getItems();
-			for (int j = 0; j < size2; j++) {
-				Integer in = (Integer) children[j].getData();
-				if (in.intValue() > index2)
-					children[j].setData(new Integer(in.intValue() - 1));
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void selectMimeMapping() {
-		if (readOnly)
-			return;
-
-		try {
-			TreeItem item = mimeTypes.getSelection()[0];
-			Integer in = (Integer) item.getData();
-			index = in.intValue();
-			
-			remove.setEnabled(true);
-			edit.setEnabled(true);
-		} catch (Exception e) {
-			index = -1;
-			remove.setEnabled(false);
-			edit.setEnabled(false);
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/ConfigurationPortEditorSection.java b/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/ConfigurationPortEditorSection.java
deleted file mode 100644
index 67bfcb1..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/ConfigurationPortEditorSection.java
+++ /dev/null
@@ -1,248 +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.tomcat.ui.internal.editor;
-
-import java.beans.*;
-import java.util.Iterator;
-
-import org.eclipse.wst.server.core.ServerPort;
-import org.eclipse.wst.server.ui.editor.*;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.*;
-import org.eclipse.swt.layout.*;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Item;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-import org.eclipse.jface.viewers.*;
-import org.eclipse.jst.server.tomcat.core.internal.TomcatConfiguration;
-import org.eclipse.jst.server.tomcat.core.internal.TomcatServer;
-import org.eclipse.jst.server.tomcat.core.internal.command.*;
-import org.eclipse.jst.server.tomcat.ui.internal.ContextIds;
-import org.eclipse.jst.server.tomcat.ui.internal.Messages;
-import org.eclipse.jst.server.tomcat.ui.internal.TomcatUIPlugin;
-import org.eclipse.ui.*;
-import org.eclipse.ui.forms.widgets.ExpandableComposite;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-import org.eclipse.ui.forms.widgets.Section;
-import org.eclipse.ui.help.IWorkbenchHelpSystem;
-/**
- * Tomcat configuration port editor page.
- */
-public class ConfigurationPortEditorSection extends ServerEditorSection {
-	protected TomcatConfiguration tomcatConfiguration;
-
-	protected boolean updating;
-
-	protected Table ports;
-	protected TableViewer viewer;
-
-	protected PropertyChangeListener listener;
-
-	/**
-	 * ConfigurationPortEditorSection constructor comment.
-	 */
-	public ConfigurationPortEditorSection() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected void addChangeListener() {
-		listener = new PropertyChangeListener() {
-			public void propertyChange(PropertyChangeEvent event) {
-				if (TomcatConfiguration.MODIFY_PORT_PROPERTY.equals(event.getPropertyName())) {
-					String id = (String) event.getOldValue();
-					Integer i = (Integer) event.getNewValue();
-					changePortNumber(id, i.intValue());
-				}
-			}
-		};
-		tomcatConfiguration.addPropertyChangeListener(listener);
-	}
-	
-	/**
-	 * 
-	 * @param id java.lang.String
-	 * @param port int
-	 */
-	protected void changePortNumber(String id, int port) {
-		TableItem[] items = ports.getItems();
-		int size = items.length;
-		for (int i = 0; i < size; i++) {
-			ServerPort sp = (ServerPort) items[i].getData();
-			if (sp.getId().equals(id)) {
-				items[i].setData(new ServerPort(id, sp.getName(), port, sp.getProtocol()));
-				items[i].setText(1, port + "");
-				/*if (i == selection) {
-					selectPort();
-				}*/
-				return;
-			}
-		}
-	}
-	
-	/**
-	 * Creates the SWT controls for this workbench part.
-	 *
-	 * @param parent the parent control
-	 */
-	public void createSection(Composite parent) {
-		super.createSection(parent);
-		FormToolkit toolkit = getFormToolkit(parent.getDisplay());
-		
-		Section section = toolkit.createSection(parent, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED
-			| ExpandableComposite.TITLE_BAR | Section.DESCRIPTION | ExpandableComposite.FOCUS_TITLE);
-		section.setText(Messages.configurationEditorPortsSection);
-		section.setDescription(Messages.configurationEditorPortsDescription);
-		section.setLayoutData(new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_FILL));
-		
-		// ports
-		Composite composite = toolkit.createComposite(section);
-		GridLayout layout = new GridLayout();
-		layout.marginHeight = 8;
-		layout.marginWidth = 8;
-		composite.setLayout(layout);
-		composite.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_FILL | GridData.FILL_HORIZONTAL));
-		IWorkbenchHelpSystem whs = PlatformUI.getWorkbench().getHelpSystem();
-		whs.setHelp(composite, ContextIds.CONFIGURATION_EDITOR_PORTS);
-		toolkit.paintBordersFor(composite);
-		section.setClient(composite);
-
-		ports = toolkit.createTable(composite, SWT.V_SCROLL | SWT.H_SCROLL | SWT.FULL_SELECTION);
-		ports.setHeaderVisible(true);
-		ports.setLinesVisible(true);
-		whs.setHelp(ports, ContextIds.CONFIGURATION_EDITOR_PORTS_LIST);
-		
-		TableLayout tableLayout = new TableLayout();
-	
-		TableColumn col = new TableColumn(ports, SWT.NONE);
-		col.setText(Messages.configurationEditorPortNameColumn);
-		ColumnWeightData colData = new ColumnWeightData(15, 150, true);
-		tableLayout.addColumnData(colData);
-
-		col = new TableColumn(ports, SWT.NONE);
-		col.setText(Messages.configurationEditorPortValueColumn);
-		colData = new ColumnWeightData(8, 80, true);
-		tableLayout.addColumnData(colData);
-
-		GridData data = new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_FILL);
-		data.widthHint = 230;
-		data.heightHint = 100;
-		ports.setLayoutData(data);
-		ports.setLayout(tableLayout);
-	
-		viewer = new TableViewer(ports);
-		viewer.setColumnProperties(new String[] {"name", "port"});
-
-		initialize();
-	}
-
-	protected void setupPortEditors() {
-		viewer.setCellEditors(new CellEditor[] {null, new TextCellEditor(ports)});
-	
-		ICellModifier cellModifier = new ICellModifier() {
-			public Object getValue(Object element, String property) {
-				ServerPort sp = (ServerPort) element;
-				if (sp.getPort() < 0)
-					return "-";
-				return sp.getPort() + "";
-			}
-	
-			public boolean canModify(Object element, String property) {
-				if ("port".equals(property))
-					return true;
-				
-				return false;
-			}
-	
-			public void modify(Object element, String property, Object value) {
-				try {
-					Item item = (Item) element;
-					ServerPort sp = (ServerPort) item.getData();
-					int port = Integer.parseInt((String) value);
-					execute(new ModifyPortCommand(tomcatConfiguration, sp.getId(), port));
-				} catch (Exception ex) {
-					// ignore
-				}
-			}
-		};
-		viewer.setCellModifier(cellModifier);
-		
-		// preselect second column (Windows-only)
-		String os = System.getProperty("os.name");
-		if (os != null && os.toLowerCase().indexOf("win") >= 0) {
-			ports.addSelectionListener(new SelectionAdapter() {
-				public void widgetSelected(SelectionEvent event) {
-					try {
-						int n = ports.getSelectionIndex();
-						viewer.editElement(ports.getItem(n).getData(), 1);
-					} catch (Exception e) {
-						// ignore
-					}
-				}
-			});
-		}
-	}
-	
-	public void dispose() {
-		if (tomcatConfiguration != null)
-			tomcatConfiguration.removePropertyChangeListener(listener);
-	}
-	
-	/* (non-Javadoc)
-	 * Initializes the editor part with a site and input.
-	 */
-	public void init(IEditorSite site, IEditorInput input) {
-		super.init(site, input);
-		
-		TomcatServer ts = (TomcatServer) server.getAdapter(TomcatServer.class);
-		try {
-			tomcatConfiguration = ts.getTomcatConfiguration();
-		} catch (Exception e) {
-			// ignore
-		}
-		addChangeListener();
-		initialize();
-	}
-
-	/**
-	 * Initialize the fields in this editor.
-	 */
-	protected void initialize() {
-		if (ports == null)
-			return;
-
-		ports.removeAll();
-
-		Iterator iterator = tomcatConfiguration.getServerPorts().iterator();
-		while (iterator.hasNext()) {
-			ServerPort port = (ServerPort) iterator.next();
-			TableItem item = new TableItem(ports, SWT.NONE);
-			String portStr = "-";
-			if (port.getPort() >= 0)
-				portStr = port.getPort() + ""; 
-			String[] s = new String[] {port.getName(), portStr};
-			item.setText(s);
-			item.setImage(TomcatUIPlugin.getImage(TomcatUIPlugin.IMG_PORT));
-			item.setData(port);
-		}
-		
-		if (readOnly) {
-			viewer.setCellEditors(new CellEditor[] {null, null});
-			viewer.setCellModifier(null);
-		} else {
-			setupPortEditors();
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/ConfigurationWebModuleEditorPart.java b/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/ConfigurationWebModuleEditorPart.java
deleted file mode 100644
index 538aa01..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/ConfigurationWebModuleEditorPart.java
+++ /dev/null
@@ -1,370 +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.tomcat.ui.internal.editor;
-
-import java.beans.PropertyChangeEvent;
-import java.beans.PropertyChangeListener;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.viewers.ColumnWeightData;
-import org.eclipse.jface.viewers.TableLayout;
-import org.eclipse.jst.server.core.IWebModule;
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatServerWorkingCopy;
-import org.eclipse.jst.server.tomcat.core.internal.TomcatConfiguration;
-import org.eclipse.jst.server.tomcat.core.internal.TomcatServer;
-import org.eclipse.jst.server.tomcat.core.internal.WebModule;
-import org.eclipse.jst.server.tomcat.core.internal.command.AddWebModuleCommand;
-import org.eclipse.jst.server.tomcat.core.internal.command.ModifyWebModuleCommand;
-import org.eclipse.jst.server.tomcat.core.internal.command.RemoveWebModuleCommand;
-import org.eclipse.jst.server.tomcat.ui.internal.ContextIds;
-import org.eclipse.jst.server.tomcat.ui.internal.Messages;
-import org.eclipse.jst.server.tomcat.ui.internal.TomcatUIPlugin;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorSite;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.forms.widgets.ExpandableComposite;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-import org.eclipse.ui.forms.widgets.ScrolledForm;
-import org.eclipse.ui.forms.widgets.Section;
-import org.eclipse.ui.help.IWorkbenchHelpSystem;
-
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.ServerUtil;
-import org.eclipse.wst.server.ui.ServerUICore;
-import org.eclipse.wst.server.ui.editor.ServerEditorPart;
-/**
- * Tomcat configuration web module editor page.
- */
-public class ConfigurationWebModuleEditorPart extends ServerEditorPart {
-	protected ITomcatServerWorkingCopy server2;
-	protected TomcatConfiguration configuration;
-
-	protected Table webAppTable;
-	protected int selection = -1;
-	protected Button addProject;
-	protected Button addExtProject;
-	protected Button remove;
-	protected Button edit;
-
-	protected PropertyChangeListener listener;
-
-	/**
-	 * ConfigurationWebModuleEditorPart constructor comment.
-	 */
-	public ConfigurationWebModuleEditorPart() {
-		super();
-	}
-
-	/**
-	 * 
-	 */
-	protected void addChangeListener() {
-		listener = new PropertyChangeListener() {
-			public void propertyChange(PropertyChangeEvent event) {
-				if (TomcatConfiguration.MODIFY_WEB_MODULE_PROPERTY.equals(event.getPropertyName())) {
-					initialize();
-				} else if (TomcatConfiguration.ADD_WEB_MODULE_PROPERTY.equals(event.getPropertyName())) {
-					initialize();
-				} else if (TomcatConfiguration.REMOVE_WEB_MODULE_PROPERTY.equals(event.getPropertyName())) {
-					initialize();
-				}
-			}
-		};
-		configuration.addPropertyChangeListener(listener);
-	}
-
-	/**
-	 * @see org.eclipse.ui.part.WorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public void createPartControl(Composite parent) {
-		FormToolkit toolkit = getFormToolkit(parent.getDisplay());
-
-		ScrolledForm form = toolkit.createScrolledForm(parent);
-		form.setText(Messages.configurationEditorWebModulesPageTitle);
-		form.getBody().setLayout(new GridLayout());
-	
-		Section section = toolkit.createSection(form.getBody(), ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED
-			| ExpandableComposite.TITLE_BAR | Section.DESCRIPTION | ExpandableComposite.FOCUS_TITLE);
-		section.setText(Messages.configurationEditorWebModulesSection);
-		section.setDescription(Messages.configurationEditorWebModulesDescription);
-		section.setLayoutData(new GridData(GridData.FILL_BOTH));
-
-		Composite composite = toolkit.createComposite(section);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 2;
-		layout.marginHeight = 5;
-		layout.marginWidth = 10;
-		layout.verticalSpacing = 5;
-		layout.horizontalSpacing = 15;
-		composite.setLayout(layout);
-		composite.setLayoutData(new GridData(GridData.FILL_BOTH));
-		IWorkbenchHelpSystem whs = PlatformUI.getWorkbench().getHelpSystem();
-		whs.setHelp(composite, ContextIds.CONFIGURATION_EDITOR_WEBMODULES);
-		toolkit.paintBordersFor(composite);
-		section.setClient(composite);
-		
-		webAppTable = toolkit.createTable(composite, SWT.V_SCROLL | SWT.SINGLE | SWT.FULL_SELECTION);
-		webAppTable.setHeaderVisible(true);
-		webAppTable.setLinesVisible(true);
-		whs.setHelp(webAppTable, ContextIds.CONFIGURATION_EDITOR_WEBMODULES_LIST);
-		//toolkit.paintBordersFor(webAppTable);
-		
-		TableLayout tableLayout = new TableLayout();
-	
-		TableColumn col = new TableColumn(webAppTable, SWT.NONE);
-		col.setText(Messages.configurationEditorPathColumn);
-		ColumnWeightData colData = new ColumnWeightData(8, 85, true);
-		tableLayout.addColumnData(colData);
-	
-		TableColumn col2 = new TableColumn(webAppTable, SWT.NONE);
-		col2.setText(Messages.configurationEditorDocBaseColumn);
-		colData = new ColumnWeightData(13, 135, true);
-		tableLayout.addColumnData(colData);
-	
-		TableColumn col3 = new TableColumn(webAppTable, SWT.NONE);
-		col3.setText(Messages.configurationEditorProjectColumn);
-		colData = new ColumnWeightData(8, 85, true);
-		tableLayout.addColumnData(colData);
-	
-		TableColumn col4 = new TableColumn(webAppTable, SWT.NONE);
-		col4.setText(Messages.configurationEditorReloadColumn);
-		colData = new ColumnWeightData(7, 75, true);
-		tableLayout.addColumnData(colData);
-		
-		webAppTable.setLayout(tableLayout);
-	
-		GridData data = new GridData(GridData.FILL_HORIZONTAL);
-		data.widthHint = 450;
-		data.heightHint = 120;
-		webAppTable.setLayoutData(data);
-		webAppTable.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				selectWebApp();
-			}
-		});
-	
-		Composite rightPanel = toolkit.createComposite(composite);
-		layout = new GridLayout();
-		layout.marginHeight = 0;
-		layout.marginWidth = 0;
-		rightPanel.setLayout(layout);
-		data = new GridData();
-		rightPanel.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL | GridData.VERTICAL_ALIGN_BEGINNING));
-		//toolkit.paintBordersFor(rightPanel);
-	
-		// buttons still to add:
-		// add project, add external module, remove module
-		addProject = toolkit.createButton(rightPanel, Messages.configurationEditorAddProjectModule, SWT.PUSH);
-		data = new GridData(GridData.FILL_HORIZONTAL);
-		addProject.setLayoutData(data);
-		whs.setHelp(addProject, ContextIds.CONFIGURATION_EDITOR_WEBMODULES_ADD_PROJECT);
-	
-		// disable the add project module button if there are no
-		// web projects in the workbench
-		if (!canAddWebModule())
-			addProject.setEnabled(false);
-		else {
-			addProject.addSelectionListener(new SelectionAdapter() {
-				public void widgetSelected(SelectionEvent e) {
-					WebModuleDialog dialog = new WebModuleDialog(getEditorSite().getShell(), getServer(), server2, configuration, true);
-					dialog.open();
-					if (dialog.getReturnCode() == IDialogConstants.OK_ID) {
-						execute(new AddWebModuleCommand(configuration, dialog.getWebModule()));
-					}
-				}
-			});
-		}
-	
-		addExtProject = toolkit.createButton(rightPanel, Messages.configurationEditorAddExternalModule, SWT.PUSH);
-		data = new GridData(GridData.FILL_HORIZONTAL);
-		addExtProject.setLayoutData(data);
-		addExtProject.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				WebModuleDialog dialog = new WebModuleDialog(getEditorSite().getShell(), getServer(), server2, configuration, false);
-				dialog.open();
-				if (dialog.getReturnCode() == IDialogConstants.OK_ID) {
-					execute(new AddWebModuleCommand(configuration, dialog.getWebModule()));
-				}
-			}
-		});
-		whs.setHelp(addExtProject, ContextIds.CONFIGURATION_EDITOR_WEBMODULES_ADD_EXTERNAL);
-		
-		edit = toolkit.createButton(rightPanel, Messages.editorEdit, SWT.PUSH);
-		data = new GridData(GridData.FILL_HORIZONTAL);
-		edit.setLayoutData(data);
-		edit.setEnabled(false);
-		edit.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				if (selection < 0)
-					return;
-				WebModule module = (WebModule) configuration.getWebModules().get(selection);
-				WebModuleDialog dialog = new WebModuleDialog(getEditorSite().getShell(), getServer(), server2, configuration, module);
-				dialog.open();
-				if (dialog.getReturnCode() == IDialogConstants.OK_ID) {
-					execute(new ModifyWebModuleCommand(configuration, selection, dialog.getWebModule()));
-				}
-			}
-		});
-		whs.setHelp(edit, ContextIds.CONFIGURATION_EDITOR_WEBMODULES_EDIT);
-	
-		remove = toolkit.createButton(rightPanel, Messages.editorRemove, SWT.PUSH);
-		data = new GridData(GridData.FILL_HORIZONTAL);
-		remove.setLayoutData(data);
-		remove.setEnabled(false);
-		remove.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				if (selection < 0)
-					return;
-				execute(new RemoveWebModuleCommand(configuration, selection));
-				remove.setEnabled(false);
-				edit.setEnabled(false);
-				selection = -1;
-			}
-		});
-		whs.setHelp(remove, ContextIds.CONFIGURATION_EDITOR_WEBMODULES_REMOVE);
-		
-		form.setContent(section);
-		form.reflow(true);
-
-		initialize();
-	}
-
-	protected boolean canAddWebModule() {
-		IModule[] modules = ServerUtil.getModules(server.getServerType().getRuntimeType().getModuleTypes());
-		if (modules != null) {
-			int size = modules.length;
-			for (int i = 0; i < size; i++) {
-				IWebModule webModule = (IWebModule) modules[i].loadAdapter(IWebModule.class, null);
-				if (webModule != null) {
-					IStatus status = server.canModifyModules(new IModule[] { modules[i] }, null, null);
-					if (status != null && status.isOK())
-						return true;
-				}
-			}
-		}
-		return false;
-	}
-
-	public void dispose() {
-		if (configuration != null)
-			configuration.removePropertyChangeListener(listener);
-	}
-		
-	/* (non-Javadoc)
-	 * Initializes the editor part with a site and input.
-	 */
-	public void init(IEditorSite site, IEditorInput input) {
-		super.init(site, input);
-		
-		TomcatServer ts = (TomcatServer) server.loadAdapter(TomcatServer.class, null);
-		try {
-			configuration = ts.getTomcatConfiguration();
-		} catch (Exception e) {
-			// ignore
-		}
-		if (configuration != null)
-			addChangeListener();
-		
-		if (server != null)
-			server2 = (ITomcatServerWorkingCopy) server.loadAdapter(ITomcatServerWorkingCopy.class, null);
-		
-		initialize();
-	}
-
-	/**
-	 * 
-	 */
-	protected void initialize() {
-		if (webAppTable == null)
-			return;
-
-		webAppTable.removeAll();
-	
-		List list = configuration.getWebModules();
-		Iterator iterator = list.iterator();
-		while (iterator.hasNext()) {
-			WebModule module = (WebModule) iterator.next();
-			TableItem item = new TableItem(webAppTable, SWT.NONE);
-	
-			// FIX-ME
-			String memento = module.getMemento();
-			String projectName = "";
-			Image projectImage = null;
-			if (memento != null && memento.length() > 0) {
-				projectName = NLS.bind(Messages.configurationEditorProjectMissing, new String[] {memento});
-				projectImage = TomcatUIPlugin.getImage(TomcatUIPlugin.IMG_PROJECT_MISSING);
-				IModule module2 = ServerUtil.getModule(memento);
-				if (module != null) {
-					projectName = ServerUICore.getLabelProvider().getText(module2);
-					projectImage = ServerUICore.getLabelProvider().getImage(module2);
-				}
-			}
-	
-			String reload = module.isReloadable() ? Messages.configurationEditorReloadEnabled : Messages.configurationEditorReloadDisabled;
-			String[] s = new String[] {module.getPath(), module.getDocumentBase(), projectName, reload};
-			item.setText(s);
-			item.setImage(0, TomcatUIPlugin.getImage(TomcatUIPlugin.IMG_WEB_MODULE));
-			if (projectImage != null)
-				item.setImage(2, projectImage);
-		}
-		
-		if (readOnly) {
-			addProject.setEnabled(false);
-			addExtProject.setEnabled(false);
-			edit.setEnabled(false);
-			remove.setEnabled(false);
-		} else {
-			addProject.setEnabled(canAddWebModule());
-			addExtProject.setEnabled(true);
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void selectWebApp() {
-		if (readOnly)
-			return;
-
-		try {
-			selection = webAppTable.getSelectionIndex();
-			remove.setEnabled(true);
-			edit.setEnabled(true);
-		} catch (Exception e) {
-			selection = -1;
-			remove.setEnabled(false);
-			edit.setEnabled(false);
-		}
-	}
-	
-	/*
-	 * @see IWorkbenchPart#setFocus()
-	 */
-	public void setFocus() {
-		if (webAppTable != null)
-			webAppTable.setFocus();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/MimeMappingDialog.java b/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/MimeMappingDialog.java
deleted file mode 100644
index cf65ff8..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/MimeMappingDialog.java
+++ /dev/null
@@ -1,155 +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.tomcat.ui.internal.editor;
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jst.server.tomcat.core.internal.MimeMapping;
-import org.eclipse.jst.server.tomcat.ui.internal.ContextIds;
-import org.eclipse.jst.server.tomcat.ui.internal.Messages;
-import org.eclipse.jst.server.tomcat.ui.internal.TomcatUIPlugin;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.help.IWorkbenchHelpSystem;
-/**
- * Dialog to add or modify mime mappings.
- */
-public class MimeMappingDialog extends Dialog {
-	protected MimeMapping map;
-	protected boolean isEdit;
-
-	/**
-	 * MimeMappingDialog constructor comment.
-	 * @param parentShell org.eclipse.swt.widgets.Shell
-	 */
-	public MimeMappingDialog(Shell parentShell) {
-		this(parentShell, new MimeMapping("", ""));
-		isEdit = false;
-	}
-
-	/**
-	 * MimeMappingDialog constructor.
-	 * 
-	 * @param parentShell a shell
-	 * @param map a mime mapping
-	 */
-	public MimeMappingDialog(Shell parentShell, MimeMapping map) {
-		super(parentShell);
-		this.map = map;
-		isEdit = true;
-	}
-
-	/**
-	 *
-	 */
-	protected void configureShell(Shell newShell) {
-		super.configureShell(newShell);
-		newShell.setImage(TomcatUIPlugin.getImage(TomcatUIPlugin.IMG_MIME_MAPPING));
-		if (isEdit)
-			newShell.setText(Messages.configurationEditorMimeMapppingDialogTitleEdit);
-		else
-			newShell.setText(Messages.configurationEditorMimeMapppingDialogTitleAdd);
-	}
-
-	/**
-	 * Creates and returns the contents of the upper part 
-	 * of this dialog (above the button bar).
-	 * <p>
-	 * The <code>Dialog</code> implementation of this framework method
-	 * creates and returns a new <code>Composite</code> with
-	 * standard margins and spacing. Subclasses should override.
-	 * </p>
-	 *
-	 * @param parent the parent composite to contain the dialog area
-	 * @return the dialog area control
-	 */
-	protected Control createDialogArea(Composite parent) {
-		// create a composite with standard margins and spacing
-		Composite composite = new Composite(parent, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 2;
-		layout.marginHeight = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_MARGIN);
-		layout.marginWidth = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_MARGIN);
-		layout.verticalSpacing = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_SPACING);
-		layout.horizontalSpacing = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_SPACING);
-		composite.setLayout(layout);
-		composite.setLayoutData(new GridData(GridData.FILL_BOTH));
-		composite.setFont(parent.getFont());
-		IWorkbenchHelpSystem whs = PlatformUI.getWorkbench().getHelpSystem();
-		whs.setHelp(composite, ContextIds.CONFIGURATION_EDITOR_MAPPING_DIALOG);
-	
-		new Label(composite, SWT.NONE).setText(Messages.configurationEditorMimeMapppingDialogMimeType);
-		final Text type = new Text(composite, SWT.BORDER);
-		GridData data = new GridData();
-		data.widthHint = 150;
-		type.setLayoutData(data);
-		type.setText(map.getMimeType());
-		type.addModifyListener(new ModifyListener() {
-			public void modifyText(ModifyEvent e) {
-				map = new MimeMapping(map.getExtension(), type.getText());
-				validate();
-			}
-		});
-		whs.setHelp(type, ContextIds.CONFIGURATION_EDITOR_MAPPING_DIALOG_TYPE);
-	
-		new Label(composite, SWT.NONE).setText(Messages.configurationEditorMimeMapppingDialogMimeExtension);
-		final Text extension = new Text(composite, SWT.BORDER);
-		data = new GridData();
-		data.widthHint = 150;
-		extension.setLayoutData(data);
-		extension.setText(map.getExtension());
-		extension.addModifyListener(new ModifyListener() {
-			public void modifyText(ModifyEvent e) {
-				map = new MimeMapping(extension.getText(), map.getMimeType());
-				validate();
-			}
-		});
-		whs.setHelp(extension, ContextIds.CONFIGURATION_EDITOR_MAPPING_DIALOG_EXTENSION);
-		
-		Dialog.applyDialogFont(composite);
-	
-		return composite;
-	}
-	
-	protected Control createButtonBar(Composite parent) {
-		Control control = super.createButtonBar(parent);
-		validate();
-
-		return control;
-	}
-
-	protected void validate() {
-		boolean ok = true;
-		if (map.getExtension() == null || map.getExtension().length() < 1)
-			ok = false;
-		if (map.getMimeType() == null || map.getMimeType().length() < 1)
-			ok = false;
-		getButton(IDialogConstants.OK_ID).setEnabled(ok);
-	}
-
-	/**
-	 * Return the mime mapping.
-	 *
-	 * @return org.eclipse.jst.server.tomcat.MimeMapping
-	 */
-	public MimeMapping getMimeMapping() {
-		return map;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/ServerGeneralEditorSection.java b/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/ServerGeneralEditorSection.java
deleted file mode 100644
index b6c0a25..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/ServerGeneralEditorSection.java
+++ /dev/null
@@ -1,203 +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.tomcat.ui.internal.editor;
-
-import java.beans.PropertyChangeEvent;
-import java.beans.PropertyChangeListener;
-
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatServer;
-import org.eclipse.jst.server.tomcat.core.internal.TomcatServer;
-import org.eclipse.jst.server.tomcat.core.internal.command.SetDebugModeCommand;
-import org.eclipse.jst.server.tomcat.core.internal.command.SetSecureCommand;
-import org.eclipse.jst.server.tomcat.core.internal.command.SetTestEnvironmentCommand;
-import org.eclipse.jst.server.tomcat.ui.internal.ContextIds;
-import org.eclipse.jst.server.tomcat.ui.internal.Messages;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorSite;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.forms.widgets.ExpandableComposite;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-import org.eclipse.ui.forms.widgets.Section;
-import org.eclipse.ui.help.IWorkbenchHelpSystem;
-
-import org.eclipse.wst.server.ui.editor.*;
-/**
- * Tomcat server general editor page.
- */
-public class ServerGeneralEditorSection extends ServerEditorSection {
-	protected TomcatServer tomcatServer;
-
-	protected Button secure;
-	protected Button debug;
-	protected Button testEnvironment;
-	protected boolean updating;
-
-	protected PropertyChangeListener listener;
-
-	/**
-	 * ServerGeneralEditorPart constructor comment.
-	 */
-	public ServerGeneralEditorSection() {
-		// do nothing
-	}
-
-	/**
-	 * 
-	 */
-	protected void addChangeListener() {
-		listener = new PropertyChangeListener() {
-			public void propertyChange(PropertyChangeEvent event) {
-				if (updating)
-					return;
-				updating = true;
-				if (TomcatServer.PROPERTY_SECURE.equals(event.getPropertyName())) {
-					Boolean b = (Boolean) event.getNewValue();
-					ServerGeneralEditorSection.this.secure.setSelection(b.booleanValue());
-				} else if (TomcatServer.PROPERTY_DEBUG.equals(event.getPropertyName())) {
-					Boolean b = (Boolean) event.getNewValue();
-					ServerGeneralEditorSection.this.debug.setSelection(b.booleanValue());
-				} else if (ITomcatServer.PROPERTY_TEST_ENVIRONMENT.equals(event.getPropertyName())) {
-					Boolean b = (Boolean) event.getNewValue();
-					ServerGeneralEditorSection.this.testEnvironment.setSelection(b.booleanValue());
-				}
-				updating = false;
-			}
-		};
-		server.addPropertyChangeListener(listener);
-	}
-	
-	/**
-	 * Creates the SWT controls for this workbench part.
-	 *
-	 * @param parent the parent control
-	 */
-	public void createSection(Composite parent) {
-		super.createSection(parent);
-		FormToolkit toolkit = getFormToolkit(parent.getDisplay());
-		
-		Section section = toolkit.createSection(parent, ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED
-			| ExpandableComposite.TITLE_BAR | Section.DESCRIPTION | ExpandableComposite.FOCUS_TITLE);
-		section.setText(Messages.serverEditorGeneralSection);
-		section.setDescription(Messages.serverEditorGeneralDescription);
-		section.setLayoutData(new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_FILL));
-
-		Composite composite = toolkit.createComposite(section);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 3;
-		layout.marginHeight = 5;
-		layout.marginWidth = 10;
-		layout.verticalSpacing = 5;
-		layout.horizontalSpacing = 15;
-		composite.setLayout(layout);
-		composite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_FILL));
-		IWorkbenchHelpSystem whs = PlatformUI.getWorkbench().getHelpSystem();
-		whs.setHelp(composite, ContextIds.SERVER_EDITOR);
-		toolkit.paintBordersFor(composite);
-		section.setClient(composite);
-		
-		// test environment
-		testEnvironment = toolkit.createButton(composite, Messages.serverEditorTestEnvironment, SWT.CHECK);
-		GridData data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		data.horizontalSpan = 3;
-		testEnvironment.setLayoutData(data);
-		testEnvironment.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent se) {
-				if (updating)
-					return;
-				updating = true;
-				execute(new SetTestEnvironmentCommand(tomcatServer, testEnvironment.getSelection()));
-				updating = false;
-			}
-		});
-		whs.setHelp(testEnvironment, ContextIds.SERVER_EDITOR_TEST_ENVIRONMENT);
-
-		// security
-		secure = toolkit.createButton(composite, Messages.serverEditorSecure, SWT.CHECK);
-		data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		data.horizontalSpan = 3;
-		secure.setLayoutData(data);
-		secure.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent se) {
-				if (updating)
-					return;
-				updating = true;
-				execute(new SetSecureCommand(tomcatServer, secure.getSelection()));
-				updating = false;
-			}
-		});
-		whs.setHelp(secure, ContextIds.SERVER_EDITOR_SECURE);
-	
-		// debug mode
-		debug = toolkit.createButton(composite, Messages.serverEditorDebugMode, SWT.CHECK);
-		data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		data.horizontalSpan = 3;
-		debug.setLayoutData(data);
-		debug.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent se) {
-				if (updating)
-					return;
-				updating = true;
-				execute(new SetDebugModeCommand(tomcatServer, debug.getSelection()));
-				updating = false;
-			}
-		});
-		whs.setHelp(debug, ContextIds.SERVER_EDITOR_DEBUG_MODE);
-	
-		initialize();
-	}
-
-	public void dispose() {
-		if (server != null)
-			server.removePropertyChangeListener(listener);
-	}
-
-	public void init(IEditorSite site, IEditorInput input) {
-		super.init(site, input);
-		
-		if (server != null) {
-			tomcatServer = (TomcatServer) server.loadAdapter(TomcatServer.class, null);
-			addChangeListener();
-		}
-		initialize();
-	}
-
-	/**
-	 * Initialize the fields in this editor.
-	 */
-	protected void initialize() {
-		if (secure == null || tomcatServer == null)
-			return;
-		updating = true;
-
-		testEnvironment.setSelection(tomcatServer.isTestEnvironment());
-		secure.setSelection(tomcatServer.isSecure());
-		if (server.getRuntime() != null && server.getRuntime().getRuntimeType().getId().indexOf("32") >= 0 || readOnly)
-			debug.setEnabled(false);
-		else {
-			debug.setEnabled(true);
-			debug.setSelection(tomcatServer.isDebug());
-		}
-		
-		if (readOnly)
-			secure.setEnabled(false);
-		else
-			secure.setEnabled(true);
-		
-		updating = false;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/WebModuleDialog.java b/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/WebModuleDialog.java
deleted file mode 100644
index 2405613..0000000
--- a/plugins/org.eclipse.jst.server.tomcat.ui/tomcatui/org/eclipse/jst/server/tomcat/ui/internal/editor/WebModuleDialog.java
+++ /dev/null
@@ -1,280 +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.tomcat.ui.internal.editor;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jst.server.core.IWebModule;
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatConfiguration;
-import org.eclipse.jst.server.tomcat.core.internal.ITomcatServer;
-import org.eclipse.jst.server.tomcat.core.internal.WebModule;
-import org.eclipse.jst.server.tomcat.ui.internal.ContextIds;
-import org.eclipse.jst.server.tomcat.ui.internal.Messages;
-import org.eclipse.jst.server.tomcat.ui.internal.Trace;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.DirectoryDialog;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableItem;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.help.IWorkbenchHelpSystem;
-
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.IServerAttributes;
-import org.eclipse.wst.server.core.ServerUtil;
-import org.eclipse.wst.server.ui.ServerUICore;
-/**
- * Dialog to add or modify web modules.
- */
-public class WebModuleDialog extends Dialog {
-	protected WebModule module;
-	protected boolean isEdit;
-	protected boolean isProject;
-	protected Text docBase;
-	protected IServerAttributes server2;
-	protected ITomcatServer server;
-	protected ITomcatConfiguration config;
-
-	protected Table projTable;
-
-	/**
-	 * WebModuleDialog constructor comment.
-	 * 
-	 * @param parentShell a shell
-	 * @param server2 a server
-	 * @param server a Tomcat server
-	 * @param config a Tomcat server configuration
-	 * @param module a module
-	 */
-	public WebModuleDialog(Shell parentShell, IServerAttributes server2, ITomcatServer server, ITomcatConfiguration config, WebModule module) {
-		super(parentShell);
-		this.module = module;
-		this.server2 = server2;
-		this.server = server;
-		this.config = config;
-		isEdit = true;
-	}
-
-	/**
-	 * WebModuleDialog constructor comment.
-	 * 
-	 * @param parentShell a shell
-	 * @param server2 a server
-	 * @param server a Tomcat server
-	 * @param config a Tomcat server configuration
-	 * @param isProject true if it is a project
-	 */
-	public WebModuleDialog(Shell parentShell, IServerAttributes server2, ITomcatServer server, ITomcatConfiguration config, boolean isProject) {
-		this(parentShell, server2, server, config, new WebModule("/", "", null, true));
-		isEdit = false;
-		this.isProject = isProject;
-	}
-
-	/**
-	 *
-	 */
-	protected void configureShell(Shell newShell) {
-		super.configureShell(newShell);
-		if (isEdit)
-			newShell.setText(Messages.configurationEditorWebModuleDialogTitleEdit);
-		else
-			newShell.setText(Messages.configurationEditorWebModuleDialogTitleAdd);
-	}
-
-	/**
-	 * Creates and returns the contents of the upper part 
-	 * of this dialog (above the button bar).
-	 * <p>
-	 * The <code>Dialog</code> implementation of this framework method
-	 * creates and returns a new <code>Composite</code> with
-	 * standard margins and spacing. Subclasses should override.
-	 * </p>
-	 *
-	 * @param parent the parent composite to contain the dialog area
-	 * @return the dialog area control
-	 */
-	protected Control createDialogArea(Composite parent) {
-		// create a composite with standard margins and spacing
-		Composite composite = new Composite(parent, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 3;
-		layout.marginHeight = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_MARGIN);
-		layout.marginWidth = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_MARGIN);
-		layout.verticalSpacing = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_SPACING);
-		layout.horizontalSpacing = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_SPACING);
-		composite.setLayout(layout);
-		composite.setLayoutData(new GridData(GridData.FILL_BOTH));
-		composite.setFont(parent.getFont());
-		IWorkbenchHelpSystem whs = PlatformUI.getWorkbench().getHelpSystem();
-		whs.setHelp(composite, ContextIds.CONFIGURATION_EDITOR_WEBMODULE_DIALOG);
-		// add project field if we are adding a project
-		if (!isEdit && isProject) {
-			Label l = new Label(composite, SWT.NONE);
-			l.setText(Messages.configurationEditorWebModuleDialogProjects);
-			GridData data = new GridData(GridData.VERTICAL_ALIGN_BEGINNING);
-			l.setLayoutData(data);
-			
-			projTable = new Table(composite, SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL | SWT.SINGLE);
-			data = new GridData();
-			data.widthHint = 150;
-			data.heightHint = 75;
-			projTable.setLayoutData(data);
-			whs.setHelp(projTable, ContextIds.CONFIGURATION_EDITOR_WEBMODULE_DIALOG_PROJECT);
-	
-			// fill table with web module projects
-			IModule[] modules = ServerUtil.getModules(server2.getServerType().getRuntimeType().getModuleTypes());
-			if (modules != null) {
-				int size = modules.length;
-				for (int i = 0; i < size; i++) {
-					IModule module3 = modules[i];
-					IWebModule module2 = (IWebModule) module3.loadAdapter(IWebModule.class, null);
-					if (module2 != null) {
-						IStatus status = server2.canModifyModules(new IModule[] { module3 }, null, null);
-						if (status != null && status.isOK()) {
-							TableItem item = new TableItem(projTable, SWT.NONE);
-							item.setText(0, ServerUICore.getLabelProvider().getText(module2));
-							item.setImage(0, ServerUICore.getLabelProvider().getImage(module2));
-							item.setData(module2);
-						}
-					}
-				}
-			}
-			new Label(composite, SWT.NONE).setText(" ");
-		}
-	
-		new Label(composite, SWT.NONE).setText(Messages.configurationEditorWebModuleDialogDocumentBase);
-		docBase = new Text(composite, SWT.BORDER);
-		GridData data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		docBase.setLayoutData(data);
-		docBase.setText(module.getDocumentBase());
-		whs.setHelp(docBase, ContextIds.CONFIGURATION_EDITOR_WEBMODULE_DIALOG_DOCBASE);
-	
-		// disable document base for project modules
-		if (isProject || (module.getMemento() != null && module.getMemento().length() > 0))
-			docBase.setEnabled(false);
-		else {
-			docBase.addModifyListener(new ModifyListener() {
-				public void modifyText(ModifyEvent e) {
-					module = new WebModule(module.getPath(), docBase.getText(), module.getMemento(), module.isReloadable());
-					validate();
-				}
-			});
-		}
-	
-		if (isEdit || isProject)
-			new Label(composite, SWT.NONE).setText(" ");
-		else {
-			Button browse = new Button(composite, SWT.NONE);
-			browse.setText(Messages.browse);
-			browse.addSelectionListener(new SelectionAdapter() {
-				public void widgetSelected(SelectionEvent se) {
-					try {
-						DirectoryDialog dialog = new DirectoryDialog(getShell());
-						dialog.setMessage(Messages.configurationEditorWebModuleDialogSelectDirectory);
-						String selectedDirectory = dialog.open();
-						if (selectedDirectory != null)
-							docBase.setText(selectedDirectory);
-					} catch (Exception e) {
-						Trace.trace(Trace.SEVERE, "Error browsing", e);
-					}
-				}
-			});
-		}
-	
-		// path (context-root)
-		new Label(composite, SWT.NONE).setText(Messages.configurationEditorWebModuleDialogPath);
-		final Text path = new Text(composite, SWT.BORDER);
-		data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		data.widthHint = 150;
-		path.setLayoutData(data);
-		path.setText(module.getPath());
-		path.addModifyListener(new ModifyListener() {
-			public void modifyText(ModifyEvent e) {
-				module = new WebModule(path.getText(), module.getDocumentBase(), module.getMemento(), module.isReloadable());
-			}
-		});
-		whs.setHelp(path, ContextIds.CONFIGURATION_EDITOR_WEBMODULE_DIALOG_PATH);
-	
-		new Label(composite, SWT.NONE).setText("");
-		
-		// auto reload
-		new Label(composite, SWT.NONE).setText(Messages.configurationEditorWebModuleDialogAutoReload);
-		final Button reloadable = new Button(composite, SWT.CHECK);
-		reloadable.setText(Messages.configurationEditorWebModuleDialogReloadEnabled);
-		data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		reloadable.setLayoutData(data);
-		reloadable.setSelection(module.isReloadable());
-		reloadable.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				module = new WebModule(module.getPath(), module.getDocumentBase(), module.getMemento(), reloadable.getSelection());
-			}
-		});
-		whs.setHelp(reloadable, ContextIds.CONFIGURATION_EDITOR_WEBMODULE_DIALOG_RELOAD);
-	
-		if (!isEdit && isProject) {
-			projTable.addSelectionListener(new SelectionAdapter() {
-				public void widgetSelected(SelectionEvent event) {
-					try {
-						IWebModule module2 = (IWebModule) projTable.getSelection()[0].getData();
-						String contextRoot = module2.getContextRoot();
-						if (contextRoot != null && !contextRoot.startsWith("/"))
-							contextRoot = "/" + contextRoot;
-						module = new WebModule(contextRoot, module2.getLocation().toOSString(), module.getMemento(), module.isReloadable());
-						docBase.setText(module2.getLocation().toOSString());
-					} catch (Exception e) {
-						// ignore
-					}
-					validate();
-				}
-			});
-			new Label(composite, SWT.NONE).setText("");
-		}
-	
-		Dialog.applyDialogFont(composite);
-		return composite;
-	}
-	
-	protected Control createButtonBar(Composite parent) {
-		Control control = super.createButtonBar(parent);
-		validate();
-
-		return control;
-	}
-
-	protected void validate() {
-		boolean ok = true;
-		if (module.getDocumentBase() == null || module.getDocumentBase().length() < 1)
-			ok = false;
-		
-		getButton(IDialogConstants.OK_ID).setEnabled(ok);
-	}
-
-	/**
-	 * Return the mime mapping.
-	 *
-	 * @return org.eclipse.jst.server.tomcat.WebModule
-	 */
-	public WebModule getWebModule() {
-		return module;
-	}
-}
\ 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 6f75060..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.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<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 92a2cef..0000000
--- a/plugins/org.eclipse.jst.server.ui/.cvsignore
+++ /dev/null
@@ -1,5 +0,0 @@
-bin
-build.xml
-org.eclipse.jst.server.ui_3.0.0.jar
-sjavaui.jar
-temp.folder
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 9adaac1..0000000
--- a/plugins/org.eclipse.jst.server.ui/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.ui; singleton:=true
-Bundle-Version: 1.0.0
-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
-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
-Eclipse-AutoStart: true
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 086c918..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/
-bin.excludes = bin/**,\
-               @dot/**,\
-               temp.folder/**
-src.includes = schema/,\
-               build.properties
-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/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/plugin.properties b/plugins/org.eclipse.jst.server.ui/plugin.properties
deleted file mode 100644
index 8a2af62..0000000
--- a/plugins/org.eclipse.jst.server.ui/plugin.properties
+++ /dev/null
@@ -1,14 +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
-
-cactusJUnitClient=JUnit Client
\ No newline at end of file
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 f32e52c..0000000
--- a/plugins/org.eclipse.jst.server.ui/plugin.xml
+++ /dev/null
@@ -1,51 +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="j2ee.web"
-        icon="icons/obj16/web_module.gif"/>
-     <image
-        id="org.eclipse.jst.server"
-        typeIds="j2ee.ejb"
-        icon="icons/obj16/ejb_module.gif"/>
-     <image
-        id="org.eclipse.jst.server"
-        typeIds="j2ee.ear"
-        icon="icons/obj16/ear.gif"/>
-     <image
-        id="org.eclipse.jst.server"
-        typeIds="j2ee.appclient"
-        icon="icons/obj16/appclient_module.gif"/>
-     <image
-        id="org.eclipse.jst.server"
-        typeIds="j2ee.connector"
-        icon="icons/obj16/java_jar.gif"/>
-     <image
-        id="org.eclipse.jst.server"
-        typeIds="j2ee.loosearchive"
-        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>
-
-</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 f3cbdeb..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/ContextIds.java
+++ /dev/null
@@ -1,54 +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 JAVA_CLASSPATH = JavaServerUIPlugin.PLUGIN_ID + ".jvcp0000";
-	public static final String JAVA_CLASSPATH_TABLE = JavaServerUIPlugin.PLUGIN_ID + ".jvcp0002";
-	public static final String JAVA_CLASSPATH_UP = JavaServerUIPlugin.PLUGIN_ID + ".jvcp0004";
-	public static final String JAVA_CLASSPATH_DOWN = JavaServerUIPlugin.PLUGIN_ID + ".jvcp0006";
-	public static final String JAVA_CLASSPATH_ADD_EXTERNAL_JAR = JavaServerUIPlugin.PLUGIN_ID + ".jvcp0008";
-	public static final String JAVA_CLASSPATH_ADD_EXTERNAL_FOLDER = JavaServerUIPlugin.PLUGIN_ID + ".jvcp0009";
-	public static final String JAVA_CLASSPATH_ADD_VARIABLE = JavaServerUIPlugin.PLUGIN_ID + ".jvcp0011";
-	public static final String JAVA_CLASSPATH_ADD_STRING = JavaServerUIPlugin.PLUGIN_ID + ".jvcp0013";
-	public static final String JAVA_CLASSPATH_EDIT = JavaServerUIPlugin.PLUGIN_ID + ".jvcp0015";
-	public static final String JAVA_CLASSPATH_REMOVE = JavaServerUIPlugin.PLUGIN_ID + ".jvcp0012";
-
-	public static final String JAVA_PATH = JavaServerUIPlugin.PLUGIN_ID + ".jvpt0000";
-	public static final String JAVA_PATH_FIELD = JavaServerUIPlugin.PLUGIN_ID + ".jvpt0002";
-	public static final String JAVA_PATH_APPEND = JavaServerUIPlugin.PLUGIN_ID + ".jvpt0004";
-	public static final String JAVA_PATH_PREPEND = JavaServerUIPlugin.PLUGIN_ID + ".jvpt0006";
-	public static final String JAVA_PATH_REPLACE = JavaServerUIPlugin.PLUGIN_ID + ".jvpt0008";
-
-	public static final String JAVA_SYSTEM_PROPERTY = JavaServerUIPlugin.PLUGIN_ID + ".jvsp0000";
-	public static final String JAVA_SYSTEM_PROPERTY_TABLE = JavaServerUIPlugin.PLUGIN_ID + ".jvsp0002";
-	public static final String JAVA_SYSTEM_PROPERTY_ADD = JavaServerUIPlugin.PLUGIN_ID + ".jvsp0004";
-	public static final String JAVA_SYSTEM_PROPERTY_EDIT = JavaServerUIPlugin.PLUGIN_ID + ".jvsp0006";
-	public static final String JAVA_SYSTEM_PROPERTY_REMOVE = JavaServerUIPlugin.PLUGIN_ID + ".jvsp0008";
-
-	public static final String JAVA_SYSTEM_PROPERTY_DIALOG = JavaServerUIPlugin.PLUGIN_ID + ".jvpd0000";
-	public static final String JAVA_SYSTEM_PROPERTY_DIALOG_NAME = JavaServerUIPlugin.PLUGIN_ID + ".jvpd0002";
-	public static final String JAVA_SYSTEM_PROPERTY_DIALOG_VALUE = JavaServerUIPlugin.PLUGIN_ID + ".jvpd0004";
-
-	public static final String JAVA_CLASSPATH_VARIABLE_DIALOG = JavaServerUIPlugin.PLUGIN_ID + ".jvvd0000";
-	public static final String JAVA_CLASSPATH_VARIABLE_DIALOG_VARIABLE = JavaServerUIPlugin.PLUGIN_ID + ".jvvd0002";
-	public static final String JAVA_CLASSPATH_VARIABLE_DIALOG_EXTENSION = JavaServerUIPlugin.PLUGIN_ID + ".jvvd0004";
-	public static final String JAVA_CLASSPATH_VARIABLE_DIALOG_EXTENSION_BROWSE = JavaServerUIPlugin.PLUGIN_ID + ".jvvd0006";
-
-	public static final String JAVA_CLASSPATH_STRING_DIALOG = JavaServerUIPlugin.PLUGIN_ID + ".jvsd0000";
-	public static final String JAVA_CLASSPATH_STRING_DIALOG_PATH = JavaServerUIPlugin.PLUGIN_ID + ".jvsd0002";
-
-	public static final String JAVA_VM_ARGUMENTS = JavaServerUIPlugin.PLUGIN_ID + ".jvvm0000";
-	
-	public static final String RUNTIME_TARGET_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 751d769..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_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_TARGET_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 9def455..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/ImageResource.java
+++ /dev/null
@@ -1,122 +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_RUNTIME_TYPE = "runtimeType";
-
-	/**
-	 * 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_RUNTIME_TYPE, URL_WIZBAN + "new_runtime_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 36645f8..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/Messages.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.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 LaunchTestAction_message_selectConfiguration;
-	public static String LaunchTestAction_message_selectDebugConfiguration;
-	public static String LaunchTestAction_message_selectRunConfiguration;
-
-	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 e49fde1..0000000
--- a/plugins/org.eclipse.jst.server.ui/sjavaui/org/eclipse/jst/server/ui/internal/Messages.properties
+++ /dev/null
@@ -1,26 +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...
-
-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
\ 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/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.wst.server.core/.classpath b/plugins/org.eclipse.wst.server.core/.classpath
deleted file mode 100644
index cf5d302..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.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<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 dd71f75..0000000
--- a/plugins/org.eclipse.wst.server.core/.cvsignore
+++ /dev/null
@@ -1,5 +0,0 @@
-bin
-temp.folder
-build.xml
-servercore.jar
-org.eclipse.wst.server.core_3.0.0.jar
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 ca7b93a..0000000
--- a/plugins/org.eclipse.wst.server.core/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,20 +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.0
-Bundle-ClassPath: servercore.jar
-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.util",
- org.eclipse.wst.server.core.internal.provisional,
- 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.core.commands,
- org.eclipse.debug.core
-Eclipse-AutoStart: true
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 973f460..0000000
--- a/plugins/org.eclipse.wst.server.core/build.properties
+++ /dev/null
@@ -1,23 +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,\
-               servercore.jar,\
-               .options,\
-               META-INF/
-bin.excludes = bin/**,\
-               @dot/**,\
-               temp.folder/**
-src.includes = schema/,\
-               build.properties,\
-               component.xml
-source.servercore.jar = servercore/
-output.servercore.jar = bin/
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 955725d..0000000
--- a/plugins/org.eclipse.wst.server.core/component.xml
+++ /dev/null
@@ -1,66 +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="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="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="IModuleResource"/>
-    <type name="ModuleFactoryDelegate"/>
-<!--    <type name="RuntimeDelegate"/>
-    <type name="RuntimeLocatorDelegate"/>
-    <type name="RuntimeTargetHandlerDelegate"/> -->
-    <type name="IModuleFile"/>
-    <type name="IModuleResourceDelta"/>
-    <type name="ModuleArtifactAdapterDelegate"/>
-    <type name="IModuleFolder"/>
-    <type name="ServerDelegate"/>
-    <type name="LaunchableAdapterDelegate"/>
-    <type name="ClientDelegate"/>
-    <type name="ModuleDelegate"/>
-    <type name="PublishTaskDelegate"/>
-    <type name="PublishOperation"/>
-    <type name="ServerBehaviourDelegate"/>
-    <type name="InternalInitializer" implement="false" subclass="false" instantiate="false" reference="false"/>
-  </package>
-  <package name="org.eclipse.wst.server.core.util">
-  </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>
-  
-  <plugin id="org.eclipse.wst.server.util" fragment="false"/>
-</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 d009a63..0000000
--- a/plugins/org.eclipse.wst.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=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
-
-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 0d54575..0000000
--- a/plugins/org.eclipse.wst.server.core/plugin.xml
+++ /dev/null
@@ -1,24 +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/serverLocators.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="org.eclipse.wst.server.core.moduleTypes">
-    <moduleType
-       id="*"
-       name="%moduleTypeUnknown"/>
-  </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 d216daf..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/clients.exsd
+++ /dev/null
@@ -1,139 +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>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

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

-      </appInfo>

-      <documentation>

-         The following is an example of a client extension point:
-
-&lt;p&gt;
-&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;
-&lt;/p&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.wst.server.core.model.ClientDelegate&lt;/b&gt; and contains a public 0-arg constructor.

-      </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/internalServerLocators.exsd b/plugins/org.eclipse.wst.server.core/schema/internalServerLocators.exsd
deleted file mode 100644
index 5e4bc99..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/internalServerLocators.exsd
+++ /dev/null
@@ -1,127 +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="examples"/>
-      </appInfo>
-      <documentation>
-         The following is an example of a server locator extension point:
-
-&lt;p&gt;
-&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;
-&lt;/p&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 8b951e5..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/launchableAdapters.exsd
+++ /dev/null
@@ -1,120 +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="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a launchable adapter extension point:
-
-&lt;p&gt;
-&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;
-&lt;/p&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.wst.server.core.model.LaunchableAdapterDelegate&lt;/b&gt; and contains a public 0-arg constructor.

-      </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 292fcad..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/moduleArtifactAdapters.exsd
+++ /dev/null
@@ -1,118 +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="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a module object adapter extension point:
-
-&lt;p&gt;
-&lt;pre&gt;
-
-&lt;/pre&gt;
-&lt;/p&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.wst.server.core.model.ModuleArtifactAdapterDelegate&lt;/b&gt; and contains a public 0-arg constructor.

-      </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 752ce44..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/moduleFactories.exsd
+++ /dev/null
@@ -1,143 +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="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a module factory extension point:
-
-&lt;p&gt;
-&lt;pre&gt;
-
-&lt;/pre&gt;
-&lt;/p&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.wst.server.core.model.ModuleFactoryDelegate&lt;/b&gt; and contains a public 0-arg constructor.

-      </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 cd6f4b8..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/moduleTypes.exsd
+++ /dev/null
@@ -1,113 +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="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a module type extension point:
-
-&lt;p&gt;
-&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;
-&lt;/p&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

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

-      </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 6d13f90..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/publishTasks.exsd
+++ /dev/null
@@ -1,116 +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="examples"/>
-      </appInfo>
-      <documentation>
-         The following is an example of a publish task extension point:
-
-&lt;p&gt;
-&lt;pre&gt;
-
-&lt;/pre&gt;
-&lt;/p&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.model.PublishTaskDelegate&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/runtimeLocators.exsd b/plugins/org.eclipse.wst.server.core/schema/runtimeLocators.exsd
deleted file mode 100644
index d50f529..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/runtimeLocators.exsd
+++ /dev/null
@@ -1,120 +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="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a runtime locator extension point:
-
-&lt;p&gt;
-&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;
-&lt;/p&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.wst.server.core.model.RuntimeLocatorDelegate&lt;/b&gt; and contains a public 0-arg constructor.

-      </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 e441078..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/runtimeTargetHandlers.exsd
+++ /dev/null
@@ -1,128 +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="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a runtime target handler extension point:
-
-&lt;p&gt;
-&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;
-&lt;/p&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.wst.server.core.model.RuntimeTargetHandlerDelegate&lt;/b&gt; and contains a public 0-arg constructor.

-      </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 a124f07..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/runtimeTypes.exsd
+++ /dev/null
@@ -1,179 +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>

-            </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="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a runtime type extension point:
-
-&lt;p&gt;
-&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;
-&lt;/p&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.wst.server.core.model.RuntimeDelegate&lt;/b&gt; and contains a public 0-arg constructor.

-      </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 58b5811..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/serverMonitors.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="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="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a server monitor extension point:
-
-&lt;p&gt;
-&lt;pre&gt;
-
-&lt;/pre&gt;
-&lt;/p&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.ServerMonitorDelegate&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/serverTypes.exsd b/plugins/org.eclipse.wst.server.core/schema/serverTypes.exsd
deleted file mode 100644
index febb2cb..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/serverTypes.exsd
+++ /dev/null
@@ -1,221 +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 time out value that the tool will wait for the server to be started.

-               </documentation>

-            </annotation>

-         </attribute>

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

-            <annotation>

-               <documentation>

-                  the time out value that the tool will wait for the server to be stopped.

-               </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="examples"/>

-      </appInfo>

-      <documentation>

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

-

-&lt;p&gt;

-&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;/serverType&gt;

-   &lt;/extension&gt;

-&lt;/pre&gt;

-&lt;/p&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;b&gt;org.eclipse.wst.server.core.model.ServerDelegate&lt;/b&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;b&gt;org.eclipse.wst.server.core.model.ServerBehaviourDelegate&lt;/b&gt; and has a public 0-arg constructor.

-      </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 412f6c1..0000000
--- a/plugins/org.eclipse.wst.server.core/schema/startup.exsd
+++ /dev/null
@@ -1,116 +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.
-
-This extension point is internal and should not be used by any other plugins.

-      </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="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a startup extension point:
-
-&lt;p&gt;
-&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;
-&lt;/p&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.wst.server.core.model.IStartup&lt;/b&gt; and contains a public 0-arg constructor.

-      </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 332df45..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IModule.java
+++ /dev/null
@@ -1,124 +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.
-	 * <p>
-	 * This method will not check the delegate class for adapting
-	 * unless it is already loaded. No plugin loading will occur
-	 * when calling this method.
-	 * </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)
-	 */
-	public Object getAdapter(Class adapter);
-
-	/**
-	 * 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.
-	 * <p>
-	 * This method will force a load of the delegate class and
-	 * check it 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
-	 */
-	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 d019642..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, "j2ee.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 ea40305..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IProjectProperties.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.wst.server.core;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-/**
- * This interface holds information on the properties of a given project.
- *
- * <p>This interface is not intended to be implemented by clients.</p>
- * 
- * @since 1.0
- */
-public interface IProjectProperties {
-	/**
-	 * Returns the preferred runtime server for the project. 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)
-	 *
-	 * @return the current default server, or <code>null</code> if there is no
-	 *    default server
-	 * @deprecated preferred server should not be serialized into the project.
-	 *    use the equivalent method on ServerCore instead
-	 */
-	public IServer getDefaultServer();
-
-	/**
-	 * Sets the preferred runtime server for the project. Set the server to
-	 * null to clear the setting. If there is a problem saving the file, a CoreException
-	 * will be thrown.
-	 *
-	 * @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
-	 * @deprecated preferred server should not be serialized into the project.
-	 *    use the equivalent method on ServerCore instead
-	 */
-	public void setDefaultServer(IServer server, IProgressMonitor monitor) throws CoreException;
-
-	/**
-	 * Returns the current runtime target for this project.
-	 * 
-	 * @return the current runtime target, or <code>null</code> if the project has
-	 *    no runtime target 
-	 */
-	public IRuntime getRuntimeTarget();
-
-	/**
-	 * Sets the runtime target for the project.
-	 * 
-	 * @param runtime the runtime to use as the target, or <code>null</code> to
-	 *    unset the target 
-	 * @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 runtime target
-	 */
-	public void setRuntimeTarget(IRuntime runtime, 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/IRuntime.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntime.java
deleted file mode 100644
index 5a091cb..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntime.java
+++ /dev/null
@@ -1,213 +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>
- * <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>
- * 
- * @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.
-	 * <p>
-	 * This method will not check the delegate class for adapting
-	 * unless it is already loaded. No plugin loading will occur
-	 * when calling this method.
-	 * </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)
-	 */
-	public Object getAdapter(Class adapter);
-	
-	/**
-	 * 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.
-	 * <p>
-	 * This method will force a load of the delegate class and
-	 * check it 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
-	 */
-	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 5536769..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>
- * 
- * @since 1.0
- */
-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 ffe5fe9..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntimeType.java
+++ /dev/null
@@ -1,150 +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>
- * <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 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 7548c44..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IRuntimeWorkingCopy.java
+++ /dev/null
@@ -1,178 +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>
- * <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>
- * 
- * @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 c414d5e..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServer.java
+++ /dev/null
@@ -1,645 +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.
-	 *
-	 * <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.
-	 */
-	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);
-
-	/**
-	 * 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.
-	 * 
-	 * @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 c8cf7e2..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/IServerAttributes.java
+++ /dev/null
@@ -1,343 +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.
-	 * <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.
-	 * </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)
-	 */
-	public Object getAdapter(Class adapter);
-
-	/**
-	 * 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.
-	 * <p>
-	 * This method will force a load 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
-	 */
-	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 95c3d5d..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerCore.java
+++ /dev/null
@@ -1,460 +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.*;
-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 {
-	//	cached copy of all runtime types
-	private static List runtimeTypes;
-	
-	//	cached copy of all runtime target handlers
-	private static List runtimeTargetHandlers;
-
-	//	cached copy of all server and configuration types
-	private static List serverTypes;
-
-	static {
-		executeStartups();
-	}
-
-	/**
-	 * Cannot create ServerCore - use static methods.
-	 */
-	private ServerCore() {
-		// can't create
-	}
-
-	/**
-	 * Returns the resource manager.
-	 *
-	 * @return org.eclipse.wst.server.core.internal.ResourceManager
-	 */
-	private 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
-	 */
-	public static IProjectProperties getProjectProperties(IProject project) {
-		if (project == null)
-			throw new IllegalArgumentException();
-		return new ProjectProperties(project);
-	}
-
-	/**
-	 * 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() {
-		if (runtimeTargetHandlers == null)
-			loadRuntimeTargetHandlers();
-		
-		IRuntimeTargetHandler[] rth = new IRuntimeTargetHandler[runtimeTargetHandlers.size()];
-		runtimeTargetHandlers.toArray(rth);
-		return rth;
-	}
-
-	/**
-	 * 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) {
-		if (id == null)
-			throw new IllegalArgumentException();
-
-		if (runtimeTargetHandlers == null)
-			loadRuntimeTargetHandlers();
-		
-		Iterator iterator = runtimeTargetHandlers.iterator();
-		while (iterator.hasNext()) {
-			IRuntimeTargetHandler runtimeTargetListener = (IRuntimeTargetHandler) iterator.next();
-			if (id.equals(runtimeTargetListener.getId()))
-				return runtimeTargetListener;
-		}
-		return null;
-	}
-
-	/**
-	 * 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, "runtimeTypes");
-
-		int size = cf.length;
-		runtimeTypes = new ArrayList(size);
-		for (int i = 0; i < size; 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);
-			}
-		}
-		
-		Trace.trace(Trace.EXTENSION_POINT, "-<- Done loading .runtimeTypes extension point -<-");
-	}
-	
-	/**
-	 * Load the runtime target handlers.
-	 */
-	private static synchronized void loadRuntimeTargetHandlers() {
-		if (runtimeTargetHandlers != null)
-			return;
-		Trace.trace(Trace.EXTENSION_POINT, "->- Loading .runtimeTargetHandlers extension point ->-");
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IConfigurationElement[] cf = registry.getConfigurationElementsFor(ServerPlugin.PLUGIN_ID, "runtimeTargetHandlers");
-
-		int size = cf.length;
-		runtimeTargetHandlers = new ArrayList(size);
-		for (int i = 0; i < size; i++) {
-			try {
-				RuntimeTargetHandler runtimeTargetListener = new RuntimeTargetHandler(cf[i]);
-				runtimeTargetHandlers.add(runtimeTargetListener);
-				Trace.trace(Trace.EXTENSION_POINT, "  Loaded runtimeTargetHandler: " + cf[i].getAttribute("id"));
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "  Could not load runtimeTargetHandler: " + cf[i].getAttribute("id"), t);
-			}
-		}
-		sortOrderedList(runtimeTargetHandlers);
-		
-		Trace.trace(Trace.EXTENSION_POINT, "-<- Done loading .runtimeTargetHandlers extension point -<-");
-	}
-
-	/**
-	 * 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, "serverTypes");
-
-		int size = cf.length;
-		serverTypes = new ArrayList(size);
-		for (int i = 0; i < size; 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);
-			}
-		}
-		
-		Trace.trace(Trace.EXTENSION_POINT, "-<- Done loading .serverTypes extension point -<-");
-	}
-
-	/**
-	 * 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);
-	}
-
-	/**
-	 * Sort the given list of IOrdered items into indexed order.
-	 *
-	 * @param list java.util.List
-	 * @return java.util.List
-	 */
-	private static List sortOrderedList(List list) {
-		if (list == null)
-			return null;
-
-		int size = list.size();
-		for (int i = 0; i < size - 1; i++) {
-			for (int j = i + 1; j < size; j++) {
-				IOrdered a = (IOrdered) list.get(i);
-				IOrdered b = (IOrdered) list.get(j);
-				if (a.getOrder() > b.getOrder()) {
-					Object temp = a;
-					list.set(i, b);
-					list.set(j, temp);
-				}
-			}
-		}
-		return list;
-	}
-	
-	/**
-	 * 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);
-	}
-}
\ 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 028f528..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerEvent.java
+++ /dev/null
@@ -1,224 +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 7e503a4..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerUtil.java
+++ /dev/null
@@ -1,725 +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.IModuleVisitor;
-import org.eclipse.wst.server.core.internal.Messages;
-import org.eclipse.wst.server.core.internal.ModuleFactory;
-import org.eclipse.wst.server.core.internal.Server;
-import org.eclipse.wst.server.core.internal.ServerPlugin;
-import org.eclipse.wst.server.core.internal.Trace;
-/**
- * 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[] getModules(IProject project) {
-		if (project == null)
-			return null;
-
-		List list = new ArrayList();
-		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()))
-					list.add(modules[i]);
-			}
-		}
-		
-		IModule[] modules2 = new IModule[list.size()];
-		list.toArray(modules2);
-		return modules2;
-	}
-
-	/**
-	 * 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++)
-							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]))
-							list.add(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
-	 */
-	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 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
-	 *    reporting and cancellation are not desired
-	 * @return a possibly-empty array of server instances {@link IServer}
-	 */
-	public static IServer[] getServersByModule(IModule module, IProgressMonitor monitor) {
-		if (module == null)
-			return new IServer[0];
-
-		// do it the slow way - go through all servers and
-		// see if this module is configured in it
-		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))
-					list.add(servers[i]);
-			}
-		}
-		
-		IServer[] allServers = new IServer[list.size()];
-		list.toArray(allServers);
-		return allServers;
-	}
-
-	/**
-	 * Returns true if the given server currently contains the given module.
-	 *
-	 * @param server a server
-	 * @param module a module
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return boolean <code>true</code> if the module is contained on the server,
-	 *    or <code>false</code> otherwise
-	 */
-	public static boolean containsModule(IServer server, final IModule module, IProgressMonitor monitor) {
-		if (server == null)
-			return false;
-		Trace.trace(Trace.FINEST, "containsModule() " + server + " " + module);
-		
-		class Helper {
-			boolean b;
-		}
-		final Helper h = new Helper();
-
-		((Server)server).visit(new IModuleVisitor() {
-			public boolean visit(IModule[] modules) {
-				int size = modules.length;
-				if (modules[size - 1].equals(module)) {
-					h.b = true;
-					return false;
-				}
-				return true;
-			}
-		}, null);
-		return h.b;
-	}
-
-	/**
-	 * Returns the server associated with the given launch configuration.
-	 * 
-	 * @param configuration a launch configuration
-	 * @return the server associated with the launch configuration, or
-	 *    <code>null</code> if no server could be found
-	 * @throws CoreException if there is a problem getting the attribute from
-	 *    the launch configuration
-	 */
-	public static IServer getServer(ILaunchConfiguration configuration) throws CoreException {
-		String serverId = configuration.getAttribute(Server.ATTR_SERVER_ID, (String) null);
-
-		if (serverId != null)
-			return ServerCore.findServer(serverId);
-		return null;
-	}
-
-	/**
-	 * Validates whether this server can be editted.
-	 * 
-	 * @param context the context (Shell)
-	 * @param server the server
-	 * @return a status object with code <code>IStatus.OK</code> if the server
-	 *   can be edited, otherwise a status object indicating what when wrong
-	 *   with the checkout
-	 */
-	public static IStatus validateEdit(Object context, IServer server) {
-		return ((Server)server).validateEdit(context);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/TaskModel.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/TaskModel.java
deleted file mode 100644
index 816dbb4..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/TaskModel.java
+++ /dev/null
@@ -1,95 +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.HashMap;
-import java.util.Map;
-/**
- * A task model represents a model that can be shared between multiple
- * tasks in a common workflow.
- * <p>
- * The task model contains information about the overall task flow and allows
- * tasks to store and retreive data. Its usage allows mutliple tasks to be
- * chained together and share data from the output of one task to the input
- * of another.
- * </p>
- * 
- * @since 1.0
- */
-public class TaskModel {
-	/**
-	 * Task model id for an IRuntime.
-	 * 
-	 * @see #getObject(String)
-	 * @see #putObject(String, Object)
-	 */
-	public static final String TASK_RUNTIME = "runtime";
-	
-	/**
-	 * Task model id for an IServer.
-	 * 
-	 * @see #getObject(String)
-	 * @see #putObject(String, Object)
-	 */
-	public static final String TASK_SERVER = "server";
-
-	/**
-	 * Task model id for an array of modules.
-	 * The value is a List containing IModule[] arrays.
-	 * 
-	 * @see #getObject(String)
-	 * @see TaskModel#putObject(String, Object)
-	 */
-	public static final String TASK_MODULES = "modules";
-	
-	/**
-	 * Task model id for a launch mode.
-	 * 
-	 * @see #getObject(String)
-	 * @see #putObject(String, Object)
-	 */
-	public static final String TASK_LAUNCH_MODE = "launch-mode";
-	
-	private Map map = new HashMap();
-
-	/**
-	 * Returns the object in the task model with the given id.
-	 * <p>
-	 * The id can be any of the predefined ids within TaskModel, or
-	 * any other key to retreive task-specific data.
-	 * </p>
-	 * 
-	 * @param id an id for the object
-	 * @return the object with the given id, or <code>null</code>
-	 *    if no object could be found with that id
-	 */
-	public Object getObject(String id) {
-		try {
-			return map.get(id);
-		} catch (Exception e) {
-			return null;
-		}
-	}
-
-	/**
-	 * Put an object into the task model with the given id.
-	 * <p>
-	 * The id can be any of the predefined ids within TaskModel, or
-	 * any other key to store task-specific data. 
-	 * </p>
-	 * 
-	 * @param id the id to associate the object with
-	 * @param obj an object, or <code>null</code> to reset (clear) the id
-	 */
-	public void putObject(String id, Object obj) {
-		map.put(id, obj);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Base.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Base.java
deleted file mode 100644
index d2c154c..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Base.java
+++ /dev/null
@@ -1,387 +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.internal;
-
-import java.io.FileInputStream;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.*;
-import org.eclipse.osgi.util.NLS;
-/**
- * Helper class for storing runtime and server attributes.
- */
-public abstract class Base {
-	protected static final String PROP_LOCKED = "locked";
-	protected static final String PROP_PRIVATE = "private";
-	protected static final String PROP_NAME = "name";
-	protected static final String PROP_ID = "id";
-
-	protected Map map = new HashMap();
-	
-	// file loaded from, or null if it is saved in metadata
-	protected IFile file;
-	
-	/**
-	 * Create a new object.
-	 * 
-	 * @param file
-	 */
-	public Base(IFile file) {
-		this.file = file;
-	}
-
-	/**
-	 * Create a new object.
-	 * 
-	 * @param file
-	 * @param id
-	 */
-	public Base(IFile file, String id) {
-		this.file = file;
-		//this.map = map;
-		map.put(PROP_ID, id);
-	}
-
-	/**
-	 * Returns the timestamp of this object.
-	 * Timestamps are monotonically increased each time the object is saved
-	 * and can be used to determine if any changes have been made on disk
-	 * since the object was loaded.
-	 * 
-	 * @return the object's timestamp
-	 */
-	public int getTimestamp() {
-		return getAttribute("timestamp", -1);
-	}
-
-	/**
-	 * Returns the file where this server instance is serialized.
-	 * 
-	 * @return the file in the workspace where the server instance
-	 * is serialized, or <code>null</code> if the information is
-	 * instead to be persisted with the workspace but not with any
-	 * particular workspace resource
-	 */
-	public IFile getFile() {
-		return file;
-	}
-
-	public String getAttribute(String attributeName, String defaultValue) {
-		try {
-			Object obj = map.get(attributeName);
-			if (obj == null)
-				return defaultValue;
-			return (String) obj;
-		} catch (Exception e) {
-			// ignore
-		}
-		return defaultValue;
-	}
-
-	public int getAttribute(String attributeName, int defaultValue) {
-		try {
-			Object obj = map.get(attributeName);
-			if (obj == null)
-				return defaultValue;
-			return Integer.parseInt((String) obj);
-		} catch (Exception e) {
-			// ignore
-		}
-		return defaultValue;
-	}
-
-	public boolean getAttribute(String attributeName, boolean defaultValue) {
-		try {
-			Object obj = map.get(attributeName);
-			if (obj == null)
-				return defaultValue;
-			return Boolean.valueOf((String) obj).booleanValue();
-		} catch (Exception e) {
-			// ignore
-		}
-		return defaultValue;
-	}
-	
-	public List getAttribute(String attributeName, List defaultValue) {
-		try {
-			Object obj = map.get(attributeName);
-			if (obj == null)
-				return defaultValue;
-			List list = (List) obj;
-			if (list != null)
-				return list;
-		} catch (Exception e) {
-			// ignore
-		}
-		return defaultValue;
-	}
-	
-	public Map getAttribute(String attributeName, Map defaultValue) {
-		try {
-			Object obj = map.get(attributeName);
-			if (obj == null)
-				return defaultValue;
-			Map map2 = (Map) obj;
-			if (map2 != null)
-				return map2;
-		} catch (Exception e) {
-			// ignore
-		}
-		return defaultValue;
-	}
-
-	public String getId() {
-		return getAttribute(PROP_ID, "");
-	}
-
-	public String getName() {
-		return getAttribute(PROP_NAME, "");
-	}
-
-	public boolean isReadOnly() {
-		return getAttribute(PROP_LOCKED, false);
-	}
-
-	/**
-	 * Returns <code>true</code> if this runtime is private (not shown
-	 * in the UI to the users), and <code>false</code> otherwise.
-	 * 
-	 * @return <code>true</code> if this runtime is private,
-	 *    and <code>false</code> otherwise
-	 */
-	public boolean isPrivate() {
-		return getAttribute(PROP_PRIVATE, false);
-	}
-	
-	public boolean isWorkingCopy() {
-		return false;
-	}
-	
-	protected abstract String getXMLRoot();
-	
-	protected void save(IMemento memento) {
-		//IMemento child = memento.createChild("properties");
-		IMemento child = memento;
-		Iterator iterator = map.keySet().iterator();
-		while (iterator.hasNext()) {
-			String key = (String) iterator.next();
-			Object obj = map.get(key);
-			if (obj instanceof String)
-				child.putString(key, (String) obj);
-			else if (obj instanceof Integer) {
-				Integer in = (Integer) obj;
-				child.putInteger(key, in.intValue());
-			} else if (obj instanceof Boolean) {
-				Boolean bool = (Boolean) obj;
-				child.putBoolean(key, bool.booleanValue());
-			} else if (obj instanceof List) {
-				List list = (List) obj;
-				saveList(child, key, list);
-			} else if (obj instanceof Map) {
-				Map map2 = (Map) obj;
-				saveMap(child, key, map2);
-				
-			}
-		}
-		saveState(child);
-	}
-	protected void saveMap(IMemento memento, String key, Map map2) {
-		IMemento child = memento.createChild("map");
-		child.putString("key", key);
-		Iterator iterator = map2.keySet().iterator();
-		while (iterator.hasNext()) {
-			String s = (String) iterator.next();
-			child.putString(s, (String)map2.get(s));
-		}
-	}
-	
-	protected void saveList(IMemento memento, String key, List list) {
-		IMemento child = memento.createChild("list");
-		child.putString("key", key);
-		int i = 0;
-		Iterator iterator = list.iterator();
-		while (iterator.hasNext()) {
-			String s = (String) iterator.next();
-			child.putString("value" + (i++), s);
-		}
-	}
-
-	protected void saveToFile(IProgressMonitor monitor) throws CoreException {
-		try {
-			XMLMemento memento = XMLMemento.createWriteRoot(getXMLRoot());
-			save(memento);
-
-			InputStream in = memento.getInputStream();
-			if (file.exists())
-				file.setContents(in, true, true, ProgressUtil.getSubMonitorFor(monitor, 1000));
-			else
-				file.create(in, true, ProgressUtil.getSubMonitorFor(monitor, 1000));
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save " + getXMLRoot(), e);
-			throw new CoreException(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorSaving, getFile().toString()), e));
-		}
-	}
-	
-	protected void doSave(IProgressMonitor monitor) throws CoreException {
-		if (file != null)
-			saveToFile(monitor);
-		else
-			saveToMetadata(monitor);
-		ResourceManager.getInstance().resolveServers();
-	}
-	
-	protected void saveToMetadata(IProgressMonitor monitor) {
-		// do nothing
-	}
-	
-	protected abstract void saveState(IMemento memento);
-
-	protected void load(IMemento memento) {
-		map = new HashMap();
-		
-		Iterator iterator = memento.getNames().iterator();
-		while (iterator.hasNext()) {
-			String key = (String) iterator.next();
-			map.put(key, memento.getString(key));
-		}
-		IMemento[] children = memento.getChildren("list");
-		if (children != null) {
-			int size = children.length;
-			for (int i = 0; i < size; i++) {
-				loadList(children[i]);
-			}
-		}
-		IMemento[] maps = memento.getChildren("map");
-		if (maps != null) {
-			for (int i = 0; i <maps.length ; i++) {
-				loadMap(maps[i]);
-			}
-		}
-		
-		loadState(memento);
-	}
-
-	
-	protected void loadMap(IMemento memento) {
-		String key = memento.getString("key");
-		Map vMap = new HashMap();
-		List keys = memento.getNames();
-		Iterator iterator = keys.iterator();
-		while(iterator.hasNext()) {
-			String s = (String)iterator.next();
-			String v = memento.getString(s);
-			vMap.put(s,v);
-		}
-		map.put(key, vMap);
-	}
-	
-	
-	protected void loadList(IMemento memento) {
-		String key = memento.getString("key");
-		List list = new ArrayList();
-		int i = 0;
-		String key2 = memento.getString("value" + (i++));
-		while (key2 != null) {
-			list.add(key2);
-			key2 = memento.getString("value" + (i++));
-		}
-		map.put(key, list);
-	}
-	
-	protected abstract void loadState(IMemento memento);
-	
-	protected void resolve() {
-		// do nothing
-	}
-	
-	public void delete() throws CoreException {
-		if (isWorkingCopy())
-			throw new CoreException(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, "Cannot delete a working copy", null));
-		
-		if (file != null)
-			file.delete(true, true, new NullProgressMonitor());
-		else
-			deleteFromMetadata();
-	}
-
-	protected void deleteFromMetadata() {
-		// do nothing
-	}
-
-	public boolean equals(Object obj) {
-		if (!(obj instanceof Base))
-			return false;
-		
-		Base base = (Base) obj;
-		if (getId() == null)
-			return false;
-		return getId().equals(base.getId());
-	}
-
-	/**
-	 * 
-	 */
-	protected void loadFromFile(IProgressMonitor monitor) throws CoreException {
-		InputStream in = null;
-		try {
-			in = file.getContents();
-			IMemento memento = XMLMemento.loadMemento(in);
-			load(memento);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not load from file" + e.getMessage(), e);
-			throw new CoreException(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorLoading, getFile().toString()), e));
-		} finally {
-			try {
-				in.close();
-			} catch (Exception e) {
-				// ignore
-			}
-		}
-	}
-	
-	protected void loadFromMemento(IMemento memento, IProgressMonitor monitor) {
-		load(memento);
-	}
-	
-	/**
-	 * 
-	 */
-	protected void loadFromPath(IPath path, IProgressMonitor monitor) throws CoreException {
-		FileInputStream fin = null;
-		try {
-			fin = new FileInputStream(path.toFile());
-			IMemento memento = XMLMemento.loadMemento(fin);
-			load(memento);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not load from path: " + e.getMessage(), e);
-			throw new CoreException(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorLoading, path.toString()), e));
-		} finally {
-			try {
-				fin.close();
-			} catch (Exception e) {
-				// ignore
-			}
-		}
-	}
-	
-	public IStatus validateEdit(Object context) {
-		if (file == null)
-			return null;
-	
-		return file.getWorkspace().validateEdit(new IFile[] { file }, context);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Client.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Client.java
deleted file mode 100644
index fc2b9fa..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Client.java
+++ /dev/null
@@ -1,117 +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.internal;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.ILaunch;
-
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.model.ClientDelegate;
-/**
- * 
- * @since 1.0
- */
-public class Client implements IClient {
-	private IConfigurationElement element;
-	private ClientDelegate delegate;
-
-	/**
-	 * Create a new client.
-	 * 
-	 * @param element a configuration element
-	 */
-	public Client(IConfigurationElement element) {
-		super();
-		this.element = element;
-	}
-
-	/**
-	 * @see IClient#getId()
-	 */
-	public String getId() {
-		return element.getAttribute("id");
-	}
-
-	/**
-	 * @see IClient#getDescription()
-	 */
-	public String getDescription() {
-		return element.getAttribute("description");
-	}
-	
-	protected String getLaunchable() {
-		return element.getAttribute("launchable");
-	}
-
-	/**
-	 * @see IClient#getName()
-	 */
-	public String getName() {
-		String label = element.getAttribute("name");
-		if (label == null)
-			return "n/a";
-		return label;
-	}
-
-	/**
-	 * Return the delegate.
-	 * 
-	 * @return the delegate, or <code>null</code> if it couldn't be loaded
-	 */
-	public ClientDelegate getDelegate() {
-		if (delegate == null) {
-			try {
-				delegate = (ClientDelegate) element.createExecutableExtension("class");
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "Could not create delegate" + toString() + ": " + e.getMessage());
-			}
-		}
-		return delegate;
-	}
-
-	/**
-	 * @see IClient#supports(IServer, Object, String)
-	 */
-	public boolean supports(IServer server, Object launchable, String launchMode) {
-		if (launchable == null)
-			return false;
-		//if (!launchable.getClass().getName().equals(getLaunchable()))
-		//	return false;
-		try {
-			return getDelegate().supports(server, launchable, launchMode);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate " + toString() + ": " + e.getMessage());
-			return false;
-		}
-	}
-
-	/**
-	 * @see IClient#launch(IServer, Object, String, ILaunch)
-	 */
-	public IStatus launch(IServer server, Object launchable, String launchMode, ILaunch launch) {
-		try {
-			return getDelegate().launch(server, launchable, launchMode, launch);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate " + toString() + ": " + e.getMessage());
-		}
-		return null;
-	}
-	
-	/**
-	 * Return a string representation of this object.
-	 * 
-	 * @return String
-	 */
-	public String toString() {
-		return "Client[" + getId() + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/DeletedModule.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/DeletedModule.java
deleted file mode 100644
index 41fbeda..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/DeletedModule.java
+++ /dev/null
@@ -1,83 +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 Common Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- *     IBM Corporation - Initial API and implementation
- **********************************************************************/
-package org.eclipse.wst.server.core.internal;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.IModuleType;
-/**
- * 
- * @since 1.0
- */
-public class DeletedModule implements IModule {
-	protected String id;
-	
-	public DeletedModule(String id) {
-		this.id = id;
-	}
-	
-	public String getId() {
-		return id;
-	}
-
-	public IStatus validate(IProgressMonitor monitor) {
-		return null;
-	}
-
-	public String getName() {
-		return null;
-	}
-
-	public IModuleType getModuleType() {
-		return null;
-	}
-
-	public IProject getProject() {
-		return null;
-	}
-
-	public void addModuleListener(IModuleListener listener) {
-		// ignore
-	}
-
-	public void removeModuleListener(IModuleListener listener) {
-		// ignore
-	}
-
-	public IModule[] getChildModules(IProgressMonitor monitor) {
-		return null;
-	}
-
-	public Object getAdapter(Class adapter) {
-		return null;
-	}
-	
-	public Object loadAdapter(Class adapter, IProgressMonitor monitor) {
-		return null;
-	}
-	
-	public boolean equals(Object obj) {
-		if (!(obj instanceof IModule))
-			return false;
-			
-		IModule m = (IModule) obj;
-		if (!getId().equals(m.getId()))
-			return false;
-			
-		return true;
-	}
-	
-	public String toString() {
-		return "Deleted module (" + getId() + ")";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IClient.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IClient.java
deleted file mode 100644
index a2f1369..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IClient.java
+++ /dev/null
@@ -1,76 +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.internal;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.wst.server.core.IServer;
-/**
- * A launchable client is a client side application or test
- * harness that can be launched (run) against a resource
- * running on a server.
- * 
- * <p>This interface is not intended to be implemented by clients.</p>
- * 
- * @since 1.0
- */
-public interface IClient {
-	/**
-	 * Returns the id of this client. Each known client 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 client id
-	 */
-	public String getId();
-
-	/**
-	 * Returns the displayable name for this client.
-	 * <p>
-	 * Note that this name is appropriate for the current locale.
-	 * </p>
-	 *
-	 * @return a displayable name for this client
-	 */
-	public String getName();
-
-	/**
-	 * Returns the displayable description for this client.
-	 * <p>
-	 * Note that this description is appropriate for the current locale.
-	 * </p>
-	 *
-	 * @return a displayable description for this client
-	 */
-	public String getDescription();
-
-	/**
-	 * Returns true if this launchable can be run by this client.
-	 * 
-	 * @param server the server
-	 * @param launchable the launchable object
-	 * @param launchMode the mode
-	 * @return boolean
-	 */
-	public boolean supports(IServer server, Object launchable, String launchMode);
-
-	/**
-	 * Launches the client.
-	 * 
-	 * @param server the server
-	 * @param launchable the launchable object
-	 * @param launchMode the mode
-	 * @param launch the launch
-	 * @return a status object with code <code>IStatus.OK</code> if the launch was
-	 *   successful, otherwise a status object indicating what went wrong
-	 */
-	public IStatus launch(IServer server, Object launchable, String launchMode, ILaunch launch);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ILaunchableAdapter.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ILaunchableAdapter.java
deleted file mode 100644
index 596e365..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ILaunchableAdapter.java
+++ /dev/null
@@ -1,44 +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.internal;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.server.core.IModuleArtifact;
-import org.eclipse.wst.server.core.IServer;
-/**
- * This interface, typically implemented by the server
- * code, converts from an IModuleArtifact to an
- * ILaunchable.
- * 
- * <p>This interface is not intended to be implemented by clients.</p>
- * 
- * @since 1.0
- */
-public interface ILaunchableAdapter {
-	/**
-	 * Returns the id of this adapter. Each known adapter 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 adapter id
-	 */
-	public String getId();
-
-	/**
-	 * Returns a launchable object from this module object.
-	 * 
-	 * @param server the server
-	 * @param moduleArtifact an artifact in the module
-	 * @return a launchable object
-	 * @exception CoreException thrown if there is a problem returning the launchable
-	 */
-	public Object getLaunchable(IServer server, IModuleArtifact moduleArtifact) throws CoreException;
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IMemento.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IMemento.java
deleted file mode 100644
index a082439..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IMemento.java
+++ /dev/null
@@ -1,189 +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.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);
-	
-	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.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IModuleListener.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IModuleListener.java
deleted file mode 100644
index 46f8ab6..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IModuleListener.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.wst.server.core.internal;
-
-
-/**
- * 
- * @since 1.0
- */
-public interface IModuleListener {
-	/**
-	 * A module has been changed as specified in the event.
-	 *
-	 * @param event org.eclipse.wst.server.core.model.ModuleEvent
-	 */
-	public void moduleChanged(ModuleEvent event);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IModuleResourceDeltaVisitor.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IModuleResourceDeltaVisitor.java
deleted file mode 100644
index 2861a28..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IModuleResourceDeltaVisitor.java
+++ /dev/null
@@ -1,58 +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.internal;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.server.core.model.IModuleResourceDelta;
-/**
- * An objects that visits module resource deltas.
- * <p> 
- * Usage:
- * <pre>
- * class Visitor implements IModuleResourceDeltaVisitor {
- *     public boolean visit(IModuleResourceDelta delta) {
- *       switch (delta.getKind()) {
- *         case IModuleResourceDelta.ADDED :
- *             // handle added resource
- *             break;
- *         case IModuleResourceDelta.REMOVED :
- *             // handle removed resource
- *             break;
- *         case IModuleResourceDelta.CHANGED :
- *             // handle changed resource
- *             break;
- *         }
- *       return true;
- *     }
- * }
- * IModuleResourceDelta rootDelta = ...;
- * rootDelta.accept(new Visitor());
- * </pre>
- * </p>
- * <p>
- * Clients may implement this interface.
- * </p>
- *
- * [issue: @see IModuleResourceDelta#accept(IModuleResourceVisitor)]
- * 
- * @since 1.0
- */
-public interface IModuleResourceDeltaVisitor {
-	/** 
-	 * Visits the given module resource delta.
-	 * 
-	 * @param delta the resource delta
-	 * @return <code>true</code> if the resource delta's children should
-	 *		be visited; <code>false</code> if they should be skipped.
-	 * @throws CoreException if the visit fails for some reason.
-	 */
-	public boolean visit(IModuleResourceDelta delta) throws CoreException;
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IModuleVisitor.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IModuleVisitor.java
deleted file mode 100644
index 27af6e8..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IModuleVisitor.java
+++ /dev/null
@@ -1,29 +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.internal;
-
-import org.eclipse.wst.server.core.IModule;
-/**
- * A visitor on a server's modules.
- * 
- * @since 1.0
- */
-public interface IModuleVisitor {
-	/**
-	 * Visit a single module. Returns true to keep visiting, and
-	 * false if it should stop visiting the module. 
-	 * 
-	 * @param module a module on the server
-	 * @return boolean <code>true</code> to visit the next module, or
-	 *    <code>false</code> to stop visiting
-	 */
-	public boolean visit(IModule[] module);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IMonitoredServerPort.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IMonitoredServerPort.java
deleted file mode 100644
index c5ce923..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IMonitoredServerPort.java
+++ /dev/null
@@ -1,58 +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.internal;
-
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.ServerPort;
-
-/**
- * An monitored port on a server.
- * 
- * <p>This interface is not intended to be implemented by clients.</p>
- * 
- * @since 1.0
- */
-public interface IMonitoredServerPort {
-	/**
-	 * Returns the server that it being monitored.
-	 * 
-	 * @return org.eclipse.wst.server.core.IServer
-	 */
-	public IServer getServer();
-
-	/**
-	 * Returns the server port.
-	 * 
-	 * @return org.eclipse.wst.server.model.IServerPort
-	 */
-	public ServerPort getServerPort();
-
-	/**
-	 * Return the port that is being used to monitor.
-	 * 
-	 * @return int
-	 */
-	public int getMonitorPort();
-
-	/**
-	 * Returns the content types that are being monitored, or null for all content.
-	 * 
-	 * @return java.lang.String[]
-	 */
-	public String[] getContentTypes();
-
-	/**
-	 * Returns true if the monitor is currently running/active.
-	 * 
-	 * @return boolean
-	 */
-	public boolean isStarted();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IOrdered.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IOrdered.java
deleted file mode 100644
index b4639d5..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IOrdered.java
+++ /dev/null
@@ -1,35 +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.internal;
-/**
- * An object that has an absolute ordering, and can be ordered against other objects.
- * 
- * <p>
- * [issue: It is notoriously difficult to place any kind of
- * useful order on objects that are contributed independently by
- * non-collaborating parties. The IOrdered mechanism is weak, and
- * can't really solve the problem. Issues of presentation are usually
- * best left to the UI, which can sort objects based on arbitrary
- * properties.]
- * </p>
- * 
- * <p>This interface is not intended to be implemented by clients.</p>
- * 
- * @since 1.0
- */
-public interface IOrdered {
-	/**
-	 * Returns the order (index/priority).
-	 * 
-	 * @return int
-	 */
-	public int getOrder();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IProjectPropertiesListener.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IProjectPropertiesListener.java
deleted file mode 100644
index c18c3fc..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IProjectPropertiesListener.java
+++ /dev/null
@@ -1,38 +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.internal;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.wst.server.core.IRuntime;
-/**
- * A project properties listener. Fires events when the runtime target changes.
- * <p>
- * This interface should be used for informational purposes only. If (e.g.)
- * you have code that needs to respond to a specific runtime target, you should
- * use the runtimeTargetHandler extension point. The extension point will allow
- * your code to be automatically loaded when necessary (instead of having to
- * preload and add a listener), will not cause unnecessary plugin loading, and
- * will allow ordering of setting/unsetting the runtime target.
- * </p>
- * 
- * @see org.eclipse.wst.server.core.IProjectProperties
- * @since 1.0
- */
-public interface IProjectPropertiesListener {
-	/**
-	 * Fired when the runtime target for the project changes.
-	 *
-	 * @param project the project that has changed
-	 * @param runtime the new runtime target, or <code>null</code> if the runtime
-	 *    target has been removed
-	 */
-	public void runtimeTargetChanged(IProject project, IRuntime runtime);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IPublishListener.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IPublishListener.java
deleted file mode 100644
index 4b8bb8c..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IPublishListener.java
+++ /dev/null
@@ -1,46 +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.internal;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.wst.server.core.IServer;
-/**
- * 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
-	 */
-	public void publishStarted(IServer server);
-
-	/**
-	 * Publishing has finished. Returns the overall status.
-	 *
-	 * @param server
-	 * @param status
-	 */
-	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/internal/IPublishTask.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IPublishTask.java
deleted file mode 100644
index 1abd45e..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IPublishTask.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.wst.server.core.internal;
-
-import java.util.List;
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.model.PublishOperation;
-/**
- * A task for a server.
- * 
- * <p>This interface is not intended to be implemented by clients.</p>
- * 
- * @since 1.0
- */
-public interface IPublishTask {
-	/**
-	 * Returns the id of the adapter.
-	 *
-	 * @return java.lang.String
-	 */
-	public String getId();
-
-	/**
-	 * Returns true if the given type (given by the id) can use this task. This
-	 * result is based on the result of the getTypeIds() method.
-	 * 
-	 * @param id a server type id
-	 * @return boolean
-	 */
-	public boolean supportsType(String id);
-
-	/**
-	 * Lets the task know that it is about to be used. This method should
-	 * be used to clean out any previously cached information, or start to
-	 * create a new cache.
-	 * 
-	 * @param server the server
-	 * @param modules a list containing IModule arrays
-	 * @return a possibly empty array of optional tasks 
-	 */
-	public PublishOperation[] getTasks(IServer server, List modules);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IRuntimeLocator.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IRuntimeLocator.java
deleted file mode 100644
index 2f603d3..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IRuntimeLocator.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.wst.server.core.internal;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.server.core.IRuntimeWorkingCopy;
-/**
- * A runtime locator provides the ability to locate or search for additional
- * runtimes of a particular type.
- * <p>
- * Runtime locators are found via ServerCore.getRuntimeLocators().
- * </p>
- * 
- * <p>This interface is not intended to be implemented by clients.</p>
- * 
- * @since 1.0
- */
-public interface IRuntimeLocator {
-	/**
-	 * A callback listener interface.
-	 */
-	public interface IRuntimeSearchListener {
-		/**
-		 * Called when a new runtime is found by the locator.
-		 * The runtime must never be null.
-		 * 
-		 * @param runtime the runtime that was found.
-		 */
-		public void runtimeFound(IRuntimeWorkingCopy runtime);
-	}
-
-	/**
-	 * Returns the id of this runtime locator.
-	 * Each known runtime locator 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 locator id
-	 */
-	public String getId();
-
-	/**
-	 * Returns true if the runtime locator can find runtimes of the given type.
-	 * The id should never be null.
-	 * 
-	 * @param runtimeTypeId the id of a runtime type
-	 * @return boolean
-	 */
-	public boolean supportsType(String runtimeTypeId);
-
-	/**
-	 * Searches for local runtimes.
-	 * It uses the callback listener to report runtimes that are found.
-	 * The path contains the absolute path of the folder to search in,
-	 * or <code>null</code> to search the entire machine.
-	 * 
-	 * @param path the path to search for runtimes in
-	 * @param listener a listener to report status to
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @throws CoreException
-	 */
-	public void searchForRuntimes(IPath path, IRuntimeSearchListener listener, 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/internal/IServerLocator.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IServerLocator.java
deleted file mode 100644
index 2cedaba..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IServerLocator.java
+++ /dev/null
@@ -1,81 +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.internal;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.server.core.IServerWorkingCopy;
-/**
- * A server locator provides the ability to locate or search for additional
- * servers of a particular type, on a particular host.
- * <p>
- * Server locators are found via ServerCore.getServerLocators().
- * </p>
- * 
- * <p>This interface is not intended to be implemented by clients.</p>
- * 
- * @since 1.0
- */
-public interface IServerLocator {
-	/**
-	 * A callback listener interface.
-	 */
-	public interface IServerSearchListener {
-		/**
-		 * Called when a new server is found by the locator.
-		 * The server must never be null.
-		 * 
-		 * @param server the runtime that was found.
-		 */
-		public void serverFound(IServerWorkingCopy server);
-	}
-
-	/**
-	 * Returns the id of this server locator.
-	 * Each known server locator 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 locator id
-	 */
-	public String getId();
-
-	/**
-	 * Returns true if the server locator can find servers of the given type.
-	 * The id should never be null.
-	 * 
-	 * @param serverTypeId the id of a server type
-	 * @return boolean
-	 */
-	public boolean supportsType(String serverTypeId);
-	
-	/**
-	 * 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();
-
-	/**
-	 * Searches for servers. 
-	 * It uses the callback listener to report servers that are found.
-	 * 
-	 * @param host a host string conforming to RFC 2732
-	 * @param listener a listener to report status to
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @throws CoreException
-	 */
-	public void searchForServers(String host, IServerSearchListener listener, 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/internal/IServerMonitor.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IServerMonitor.java
deleted file mode 100644
index 525bc7c..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IServerMonitor.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - Initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.server.core.internal;
-/**
- * An interface to a TCP/IP monitor.
- * 
- * <p>This interface is not intended to be implemented by clients.</p>
- * 
- * @since 1.0
- */
-public interface IServerMonitor {
-	/**
-	 * Returns the id of the monitor.
-	 *
-	 * @return java.lang.String
-	 */
-	public String getId();
-
-	/**
-	 * Returns the label (name) of this monitor.
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getName();
-
-	/**
-	 * Returns the description of this monitor.
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getDescription();
-
-	/**
-	 * Start monitoring the given port, and return the port number to
-	 * tunnel requests through. The monitorPort is the new port to use, or
-	 * -1 to pick a random port.
-	 * 
-	 * @param port
-	 * @return
-	 */
-	//public int startMonitoring(IServer server, ServerPort port, int monitorPort) throws CoreException;
-
-	/**
-	 * Stop monitoring the given port.
-	 * 
-	 * @param port
-	 */
-	//public void stopMonitoring(IServer server, ServerPort port);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IServerMonitorManager.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IServerMonitorManager.java
deleted file mode 100644
index 99973ec..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IServerMonitorManager.java
+++ /dev/null
@@ -1,76 +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.internal;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.ServerPort;
-/**
- * 
- * <p>This interface is not intended to be implemented by clients.</p>
- * 
- * @since 1.0
- */
-public interface IServerMonitorManager {
-	/**
-	 * Returns the array of ports that are currently being monitored.
-	 *
-	 * @param server a server
-	 * @return an array containing the monitored ports for this server
-	 */
-	public IMonitoredServerPort[] getMonitoredPorts(IServer server);
-
-	/**
-	 * Starts monitoring the given port, and returns the new port # to use that will
-	 * route to the monitored port.
-	 * 
-	 * @param server
-	 * @param port
-	 * @param monitorPort - the new port number to use for monitoring, or -1 to pick a new port
-	 * @param content
-	 * @return monitor port number
-	 */
-	public IMonitoredServerPort createMonitor(IServer server, ServerPort port, int monitorPort, String[] content);
-
-	/**
-	 * Stop monitoring the given port. Throws a CoreException if there was a problem
-	 * stopping the monitoring
-	 *
-	 * @param msp the monitored port
-	 */
-	public void removeMonitor(IMonitoredServerPort msp);
-
-	/**
-	 * Start the monitor. If the msp port is -1, it will be updated to the port that is actually in use.
-	 * 
-	 * @param msp the monitored port 
-	 * @throws CoreException
-	 */
-	public void startMonitor(IMonitoredServerPort msp) throws CoreException;
-
-	/**
-	 * Stop monitoring.
-	 * 
-	 * @param msp the monitored port
-	 */
-	public void stopMonitor(IMonitoredServerPort msp);
-
-	/**
-	 * Returns the monitored port to use when making requests to the given server, port number,
-	 * and content. Returns the existing port number if the port is not being monitored.
-	 * 
-	 * @param server
-	 * @param port
-	 * @param contentType
-	 * @return the monitored port number
-	 */
-	public int getMonitoredPort(IServer server, int port, String contentType);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IStartup.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IStartup.java
deleted file mode 100644
index 43e2312..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/IStartup.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.wst.server.core.internal;
-/**
- * An interface for the startup extension point.
- * Plug-ins that register a startup extension will be activated when the server
- * core plug-in initializes and have an opportunity to run code that can't be
- * implemented using the normal contribution mechanisms.
- * 
- * @since 1.0
- */
-public interface IStartup {
-	/**
-	 * Will be called on server core startup.
-	 */
-	public void startup();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/LaunchableAdapter.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/LaunchableAdapter.java
deleted file mode 100644
index 87e4e56..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/LaunchableAdapter.java
+++ /dev/null
@@ -1,75 +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.internal;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-
-import org.eclipse.wst.server.core.IModuleArtifact;
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.model.*;
-/**
- * 
- */
-public class LaunchableAdapter implements ILaunchableAdapter {
-	private IConfigurationElement element;
-	private LaunchableAdapterDelegate delegate;
-
-	/**
-	 * LaunchableAdapter constructor comment.
-	 * 
-	 * @param element a configuration element
-	 */
-	public LaunchableAdapter(IConfigurationElement element) {
-		super();
-		this.element = element;
-	}
-
-	/**
-	 * Returns the id of this LaunchableAdapter.
-	 *
-	 * @return java.lang.String
-	 */
-	public String getId() {
-		return element.getAttribute("id");
-	}
-
-	public LaunchableAdapterDelegate getDelegate() {
-		if (delegate == null) {
-			try {
-				delegate = (LaunchableAdapterDelegate) element.createExecutableExtension("class");
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "Could not create delegate" + toString() + ": " + t.getMessage());
-			}
-		}
-		return delegate;
-	}
-
-	/**
-	 * @see ILaunchableAdapter#getLaunchable(IServer, IModuleArtifact)
-	 */
-	public Object getLaunchable(IServer server, IModuleArtifact object) {
-		try {
-			return getDelegate().getLaunchable(server, object);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate " + toString() + ": " + e.getMessage());
-			return null;
-		}
-	}
-
-	/**
-	 * Return a string representation of this object.
-	 * 
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		return "LaunchableAdapter[" + getId() + "]";
-	}
-}
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Messages.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Messages.java
deleted file mode 100644
index a3d604e..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Messages.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.wst.server.core.internal;
-
-import org.eclipse.osgi.util.NLS;
-/**
- * Translated messages.
- */
-public class Messages extends NLS {
-	public static String publishing;
-	public static String errorRuntimeName;
-	public static String errorDuplicateRuntimeName;
-	public static String errorSaving;
-	public static String errorLoading;
-	public static String defaultVendor;
-	public static String defaultVersion;
-	public static String savingTask;
-	public static String taskPerforming;
-	public static String deletingTask;
-	public static String defaultServerProjectName;
-	public static String defaultRuntimeName;
-	public static String defaultRuntimeName2;
-	public static String defaultServerName;
-	public static String defaultServerName2;
-	public static String defaultServerName3;
-	public static String defaultServerName4;
-	public static String taskModifyModules;
-	public static String errorWorkingCopyTimestamp;
-	
-	public static String errorPublishStarting;
-	public static String errorPublishNoConfiguration;
-	public static String errorNoConfiguration;
-	public static String canPublishOk;
-	public static String publishingStatus;
-	public static String publishingCancelled;
-	public static String errorPublishing;
-	public static String publishingStop;
-	public static String publishingModule;
-	public static String publishedModule;
-	public static String errorStartTimeout;
-	public static String errorStartFailed;
-	public static String errorModuleRestartFailed;
-	public static String canRestartModuleOk;
-	public static String errorRestartModule;
-	public static String canStartErrorState;
-	public static String errorLaunchMode;
-	public static String canStartOk;
-	public static String canRestartOk;
-	public static String errorRestartNotStarted;
-	public static String errorStopAlreadyStopped;
-	public static String canStopOk;
-	public static String moduleTypeUnknown;
-	
-	static {
-		NLS.initializeMessages(ServerPlugin.PLUGIN_ID + ".internal.Messages", Messages.class);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Messages.properties b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Messages.properties
deleted file mode 100644
index 7829f5f..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Messages.properties
+++ /dev/null
@@ -1,68 +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
-###############################################################################
-
-# --------------- Tasks (progress monitors) ---------------
-savingTask=Saving {0}
-deletingTask=Deleting {0}
-
-taskPerforming=Performing Tasks
-taskModifyModules=Adding and/or removing projects.
-
-publishing=Publishing to {0}...
-publishingStatus=Publishing results
-publishingStop=Disconnecting from server
-
-publishingModule=Publishing: {0}
-publishedModule={0} published successfully
-
-publishingCancelled=Publishing cancelled
-
-# --------------- Misc UI ---------------
-
-# Error Messages
-errorPublishing=Could not publish to the server.
-errorNoConfiguration=The server has no configuration.
-errorLoading=Error loading from {0}.
-errorSaving=Could not save to {0}.
-errorModuleRestartFailed=Could not restart the module.
-errorWorkingCopyTimestamp=Could not save because the file has been modified since the start of editting.
-errorRuntimeName=Enter a name for the runtime.
-errorDuplicateRuntimeName=Name is already in use.
-errorStartTimeout=Timeout waiting for {0} to start. Server did not start after {1}s. 
-errorStartFailed=Server {0} failed to start.
-
-# Default server creation names
-# {0} will be replaced by a number if the given name is already being used
-defaultServerProjectName=Servers{0}
-defaultRuntimeName={0}
-defaultRuntimeName2={0} ({1})
-defaultServerName={0} @ {1}
-defaultServerName2={0} @ {1} ({2})
-defaultServerName3={0}
-defaultServerName4={0} ({1})
-
-# Used when a name can't be found
-defaultVendor=Basic
-defaultVersion=Basic
-moduleTypeUnknown=Unknown module
-
-canStartOk=The server can be started.
-canStopOk=The server can be stopped.
-canRestartOk=The server can be restarted.
-canPublishOk=The server can be published to.
-canRestartModuleOk=The module can be restarted.
-canStartErrorState=The server cannot be started because it is current starting or stopping.
-errorLaunchMode=The server does not support the given launch mode.
-errorRestartNotStarted=Cannot restart the server because it is not currently running.
-errorPublishStarting=Cannot publish to the server because it is currently starting or stopping.
-errorPublishNoConfiguration=Cannot publish to the server because the configuration is missing.
-errorStopAlreadyStopped=The server cannot be stopped because it is already stopped.
-errorRestartModule=The module cannot be restarted.
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Module.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Module.java
deleted file mode 100644
index a4319e0..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Module.java
+++ /dev/null
@@ -1,281 +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.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.server.core.*;
-import org.eclipse.wst.server.core.model.ModuleDelegate;
-/**
- * 
- */
-public class Module implements IModule {
-	protected String id;
-	protected String name;
-	protected ModuleFactory factory;
-	protected String type;
-	protected String version;
-	protected IProject project;
-	protected ModuleDelegate delegate;
-
-	// change listeners
-	private transient List listeners;
-
-	/**
-	 * Module constructor.
-	 * 
-	 * @param factory
-	 * @param id
-	 * @param name
-	 * @param type
-	 * @param version
-	 * @param project
-	 */
-	public Module(ModuleFactory factory, String id, String name, String type, String version, IProject project) {
-		super();
-		this.factory = factory;
-		this.project = project;
-		this.type = type;
-		this.version = version;
-		this.id = id;
-		this.name = name;
-	}
-
-	/**
-	 * Returns the id of this module.
-	 *
-	 * @return java.lang.String
-	 */
-	public String getId() {
-		return factory.getId() + ":" + id;
-	}
-
-	/**
-	 * Returns the internal (partial) id of this module.
-	 *
-	 * @return the id
-	 */
-	public String getInternalId() {
-		return id;
-	}
-
-	/**
-	 * Returns the type of this module.
-	 * 
-	 * @return the module type
-	 */
-	public IModuleType getModuleType() {
-		return new ModuleType(type, version);
-	}
-
-	/**
-	 * Returns the workbench project that this module is contained in,
-	 * or null if the module is outside of the workspace.
-	 * 
-	 * @return the project that the module is contained in
-	 */
-	public IProject getProject() {
-		return project;
-	}
-
-	/*
-	 * @see IModule#getName()
-	 */
-	public String getName() {
-		return name;
-	}
-
-	protected ModuleDelegate getDelegate(IProgressMonitor monitor) {
-		if (delegate == null) {
-			try {
-				delegate = factory.getDelegate().getModuleDelegate(this);
-				delegate.initialize(this);
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "Could not create delegate" + toString() + ": " + t.getMessage());
-			}
-		}
-		return delegate;
-	}
-
-	/**
-	 * Returns the child modules of this module.
-	 *
-	 * @param monitor a progress monitor
-	 * @return a possibly empty array of modules
-	 */
-	public IModule[] getChildModules(IProgressMonitor monitor) {
-		try {
-			return getDelegate(monitor).getChildModules();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate getChildModules() " + toString(), e);
-			return null;
-		}
-	}
-
-	/**
-	 * Validates this module.
-	 * <p>
-	 * [issue: Conjecture: Each different type of module prescribes
-	 * legal arrangements of, and the significance of, the files within
-	 * it. This would be spelled out in the spec for the particular
-	 * module types.
-	 * This validate operation is suppose to check the actual
-	 * arrangement of files in this module to see whether they
-	 * meet expectations.
-	 * It's an open question as to how "strenuous" a check this
-	 * is.]
-	 * </p>
-	 * <p>
-	 * [issue: Old comment said: "If there is an error
-	 * that should block the server from starting (e.g. major errors)
-	 * it should be returned from this method. This method can also be used to
-	 * return warning for such things as an open (and dirty) editor."]
-	 * </p>
-	 * <p>
-	 * [issue: All existing implementations of this return null,
-	 * which is illegal.]
-	 * </p>
-	 * <p>
-	 * [issue: Old comment said: "Returns an IStatus that is used to determine if this object can
-	 * be published to the server." Since the same module can
-	 * be associated with any number of servers, "the server" is
-	 * ill-defined.]
-	 * </p>
-	 * <p>
-	 * [issue: Old comment said: "Should return an error if there
-	 * is a major problem with the resources, or can be used to
-	 * return warnings on unsaved files, etc." It is usually
-	 * difficult in principle for core-level infrastructure to
-	 * detect whether there are open editors with unsaved changes.]
-	 * </p>
-	 *
-	 * @param monitor a progress monitor, or <code>null</code> if no
-	 *    progress reporting is required
-	 * @return a status object with code <code>IStatus.OK</code> if the given
-	 *    module is valid, otherwise a status object indicating what is
-	 *    wrong with it
-	 */
-	public IStatus validate(IProgressMonitor monitor) {
-		try {
-			return getDelegate(monitor).validate();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate validate() " + toString(), e);
-			return null;
-		}
-	}
-
-	/**
-	 * Add a listener for child modules that are added/removed from this
-	 * module.
-	 * Has no effect if an identical listener is already registered.
-	 * 
-	 * @param listener a module listener
-	 */
-	public void addModuleListener(IModuleListener listener) {
-		Trace.trace(Trace.FINEST, "Adding module listener " + listener + " to " + this);
-	
-		if (listeners == null)
-			listeners = new ArrayList();
-		else if (listeners.contains(listener))
-			return;
-		listeners.add(listener);
-	}
-
-	/**
-	 * Remove a listener for child modules that are added/removed from this
-	 * module.
-	 * Has no effect if the listener is not registered.
-	 * 
-	 * @param listener a module listener
-	 */
-	public void removeModuleListener(IModuleListener listener) {
-		Trace.trace(Trace.FINEST, "Removing module listener " + listener + " from " + this);
-	
-		if (listeners != null)
-			listeners.remove(listener);
-	}
-
-	/**
-	 * Fire a module change event.
-	 */
-	protected void fireModuleChangeEvent(boolean isChange, IModule[] added, IModule[] changed, IModule[] removed) {
-		Trace.trace(Trace.FINEST, "->- Firing module change event: " + getName() + " (" + isChange + ") ->-");
-	
-		if (listeners == null || listeners.isEmpty())
-			return;
-	
-		int size = listeners.size();
-		IModuleListener[] dcl = new IModuleListener[size];
-		listeners.toArray(dcl);
-		
-		ModuleEvent event = new ModuleEvent(this, isChange, added, changed, removed);
-	
-		for (int i = 0; i < size; i++) {
-			try {
-				Trace.trace(Trace.FINEST, "  Firing module change event to: " + dcl[i]);
-				dcl[i].moduleChanged(event);
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "  Error firing module change event", e);
-			}
-		}
-		Trace.trace(Trace.FINEST, "-<- Done firing module change event -<-");
-	}
-
-	/**
-	 * @see IModule#getAdapter(Class)
-	 */
-	public Object getAdapter(Class adapter) {
-		if (delegate != null) {
-			if (adapter.isInstance(delegate))
-				return delegate;
-		}
-		return Platform.getAdapterManager().getAdapter(this, adapter);
-	}
-
-	/**
-	 * @see IModule#loadAdapter(Class, IProgressMonitor)
-	 */
-	public Object loadAdapter(Class adapter, IProgressMonitor monitor) {
-		getDelegate(monitor);
-		if (adapter.isInstance(delegate))
-			return delegate;
-		return Platform.getAdapterManager().loadAdapter(this, adapter.getName());
-	}
-
-	public boolean equals(Object obj) {
-		if (!(obj instanceof IModule))
-			return false;
-		
-		IModule m = (IModule) obj;
-		if (!getId().equals(m.getId()))
-			return false;
-		//if (!project.equals(m.getProject()))
-		//	return false;
-		//if (!getModuleType().equals(m.getModuleType()))
-		//	return false;
-		
-		return true;
-	}
-
-	/**
-	 * Return a string representation of this object.
-	 * 
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		return "Module[" + getId() + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleArtifactAdapter.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleArtifactAdapter.java
deleted file mode 100644
index dcc4d92..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleArtifactAdapter.java
+++ /dev/null
@@ -1,196 +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.internal;
-
-import org.eclipse.core.expressions.*;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.server.core.IModuleArtifact;
-import org.eclipse.wst.server.core.model.ModuleArtifactAdapterDelegate;
-import org.osgi.framework.Bundle;
-/**
- * 
- */
-public class ModuleArtifactAdapter {
-	private IConfigurationElement element;
-	private Expression fContextualLaunchExpr = null;
-	private ModuleArtifactAdapterDelegate delegate;
-
-	/**
-	 * ModuleArtifactAdapter constructor comment.
-	 * 
-	 * @param element a configuration element
-	 */
-	public ModuleArtifactAdapter(IConfigurationElement element) {
-		super();
-		this.element = element;
-	}
-
-	/**
-	 * Returns the id of this ModuleArtifactAdapter.
-	 *
-	 * @return java.lang.String
-	 */
-	public String getId() {
-		return element.getAttribute("id");
-	}
-	
-	/**
-	 * Returns the relative priority of this adapter.
-	 *
-	 * @return a priority
-	 */
-	public int getPriority() {
-		try {
-			return Integer.parseInt(element.getAttribute("priority"));
-		} catch (Exception e) {
-			return 0;
-		}
-	}
-
-	/**
-	 * Returns true if the plugin that loaded this class has been loaded.
-	 *
-	 * @return boolean
-	 */
-	public boolean isPluginActivated() {
-		String pluginId = element.getDeclaringExtension().getNamespace();
-		return Platform.getBundle(pluginId).getState() == Bundle.ACTIVE;
-	}
-	
-	/**
-	 * Returns an expression that represents the enablement logic for the
-	 * contextual launch element of this launch shortcut description or
-	 * <code>null</code> if none.
-	 * @return an evaluatable expression or <code>null</code>
-	 * @throws CoreException if the configuration element can't be
-	 *  converted. Reasons include: (a) no handler is available to
-	 *  cope with a certain configuration element or (b) the XML
-	 *  expression tree is malformed.
-	 */
-	public Expression getContextualLaunchEnablementExpression() throws CoreException {
-		if (fContextualLaunchExpr == null) {
-			IConfigurationElement[] elements = element.getChildren(ExpressionTagNames.ENABLEMENT);
-			IConfigurationElement enablement = elements.length > 0 ? elements[0] : null; 
-
-			if (enablement != null)
-				fContextualLaunchExpr = ExpressionConverter.getDefault().perform(enablement);
-		}
-		return fContextualLaunchExpr;
-	}
-	
-	/**
-	 * Evaluate the given expression within the given context and return
-	 * the result. Returns <code>true</code> iff result is either TRUE or NOT_LOADED.
-	 * This allows optimistic inclusion of shortcuts before plugins are loaded.
-	 * Returns <code>false</code> if exp is <code>null</code>.
-	 * 
-	 * @param exp the enablement expression to evaluate or <code>null</code>
-	 * @param context the context of the evaluation. Usually, the
-	 *  user's selection.
-	 * @return the result of evaluating the expression
-	 * @throws CoreException
-	 */
-	protected boolean evalEnablementExpression(IEvaluationContext context, Expression exp) throws CoreException {
-		return (exp != null) ? ((exp.evaluate(context)) != EvaluationResult.FALSE) : false;
-	}
-	
-	/**
-	 * @return an Evaluation context with default variable = selection
-	 */
-	/*protected IEvaluationContext createContext(Object obj) {
-		List list = null;
-		IWorkbenchWindow window = DebugUIPlugin.getActiveWorkbenchWindow();
-		if (window != null) {
-			IWorkbenchPage page = window.getActivePage();
-			if (page != null) {
-			    IWorkbenchPart activePart = page.getActivePart();
-			    if (activePart instanceof IEditorPart) {
-			        list = new ArrayList();
-			        list.add(((IEditorPart)activePart).getEditorInput());
-			    } else if (activePart != null) {
-			        IWorkbenchPartSite site = activePart.getSite();
-			        if (site != null) {
-	                    ISelectionProvider selectionProvider = site.getSelectionProvider();
-	                    if (selectionProvider != null) {
-	                        ISelection selection = selectionProvider.getSelection();
-					        if (selection instanceof IStructuredSelection) {
-					            list = ((IStructuredSelection)selection).toList();
-					        }
-	                    }
-			        }
-			    }
-			}
-		}
-		// create a default evaluation context with default variable
-		// of the user selection or editor input
-		if (list == null) {
-		    list = Collections.EMPTY_LIST;
-		}
-		IEvaluationContext context = new EvaluationContext(null, list);
-		context.addVariable("selection", list); //$NON-NLS-1$
-		
-		return context;
-	}*/
-
-	/**
-	 * Returns true if enabled for the given object.
-	 * 
-	 * @param obj an object
-	 * @return <code>true</code> if enabled
-	 * @throws CoreException if anything goes wrong
-	 */
-	public boolean isEnabled(Object obj) throws CoreException {
-		IEvaluationContext context = new EvaluationContext(null, obj);
-		context.addVariable("selection", obj);
-		return evalEnablementExpression(context, getContextualLaunchEnablementExpression());
-	}
-
-	public ModuleArtifactAdapterDelegate getDelegate() {
-		if (delegate == null) {
-			try {
-				delegate = (ModuleArtifactAdapterDelegate) element.createExecutableExtension("class");
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "Could not create delegate" + toString() + ": " + t.getMessage());
-			}
-		}
-		return delegate;
-	}
-	
-	public boolean isDelegateLoaded() {
-		return (delegate != null);
-	}
-
-	/**
-	 * Returns the module artifact.
-	 * 
-	 * @param obj an object
-	 * @return the module artifact, or <code>null</code>
-	 */
-	public IModuleArtifact getModuleArtifact(Object obj) {
-		try {
-			return getDelegate().getModuleArtifact(obj);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate " + toString() + ": " + e.getMessage());
-			return null;
-		}
-	}
-	
-	/**
-	 * Return a string representation of this object.
-	 * 
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		return "ModuleArtifactAdapter[" + getId() + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleEvent.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleEvent.java
deleted file mode 100644
index ee9b5f9..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleEvent.java
+++ /dev/null
@@ -1,102 +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.internal;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.wst.server.core.IModule;
-/**
- * An event fired when a module changes.
- * 
- * @since 1.0
- */
-public class ModuleEvent {
-	private IModule module;
-	private boolean isChanged;
-	private IModule[] added;
-	private IModule[] changed;
-	private IModule[] removed;
-
-	class IModuleArtifact {
-		IPath path;
-		long timestamp;
-	}
-
-	/**
-	 * Create a new module event.
-	 * 
-	 * @param module the module that has been changed
-	 * @param isChanged true if the module has changed
-	 * @param added added child modules
-	 * @param changed changed child modules
-	 * @param removed removed child modules
-	 */
-	public ModuleEvent(IModule module, boolean isChanged, IModule[] added, IModule[] changed, IModule[] removed) {
-		this.module = module;
-		this.isChanged = isChanged;
-		this.added = added;
-		this.changed = changed;
-		this.removed = removed;
-	}
-
-	/**
-	 * Returns the module that has been changed.
-	 *
-	 * @return the module
-	 */
-	public IModule getModule() {
-		return module;
-	}
-
-	/**
-	 * Returns true if this module's settings have changed.
-	 * 
-	 * @return <code>true</code> if the contents have changed
-	 */
-	public boolean isChanged() {
-		return isChanged;
-	}
-
-	/**
-	 * Returns any child modules that have been added.
-	 * 
-	 * @return the added child modules, or null if no modules have been added
-	 */
-	public IModule[] getAddedChildModules() {
-		return added;
-	}
-
-	/**
-	 * Returns any child modules that have been changed.
-	 * 
-	 * @return the changed child modules, or null if no modules have been changed
-	 */
-	public IModule[] getChangedChildModules() {
-		return changed;
-	}
-
-	/**
-	 * Returns any child modules that have been removed.
-	 * 
-	 * @return the removed child modules, or null if no modules have been removed
-	 */
-	public IModule[] getRemovedChildModules() {
-		return removed;
-	}
-
-	/**
-	 * Returns the module artifacts that have changed.
-	 * 
-	 * @return the changed module artifacts
-	 */
-	public IModuleArtifact[] getChangedArtifacts() {
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleFactory.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleFactory.java
deleted file mode 100644
index 9501c8d..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleFactory.java
+++ /dev/null
@@ -1,153 +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.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.IModuleType;
-import org.eclipse.wst.server.core.model.InternalInitializer;
-import org.eclipse.wst.server.core.model.ModuleFactoryDelegate;
-/**
- * 
- */
-public class ModuleFactory implements IOrdered {
-	private IConfigurationElement element;
-	private ModuleFactoryDelegate delegate;
-	private List moduleTypes;
-	
-	private List modules;
-
-	/**
-	 * ModuleFactory constructor comment.
-	 * 
-	 * @param element a configuration element
-	 */
-	public ModuleFactory(IConfigurationElement element) {
-		super();
-		this.element = element;
-	}
-
-	/**
-	 * Returns the id of this factory.
-	 *
-	 * @return java.lang.String
-	 */
-	public String getId() {
-		return element.getAttribute("id");
-	}
-	
-	/**
-	 * Returns the index (ordering) of this task.
-	 *
-	 * @return int
-	 */
-	public int getOrder() {
-		try {
-			return Integer.parseInt(element.getAttribute("order"));
-		} catch (NumberFormatException e) {
-			return -1;
-		}
-	}
-	
-	/**
-	 * Return the supported module types.
-	 * 
-	 * @return an array of module types
-	 */
-	public IModuleType[] getModuleTypes() {
-		if (moduleTypes == null)
-			moduleTypes = ServerPlugin.getModuleTypes(element.getChildren("moduleType"));
-
-		IModuleType[] mt = new IModuleType[moduleTypes.size()];
-		moduleTypes.toArray(mt);
-		return mt;
-	}
-	
-	/**
-	 * Returns true if this modules factory produces project modules.
-	 *
-	 * @return boolean
-	 */
-	public boolean isProjectModuleFactory() {
-		return "true".equalsIgnoreCase(element.getAttribute("projects"));
-	}
-
-	/*
-	 * @see IModuleFactoryDelegate#getDelegate()
-	 */
-	public ModuleFactoryDelegate getDelegate() {
-		if (delegate == null) {
-			try {
-				delegate = (ModuleFactoryDelegate) element.createExecutableExtension("class");
-				//delegate.initialize(this);
-				InternalInitializer.initializeModuleFactoryDelegate(delegate, this);
-				//ResourceManager.getInstance().addModuleFactoryListener(delegate);
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "Could not create delegate " + toString() + ": " + t.getMessage());
-			}
-		}
-		return delegate;
-	}
-
-	/*
-	 * @see
-	 */
-	public IModule getModule(String id) {
-		IModule[] modules2 = getModules();
-		if (modules2 != null) {
-			int size = modules2.length;
-			for (int i = 0; i < size; i++) {
-				Module module = (Module) modules2[i];
-				if (id.equals(module.getInternalId()))
-					return module;
-			}
-		}
-		return null;
-	}
-	
-	/*
-	 * @see
-	 */
-	public IModule[] getModules() {
-		modules = null;
-		if (modules == null) {
-			try {
-				modules = new ArrayList();
-				IModule[] modules2 = getDelegate().getModules();
-				if (modules2 != null) {
-					int size = modules2.length;
-					for (int i = 0; i < size; i++)
-						modules.add(modules2[i]);
-				}
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "Error calling delegate " + toString() + ": " + e.getMessage());
-				return null;
-			}
-		}
-		
-		IModule[] m = new IModule[modules.size()];
-		modules.toArray(m);
-		return m;
-	}
-	
-	/**
-	 * Return a string representation of this object.
-	 * 
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		return "ModuleFactory[" + getId() + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleFactoryEvent.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleFactoryEvent.java
deleted file mode 100644
index acdedf8..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleFactoryEvent.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.internal;
-
-import org.eclipse.wst.server.core.IModule;
-/**
- * An event fired when a module factory changes.
- * 
- * @since 1.0
- */
-public class ModuleFactoryEvent {
-	protected IModule[] added;
-	protected IModule[] removed;
-
-	/**
-	 * Create a new event.
-	 * 
-	 * @param added added modules
-	 * @param removed removed modules
-	 */
-	public ModuleFactoryEvent(IModule[] added, IModule[] removed) {
-		this.added = added;
-		this.removed = removed;
-	}
-
-	/**
-	 * Returns any modules that have been added.
-	 * 
-	 * @return org.eclipse.wst.server.core.model.IModule[]
-	 */
-	public IModule[] getAddedModules() {
-		return added;
-	}
-
-	/**
-	 * Returns any modules that have been removed.
-	 * 
-	 * @return org.eclipse.wst.server.core.model.IModule[]
-	 */
-	public IModule[] getRemovedModules() {
-		return removed;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleFile.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleFile.java
deleted file mode 100644
index 5350304..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleFile.java
+++ /dev/null
@@ -1,66 +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.internal;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.wst.server.core.model.IModuleFile;
-/**
- * 
- * @since 1.0
- */
-public class ModuleFile implements IModuleFile {
-	protected String name;
-	protected IPath path;
-	protected long stamp;
-	
-	public ModuleFile(String name, IPath path, long stamp) {
-		this.name = name;
-		this.path = path;
-		this.stamp = stamp;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.model.IModuleFile#getModificationStamp()
-	 */
-	public long getModificationStamp() {
-		return stamp;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.model.IModuleResource#getModuleRelativePath()
-	 */
-	public IPath getModuleRelativePath() {
-		return path;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.model.IModuleResource#getName()
-	 */
-	public String getName() {
-		return name;
-	}
-	
-	public boolean equals(Object obj) {
-		if (!(obj instanceof ModuleFile))
-			return false;
-		
-		ModuleFile mf = (ModuleFile) obj;
-		if (!name.equals(mf.name))
-			return false;
-		if (!path.equals(mf.path))
-			return false;
-		return true;
-	}
-	
-	public String toString() {
-		return "ModuleFile [" + name + ", " + path + ", " + stamp + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleFolder.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleFolder.java
deleted file mode 100644
index ef97302..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleFolder.java
+++ /dev/null
@@ -1,70 +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.internal;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.wst.server.core.model.IModuleFolder;
-import org.eclipse.wst.server.core.model.IModuleResource;
-/**
- * 
- * @since 1.0
- */
-public class ModuleFolder implements IModuleFolder {
-	protected String name;
-	protected IPath path;
-	protected IModuleResource[] members;
-	
-	public ModuleFolder(String name, IPath path) {
-		this.name = name;
-		this.path = path;
-	}
-	
-	public void setMembers(IModuleResource[] members) {
-		this.members = members;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.model.IModuleResource#getModuleRelativePath()
-	 */
-	public IPath getModuleRelativePath() {
-		return path;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.model.IModuleResource#getName()
-	 */
-	public String getName() {
-		return name;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.model.IModuleFolder#members()
-	 */
-	public IModuleResource[] members() {
-		return members;
-	}
-	
-	public boolean equals(Object obj) {
-		if (!(obj instanceof ModuleFolder))
-			return false;
-		
-		ModuleFolder mf = (ModuleFolder) obj;
-		if (!name.equals(mf.name))
-			return false;
-		if (!path.equals(mf.path))
-			return false;
-		return true;
-	}
-
-	public String toString() {
-		return "ModuleFolder [" + name + ", " + path + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleKind.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleKind.java
deleted file mode 100644
index 7bd8184..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleKind.java
+++ /dev/null
@@ -1,44 +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.internal;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-/**
- * 
- */
-public class ModuleKind {
-	protected String id;
-	protected String name;
-	
-	public ModuleKind(IConfigurationElement ce) {
-		super();
-		this.id = ce.getAttribute("id");
-		this.name = ce.getAttribute("name");
-	}
-	
-	public ModuleKind(String id, String name) {
-		super();
-		this.id = id;
-		this.name = name;
-	}
-	
-	public String getId() {
-		return id;
-	}
-
-	public String getName() {
-		return name;
-	}
-
-	public String toString() {
-		return "ModuleType[" + id + ", " + name + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleProperties.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleProperties.java
deleted file mode 100644
index 5555635..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleProperties.java
+++ /dev/null
@@ -1,133 +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.internal;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.core.runtime.*;
-
-import org.eclipse.wst.server.core.*;
-/**
- * Helper class that stores preference information for the server tools.
- */
-public class ModuleProperties {
-	private static final String MODULE_DATA_FILE = "modules.xml";
-
-	protected static ModuleProperties instance;
-	protected Map modules;
-
-	/**
-	 * ModuleProperties constructor.
-	 */
-	protected ModuleProperties() {
-		super();
-		load();
-		instance = this;
-	}
-
-	/**
-	 * Return a static instance.
-	 * 
-	 * @return a static instance
-	 */
-	public static ModuleProperties getInstance() {
-		if (instance == null)
-			new ModuleProperties();
-		return instance;
-	}
-	
-	/**
-	 * Load the data.
-	 */
-	private void load() {
-		Trace.trace(Trace.FINEST, "Loading module info");
-		String filename = ServerPlugin.getInstance().getStateLocation().append(MODULE_DATA_FILE).toOSString();
-		modules = new HashMap();
-		
-		try {
-			IMemento memento = XMLMemento.loadMemento(filename);
-			
-			IMemento[] children = memento.getChildren("module");
-			int size = children.length;
-			
-			for (int i = 0; i < size; i++) {
-				String moduleId = children[i].getString("moduleId");
-				String serverId = children[i].getString("serverId");
-				modules.put(moduleId, serverId);
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not load servers: " + e.getMessage());
-		}
-	}
-	
-	private void save(IProgressMonitor monitor) throws CoreException {
-		String filename = ServerPlugin.getInstance().getStateLocation().append(MODULE_DATA_FILE).toOSString();
-		
-		try {
-			XMLMemento memento = XMLMemento.createWriteRoot("modules");
-
-			Iterator iterator = modules.keySet().iterator();
-			while (iterator.hasNext()) {
-				String moduleId = (String) iterator.next();
-				String serverId = (String) modules.get(moduleId);
-
-				IMemento child = memento.createChild("module");
-				child.putString("moduleId", moduleId);
-				child.putString("serverId", serverId);
-			}
-
-			memento.saveToFile(filename);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save servers", e);
-		}
-	}
-
-	/*
-	 * @see ServerCore#getDefaultServer(IModule)
-	 */
-	public IServer getDefaultServer(IModule module) {
-		if (module == null)
-			throw new IllegalArgumentException();
-		
-		String serverId = (String) modules.get(module.getId());
-		if (serverId == null || serverId.length() == 0)
-			return null;
-		
-		return ServerCore.findServer(serverId);
-	}
-
-	/*
-	 * @see ServerCore#setDefaultServer(IModule, IServer, IProgressMonitor)
-	 */
-	public void setDefaultServer(IModule module, IServer server, IProgressMonitor monitor) throws CoreException {
-		if (module == null)
-			throw new IllegalArgumentException();
-		
-		String newServerId = null;
-		if (server != null)
-			newServerId = server.getId();
-		
-		String serverId = (String) modules.get(module.getId());
-		if (serverId == null && newServerId == null)
-			return;
-		if (serverId != null && serverId.equals(newServerId))
-			return;
-		
-		modules.put(module.getId(), newServerId);
-		save(monitor);
-	}
-
-	public String toString() {
-		return "ModuleProperties[]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModulePublishInfo.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModulePublishInfo.java
deleted file mode 100644
index 0c9fbf1..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModulePublishInfo.java
+++ /dev/null
@@ -1,152 +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.internal;
-
-import java.util.*;
-import org.eclipse.core.runtime.*;
-import org.eclipse.wst.server.core.model.IModuleFile;
-import org.eclipse.wst.server.core.model.IModuleFolder;
-import org.eclipse.wst.server.core.model.IModuleResource;
-/**
- * Publish information for a specific module on a specific server.
- */
-public class ModulePublishInfo {
-	private static final String MODULE_ID = "module-ids";
-	private static final String NAME = "name";
-	private static final String PATH = "path";
-	private static final String STAMP = "stamp";
-	private static final String FILE = "file";
-	private static final String FOLDER = "folder";
-
-	private String moduleId;
-	private IModuleResource[] resources = new IModuleResource[0];
-
-	/**
-	 * ModulePublishInfo constructor.
-	 * 
-	 * @param moduleId a module id
-	 */
-	public ModulePublishInfo(String moduleId) {
-		super();
-
-		this.moduleId = moduleId;
-	}
-	
-	/**
-	 * ModulePublishInfo constructor.
-	 * 
-	 * @param memento a memento
-	 */
-	public ModulePublishInfo(IMemento memento) {
-		super();
-		
-		load(memento);
-	}
-	
-	public String getModuleId() {
-		return moduleId;
-	}
-	
-	public IModuleResource[] getResources() {
-		return resources;
-	}
-	
-	public void setResources(IModuleResource[] res) {
-		resources = res;
-	}
-	
-	/**
-	 * 
-	 */
-	protected void load(IMemento memento) {
-		Trace.trace(Trace.FINEST, "Loading module publish info for: " + memento);
-	
-		try {
-			moduleId = memento.getString(MODULE_ID);
-	
-			resources = loadResource(memento);
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not load module publish info information: " + e.getMessage());
-		}
-	}
-	
-	protected IModuleResource[] loadResource(IMemento memento) {
-		if (memento == null)
-			return new IModuleResource[0];
-		
-		List list = new ArrayList(5);
-		IMemento[] children = memento.getChildren(FILE);
-		if (children != null) {
-			int size = children.length;
-			for (int i = 0; i < size; i++) {
-				String name = children[i].getString(NAME);
-				IPath path = new Path(children[i].getString(PATH));
-				long stamp = Long.parseLong(children[i].getString(STAMP));
-				ModuleFile file = new ModuleFile(name, path, stamp);
-				list.add(file);
-			}
-		}
-		children = memento.getChildren(FOLDER);
-		if (children != null) {
-			int size = children.length;
-			for (int i = 0; i < size; i++) {
-				String name = children[i].getString(NAME);
-				IPath path = new Path(children[i].getString(PATH));
-				ModuleFolder folder = new ModuleFolder(name, path);
-				folder.setMembers(loadResource(children[i]));
-				list.add(folder);
-			}
-		}
-		
-		IModuleResource[] resources2 = new IModuleResource[list.size()];
-		list.toArray(resources2);
-		return resources;
-	}
-	
-	/**
-	 * 
-	 */
-	protected void save(IMemento memento) {
-		try {
-			memento.putString(MODULE_ID, moduleId);
-			
-			saveResource(memento, resources);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save module publish info", e);
-		}
-	}
-	
-	protected void saveResource(IMemento memento, IModuleResource[] resources2) {
-		if (resources2 == null)
-			return;
-		int size = resources2.length;
-		for (int i = 0; i < size; i++) {
-			if (resources2[i] instanceof IModuleFile) {
-				IModuleFile file = (IModuleFile) resources2[i];
-				IMemento child = memento.createChild(FILE);
-				child.putString(NAME, file.getName());
-				child.putString(PATH, file.getModuleRelativePath().toPortableString());
-				child.putString(STAMP, "" + file.getModificationStamp());
-			} else {
-				IModuleFolder folder = (IModuleFolder) resources2[i];
-				IMemento child = memento.createChild(FOLDER);
-				child.putString(NAME, folder.getName());
-				child.putString(PATH, folder.getModuleRelativePath().toPortableString());
-				IModuleResource[] resources3 = folder.members();
-				saveResource(child, resources3);
-			}
-		}
-	}
-	
-	public String toString() {
-		return "ModulePublishInfo [" + moduleId + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleResourceDelta.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleResourceDelta.java
deleted file mode 100644
index 8479c78..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleResourceDelta.java
+++ /dev/null
@@ -1,75 +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.internal;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.wst.server.core.model.IModuleResource;
-import org.eclipse.wst.server.core.model.IModuleResourceDelta;
-/**
- * 
- */
-public class ModuleResourceDelta implements IModuleResourceDelta {
-	protected IModuleResource resource;
-	protected int kind;
-	
-	protected IModuleResourceDelta[] children;
-
-	public ModuleResourceDelta(IModuleResource resource, int kind) {
-		this.resource = resource;
-		this.kind = kind;
-	}
-	
-	public void setChildren(IModuleResourceDelta[] children) {
-		this.children = children;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.model.IModuleResource#getModuleRelativePath()
-	 */
-	public IPath getModuleRelativePath() {
-		return resource.getModuleRelativePath();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.model.IModuleResourceDelta#getModuleResource()
-	 */
-	public IModuleResource getModuleResource() {
-		return resource;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.model.IModuleResourceDelta#getKind()
-	 */
-	public int getKind() {
-		return kind;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.model.IModuleResourceDelta#getAffectedChildren()
-	 */
-	public IModuleResourceDelta[] getAffectedChildren() {
-		return children;
-	}
-
-	public String toString() {
-		return "ModuleResourceDelta [" + resource + ", " + kind + "]";
-	}
-	
-	public void trace(String indent) {
-		System.out.println(indent + toString());
-		if (children != null) {
-			int size = children.length;
-			for (int i = 0; i < size; i++) {
-				((ModuleResourceDelta)children[i]).trace(indent + "  ");
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleType.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleType.java
deleted file mode 100644
index c3f0281..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ModuleType.java
+++ /dev/null
@@ -1,123 +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.internal;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionRegistry;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.wst.server.core.IModuleType;
-/**
- * 
- */
-public class ModuleType implements IModuleType {
-	protected String id;
-	protected String version;
-	
-	//	cached copy of all module types
-	private static List moduleTypes;
-	
-	public ModuleType(String id, String version) {
-		super();
-		this.id = id;
-		this.version = version;
-	}
-
-	public String getId() {
-		return id;
-	}
-	
-	public String getName() {
-		ModuleKind mt = findModuleType(id);
-		if (mt != null)
-			return mt.getName();
-		return Messages.moduleTypeUnknown;
-	}
-
-	public String getVersion() {
-		return version;
-	}
-	
-	/**
-	 * Returns an array of all known module types.
-	 * <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 static IModuleType[] getModuleTypes() {
-		if (moduleTypes == null)
-			loadModuleTypes();
-		
-		IModuleType[] mt = new IModuleType[moduleTypes.size()];
-		moduleTypes.toArray(mt);
-		return mt;
-	}*/
-
-	/**
-	 * Returns the module type with the given id, or <code>null</code>
-	 * if none. This convenience method searches the list of known
-	 * module types for the one a matching
-	 * module type id ({@link ModuleType#getId()}). The id may not be null.
-	 *
-	 * @param id the module type id
-	 * @return the module type, or <code>null</code> if there is no module type
-	 * with the given id
-	 */
-	public static ModuleKind findModuleType(String id) {
-		if (id == null)
-			throw new IllegalArgumentException();
-
-		if (moduleTypes == null)
-			loadModuleTypes();
-		
-		Iterator iterator = moduleTypes.iterator();
-		while (iterator.hasNext()) {
-			ModuleKind moduleType = (ModuleKind) iterator.next();
-			if (id.equals(moduleType.getId()))
-				return moduleType;
-		}
-		return null;
-	}
-	
-	/**
-	 * Load the module types.
-	 */
-	private static synchronized void loadModuleTypes() {
-		if (moduleTypes != null)
-			return;
-		Trace.trace(Trace.EXTENSION_POINT, "->- Loading .moduleTypes extension point ->-");
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IConfigurationElement[] cf = registry.getConfigurationElementsFor(ServerPlugin.PLUGIN_ID, "moduleTypes");
-
-		int size = cf.length;
-		moduleTypes = new ArrayList(size);
-		for (int i = 0; i < size; i++) {
-			try {
-				ModuleKind moduleType = new ModuleKind(cf[i]);
-				moduleTypes.add(moduleType);
-				Trace.trace(Trace.EXTENSION_POINT, "  Loaded moduleType: " + cf[i].getAttribute("id"));
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "  Could not load moduleType: " + cf[i].getAttribute("id"), t);
-			}
-		}
-		
-		Trace.trace(Trace.EXTENSION_POINT, "-<- Done loading .moduleTypes extension point -<-");
-	}
-
-	public String toString() {
-		return "ModuleType[" + id + ", " + version + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ProgressUtil.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ProgressUtil.java
deleted file mode 100644
index 761c763..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ProgressUtil.java
+++ /dev/null
@@ -1,71 +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.internal;
-
-import org.eclipse.core.runtime.*;
-/**
- * Progress Monitor utility.
- * 
- * @since 1.0
- */
-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 a progress monitor
-	 * @param ticks the number of ticks
-	 * @param style a style
-	 * @return a progress monitor
-	 */
-	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.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ProjectProperties.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ProjectProperties.java
deleted file mode 100644
index dc7c631..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ProjectProperties.java
+++ /dev/null
@@ -1,351 +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.internal;
-
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.*;
-
-import org.eclipse.wst.server.core.*;
-/**
- * Helper class that stores preference information for the server tools.
- * 
- * TODO: Currently this class always reads from disk. It should cache the file
- * and have a resource listener.
- */
-public class ProjectProperties implements IProjectProperties {
-	private static final String PROJECT_PREFERENCE_FILE = ".runtime";
-	
-	protected IProject project;
-	
-	protected String serverId;
-	protected String runtimeId;
-	protected boolean serverProject = false;
-	
-	// project properties listeners
-	protected transient List listeners;
-
-	/**
-	 * ProjectProperties constructor.
-	 * 
-	 * @param project a project
-	 */
-	public ProjectProperties(IProject project) {
-		super();
-		this.project = project;
-	}
-	
-	/**
-	 * Load the preferences.
-	 */
-	private void loadPreferences() {
-		Trace.trace(Trace.FINEST, "Loading project preferences: " + project);
-		
-		InputStream in = null;
-		try {
-			IMemento memento = null;
-			if (!project.exists() || !project.isOpen())
-				return;
-			IFile file = project.getFile(PROJECT_PREFERENCE_FILE);
-			if (file != null && file.exists()) {
-				in = file.getContents();
-				memento = XMLMemento.loadMemento(in);
-			}
-			
-			if (memento == null)
-				return;
-			
-			serverId = memento.getString("server-id");
-			runtimeId = memento.getString("runtime-id");
-			String s = memento.getString("servers");
-			if (s != null && "true".equals(s))
-				serverProject = true;
-			else
-				serverProject = false;
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not load preferences: " + e.getMessage());
-		} finally {
-			try {
-				if (in != null)
-					in.close();
-			} catch (Exception e) {
-				// ignore
-			}
-		}
-	}
-	
-	private void savePreferences(IProgressMonitor monitor) throws CoreException {
-		if (project.exists() && project.isOpen()) {
-			IFile file = project.getFile(PROJECT_PREFERENCE_FILE);
-			
-			if (file.exists() && file.isReadOnly()) {
-				IStatus status = ResourcesPlugin.getWorkspace().validateEdit(new IFile[] { file }, null);
-				if (status.getSeverity() == IStatus.ERROR)
-					// didn't work or not under source control
-					throw new CoreException(status);
-			}
-			
-			InputStream in = null;
-			try {
-				XMLMemento memento = XMLMemento.createWriteRoot("runtime");
-
-				if (runtimeId != null)
-					memento.putString("runtime-id", runtimeId);
-				if (serverId != null)
-					memento.putString("server-id", serverId);
-				if (serverProject)
-					memento.putString("servers", "true");
-				else
-					memento.putString("servers", "false");
-				in = memento.getInputStream();
-				
-				if (file.exists())
-					file.setContents(in, true, true, monitor);
-				else
-					file.create(in, true, monitor);
-			} catch (Exception e) {
-				throw new CoreException(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, "", e));
-			} finally {
-				try {
-					in.close();
-				} catch (Exception e) {
-					// ignore
-				}
-			}
-			return;
-		}
-	}
-
-	/**
-	 * Returns the preferred runtime server for the project. 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)
-	 *
-	 * @return server org.eclipse.wst.server.core.IServer
-	 */
-	public IServer getDefaultServer() {
-		loadPreferences();
-
-		if (serverId == null || serverId.length() == 0)
-			return null;
-		
-		IServer server = ServerCore.findServer(serverId);
-		/*if (server != null && ServerUtil.containsModule(server, module))
-			return server;
-		else
-			return null;*/
-		return server;
-	}
-
-	/**
-	 * Sets the default server.
-	 * 
-	 * @param server a server
-	 * @param monitor a progress monitor
-	 * @throws CoreException if anything goes wrong
-	 */
-	public void setDefaultServer(IServer server, IProgressMonitor monitor) throws CoreException {
-		loadPreferences();
-		
-		String newServerId = null;
-		if (server != null)
-			newServerId = server.getId();
-		if (serverId == null && newServerId == null)
-			return;
-		if (serverId != null && serverId.equals(newServerId))
-			return;
-		
-		serverId = newServerId;
-		savePreferences(monitor);
-	}
-	
-	protected String getRuntimeTargetId() {
-		loadPreferences();
-		return runtimeId;
-	}
-	
-	protected void setRuntimeTargetId(String newRuntimeId, IProgressMonitor monitor) throws CoreException {
-		loadPreferences();
-		runtimeId = newRuntimeId;
-		savePreferences(monitor);
-	}
-
-	/**
-	 * Returns the current runtime target type for the given project.
-	 * 
-	 * @return the runtime target
-	 */
-	public IRuntime getRuntimeTarget() {
-		loadPreferences();
-		if (runtimeId == null)
-			return null;
-		return ServerCore.findRuntime(runtimeId);
-	}
-
-	/**
-	 * Sets the runtime target for the project.
-	 * 
-	 * @param runtime the target runtime
-	 * @param monitor a progress monitor
-	 * @throws CoreException if anything goes wrong
-	 */
-	public void setRuntimeTarget(IRuntime runtime, IProgressMonitor monitor) throws CoreException {
-		loadPreferences();
-		IRuntime oldRuntime = null;
-		if (runtimeId != null)
-			oldRuntime = ServerCore.findRuntime(runtimeId);
-		setRuntimeTarget(oldRuntime, runtime, true, monitor);
-	}
-
-	protected void setRuntimeTarget(IRuntime oldRuntime, IRuntime newRuntime, boolean save, IProgressMonitor monitor) throws CoreException {
-		Trace.trace(Trace.RUNTIME_TARGET, "setRuntimeTarget : " + oldRuntime + " -> " + newRuntime);
-		
-		if (oldRuntime == null && newRuntime == null)
-			return;
-		if (oldRuntime != null && oldRuntime.equals(newRuntime))
-			return;
-		
-		IRuntimeTargetHandler[] handlers = ServerCore.getRuntimeTargetHandlers();
-		if (handlers == null)
-			return;
-	
-		int size = handlers.length;
-		// remove old target
-		if (oldRuntime != null) {
-			IRuntimeType runtimeType = oldRuntime.getRuntimeType();
-			for (int i = 0; i < size; i++) {
-				IRuntimeTargetHandler handler = handlers[i];
-				long time = System.currentTimeMillis();
-				boolean supports = handler.supportsRuntimeType(runtimeType);
-				Trace.trace(Trace.RUNTIME_TARGET, "  < " + handler + " " + supports);
-				if (supports)
-					((RuntimeTargetHandler)handler).removeRuntimeTarget(project, oldRuntime, monitor);
-				Trace.trace(Trace.PERFORMANCE, "Runtime target: <" + (System.currentTimeMillis() - time) + "> " + handler.getId());
-			}
-		}
-		
-		// add new target
-		if (newRuntime != null) {
-			runtimeId = newRuntime.getId();
-			if (save)
-				savePreferences(monitor);
-			IRuntimeType runtimeType = newRuntime.getRuntimeType();
-			for (int i = 0; i < size; i++) {
-				IRuntimeTargetHandler handler = handlers[i];
-				long time = System.currentTimeMillis();
-				boolean supports = handler.supportsRuntimeType(runtimeType);
-				Trace.trace(Trace.RUNTIME_TARGET, "  > " + handler + " " + supports);
-				if (supports)
-					((RuntimeTargetHandler)handler).setRuntimeTarget(project, newRuntime, monitor);
-				Trace.trace(Trace.PERFORMANCE, "Runtime target: <" + (System.currentTimeMillis() - time) + "> " + handler.getId());
-			}
-		} else {
-			runtimeId = null;
-			if (save)
-				savePreferences(monitor);
-		}
-		
-		fireRuntimeTargetChanged(newRuntime);
-		Trace.trace(Trace.RUNTIME_TARGET, "setRuntimeTarget <");
-	}
-
-	/**
-	 * Adds a new project properties listener.
-	 * Has no effect if an identical listener is already registered.
-	 * 
-	 * @param listener the properties listener
-	 * @see #removeProjectPropertiesListener(IProjectPropertiesListener)
-	 */
-	public void addProjectPropertiesListener(IProjectPropertiesListener listener) {
-		Trace.trace(Trace.LISTENERS, "Adding project properties listener " + listener + " to " + this);
-		
-		if (listeners == null)
-			listeners = new ArrayList();
-		listeners.add(listener);
-	}
-
-	/**
-	 * Removes an existing project properties listener.
-	 * Has no effect if the listener is not registered.
-	 * 
-	 * @param listener the properties listener
-	 * @see #addProjectPropertiesListener(IProjectPropertiesListener)
-	 */
-	public void removeProjectPropertiesListener(IProjectPropertiesListener listener) {
-		Trace.trace(Trace.LISTENERS, "Removing project properties listener " + listener + " from " + this);
-		
-		if (listeners != null)
-			listeners.remove(listener);
-	}
-
-	/**
-	 * Fire a event because the runtime target changed.
-	 *
-	 * @param runtime org.eclipse.wst.server.core.IRuntime
-	 */
-	private void fireRuntimeTargetChanged(IRuntime runtime) {
-		Trace.trace(Trace.LISTENERS, "->- Firing runtimeTargetChanged event: " + runtime + " ->-");
-	
-		if (listeners == null || listeners.isEmpty())
-			return;
-	
-		int size = listeners.size();
-		IProjectPropertiesListener[] ppl = new IProjectPropertiesListener[size];
-		listeners.toArray(ppl);
-	
-		for (int i = 0; i < size; i++) {
-			Trace.trace(Trace.LISTENERS, "  Firing runtimeTargetChanged event to " + ppl[i]);
-			try {
-				ppl[i].runtimeTargetChanged(project, runtime);
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "  Error firing runtimeTargetChanged event to " + ppl[i], e);
-			}
-		}
-	
-		Trace.trace(Trace.LISTENERS, "-<- Done firing runtimeTargetChanged event -<-");
-	}
-	
-	/**
-	 * Returns <code>true</code> if this project can contain server artifacts, and
-	 * <code>false</code> otherwise.
-	 * 
-	 * @return <code>true</code> if this project can contain server artifacts, and
-	 *    <code>false</code> otherwise
-	 */
-	public boolean isServerProject() {
-		loadPreferences();
-		return serverProject;
-	}
-
-	/**
-	 * Sets whether the project can contain server resources.
-	 * 
-	 * @param b <code>true</code> to allow the project to contain server
-	 *    resources, or <code>false</code> to not allow the project to contain
-	 *    servers
-	 * @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 server project
-	 */
-	public void setServerProject(boolean b, IProgressMonitor monitor) throws CoreException {
-		loadPreferences();
-		serverProject = b;
-		savePreferences(monitor);
-	}
-	
-	public String toString() {
-		return "ProjectProperties[" + project + ", " + serverId + ", " + runtimeId + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/PublishAdapter.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/PublishAdapter.java
deleted file mode 100644
index d0de64f..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/PublishAdapter.java
+++ /dev/null
@@ -1,30 +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.internal;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.wst.server.core.IServer;
-/**
- * Helper class which implements the IPublishListener interface
- * with empty methods.
- * 
- * @see org.eclipse.wst.server.core.internal.IPublishListener
- * @since 1.0
- */
-public class PublishAdapter implements IPublishListener {
-	public void publishStarted(IServer server) {
-		// do nothing
-	}
-
-	public void publishFinished(IServer server, IStatus status) {
-		// do nothing
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/PublishInfo.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/PublishInfo.java
deleted file mode 100644
index 2f3a01a..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/PublishInfo.java
+++ /dev/null
@@ -1,153 +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.internal;
-
-import java.util.*;
-import java.io.File;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.wst.server.core.IServer;
-/**
- * Helper to obtain and store the global publish information.
- * (what files were published and when) Delegates to PublishState
- * for all server specific publishing information.
- */
-public class PublishInfo {
-	protected static PublishInfo instance;
-
-	protected static final String PUBLISH_DIR = "publish";
-
-	// map of server ids to Strings of filename containing publish data
-	protected Map serverIdToPath;
-
-	// map of loaded serverIds to publish info
-	protected Map serverIdToPublishInfo;
-
-	/**
-	 * PublishInfo constructor comment.
-	 */
-	private PublishInfo() {
-		super();
-	
-		serverIdToPath = new HashMap();
-		serverIdToPublishInfo = new HashMap();
-		load();
-	}
-
-	/**
-	 * Return the publish info.
-	 * 
-	 * @return org.eclipse.wst.server.core.internal.PublishInfo
-	 */
-	public static PublishInfo getInstance() {
-		if (instance == null)
-			instance = new PublishInfo();
-		return instance;
-	}
-
-	/**
-	 * Return the publish state.
-	 * 
-	 * @return org.eclipse.wst.server.core.internal.PublishState
-	 * @param server org.eclipse.wst.server.core.IServer
-	 */
-	public ServerPublishInfo getServerPublishInfo(IServer server) {
-		// have we tried loading yet?
-		String serverId = server.getId();
-		if (serverIdToPath.containsKey(serverId)) {
-			if (!serverIdToPublishInfo.containsKey(serverId)) {
-				String partialPath = (String) serverIdToPath.get(serverId);
-				IPath path = ServerPlugin.getInstance().getStateLocation().append(PUBLISH_DIR).append(partialPath);
-				ServerPublishInfo spi = new ServerPublishInfo(path);
-				serverIdToPublishInfo.put(serverId, spi);
-				return spi;
-			}
-			// already loaded
-			return (ServerPublishInfo) serverIdToPublishInfo.get(serverId); 
-		}
-		
-		// first time server is being used
-		IPath path = ServerPlugin.getInstance().getStateLocation().append(PUBLISH_DIR);
-		File file = new File(path.toOSString());
-		if (!file.exists())
-			file.mkdir();
-
-		file = null;
-		int i = 0;
-		String partialPath = null;
-		while (file == null || file.exists()) {
-			partialPath = "publish" + i + ".xml";
-			path = ServerPlugin.getInstance().getStateLocation().append(PUBLISH_DIR).append(partialPath);
-			if (serverIdToPath.get(partialPath) == null)
-				file = new File(path.toOSString());
-			i++;
-		}
-		
-		ServerPublishInfo spi = new ServerPublishInfo(path);
-		serverIdToPath.put(serverId, partialPath);
-		serverIdToPublishInfo.put(serverId, spi);
-		save();
-		return spi;
-	}
-
-	/**
-	 * 
-	 */
-	protected void load() {
-		Trace.trace(Trace.FINEST, "Loading publish info");
-		String filename = ServerPlugin.getInstance().getStateLocation().append("publish.xml").toOSString();
-	
-		try {
-			IMemento memento = XMLMemento.loadMemento(filename);
-	
-			IMemento[] serverChild = memento.getChildren("server");
-			int size = serverChild.length;
-			serverIdToPath = new HashMap(size + 2);
-	
-			for (int i = 0; i < size; i++) {
-				String id = serverChild[i].getString("id");
-				String partialPath = serverChild[i].getString("path");
-				serverIdToPath.put(id, partialPath);
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not load global publish info: " + e.getMessage());
-		}
-	}
-
-	/**
-	 * 
-	 */
-	protected void save() {
-		String filename = ServerPlugin.getInstance().getStateLocation().append("publish.xml").toOSString();
-	
-		try {
-			XMLMemento memento = XMLMemento.createWriteRoot("publish-info");
-	
-			Iterator iterator = serverIdToPath.keySet().iterator();
-			while (iterator.hasNext()) {
-				String serverId = (String) iterator.next();
-				String partialPath = (String) serverIdToPath.get(serverId);
-	
-				IMemento server = memento.createChild("server");
-				server.putString("id", serverId);
-				server.putString("path", partialPath);
-			}
-	
-			memento.saveToFile(filename);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save global publish info", e);
-		}
-	}
-	
-	protected void save(IServer server) {
-		ServerPublishInfo spi = getServerPublishInfo(server);
-		spi.save();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/PublishServerJob.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/PublishServerJob.java
deleted file mode 100644
index 5c04344..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/PublishServerJob.java
+++ /dev/null
@@ -1,67 +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.internal;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.server.core.IServer;
-/**
- * Job to publish to a particular server.
- */
-public class PublishServerJob extends Job {
-	protected IServer server;
-	protected int kind;
-	protected boolean check; 
-
-	/**
-	 * Create a new publishing job.
-	 * 
-	 * @param server the server to publish to
-	 * @param kind the kind of publish
-	 * @param check
-	 */
-	public PublishServerJob(IServer server, int kind, boolean check) {
-		super(NLS.bind(Messages.publishing, server.getName()));
-		this.server = server;
-		this.kind = kind;
-		this.check = check;
-		setRule(new ServerSchedulingRule(server));
-		if (kind != IServer.PUBLISH_AUTO)
-			setUser(true);
-	}
-
-	/**
-	 * Create a new publishing job.
-	 * 
-	 * @param server the server to publish to
-	 */
-	public PublishServerJob(IServer server) {
-		this(server, IServer.PUBLISH_INCREMENTAL, true);
-	}
-
-	/**
-	 * @see Job#shouldRun()
-	 */
-	public boolean shouldRun() {
-		if (!check)
-			return true;
-		return ServerPreferences.getInstance().isAutoPublishing() && ((Server)server).shouldPublish();
-	}
-
-	/**
-	 * @see Job#run(IProgressMonitor)
-	 */
-	protected IStatus run(IProgressMonitor monitor) {
-		return server.publish(kind, monitor);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/PublishTask.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/PublishTask.java
deleted file mode 100644
index 4efa7c3..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/PublishTask.java
+++ /dev/null
@@ -1,96 +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.internal;
-
-import java.util.List;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-
-import org.eclipse.wst.server.core.*;
-import org.eclipse.wst.server.core.model.*;
-/**
- * 
- */
-public class PublishTask implements IPublishTask {
-	private IConfigurationElement element;
-	private PublishTaskDelegate delegate;
-
-	/**
-	 * PublishTask constructor comment.
-	 * 
-	 * @param element a configuration element 
-	 */
-	public PublishTask(IConfigurationElement element) {
-		super();
-		this.element = element;
-	}
-
-	/*
-	 * @see
-	 */
-	public String getId() {
-		return element.getAttribute("id");
-	}
-
-	/*
-	 * @see
-	 */
-	protected String[] getTypeIds() {
-		try {
-			return ServerPlugin.tokenize(element.getAttribute("typeIds"), ",");
-		} catch (Exception e) {
-			return null;
-		}
-	}
-
-	/*
-	 * @see
-	 */
-	public boolean supportsType(String id) {
-		return ServerPlugin.supportsType(getTypeIds(), id);
-	}
-
-	/*
-	 * @see IPublishTask#getDelegate()
-	 */
-	public PublishTaskDelegate getDelegate() {
-		if (delegate == null) {
-			try {
-				delegate = (PublishTaskDelegate) element.createExecutableExtension("class");
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "Could not create delegate" + toString() + ": " + t.getMessage());
-			}
-		}
-		return delegate;
-	}
-	
-	/*
-	 * @see
-	 */
-	public PublishOperation[] getTasks(IServer server, List modules) {
-		try {
-			Trace.trace(Trace.FINEST, "Task.init " + this);
-			return getDelegate().getTasks(server, modules);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate " + toString() + ": " + e.getMessage());
-		}
-		return new PublishOperation[0];
-	}
-
-	/**
-	 * Return a string representation of this object.
-	 * 
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		return "PublishTask[" + getId() + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ResourceManager.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ResourceManager.java
deleted file mode 100644
index beda6fc..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ResourceManager.java
+++ /dev/null
@@ -1,1030 +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.internal;
-
-import java.io.ByteArrayInputStream;
-import java.util.*;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.core.resources.*;
-
-import org.eclipse.wst.server.core.*;
-import org.eclipse.wst.server.core.model.ServerDelegate;
-/**
- * ResourceManager handles the mappings between resources
- * and servers or server configurations, and creates
- * notification of servers or server configurations
- * being added and removed.
- *
- * <p>Servers and server configurations may be a single
- * resource, or they may be a folder that contains a group
- * of files. Folder-resource may not contain other servers
- * or configurations.</p>
- */
-public class ResourceManager {
-	private static final String SERVER_DATA_FILE = "servers.xml";
-	
-	private static final byte EVENT_ADDED = 0;
-	private static final byte EVENT_CHANGED = 1;
-	private static final byte EVENT_REMOVED = 2;
-
-	private static ResourceManager instance;
-
-	// currently active runtimes and servers
-	protected List runtimes;
-	protected List servers;
-	protected IRuntime defaultRuntime;
-
-	// lifecycle listeners
-	protected transient List runtimeListeners;
-	protected transient List serverListeners;
-	
-	// cache for disposing servers & runtimes
-	protected List activeBundles;
-
-	// resource change listeners
-	private IResourceChangeListener modelResourceChangeListener;
-	private IResourceChangeListener publishResourceChangeListener;
-	private Preferences.IPropertyChangeListener pcl;
-	protected boolean ignorePreferenceChanges = false;
-
-	/**
-	 * Resource listener - tracks changes on server resources so that
-	 * we can reload/drop server instances and configurations that
-	 * may change outside of our control.
-	 * Listens for two types of changes:
-	 * 1. Servers or configurations being added or removed
-	 *    from their respective folders. (in the future, including
-	 *    the addition or removal of a full server project, which
-	 *    we currently can't listen for because there is no nature
-	 *    attached to the project at this point - OTI defect)
-	 * 2. Projects being deleted.
-	 */
-	public class ServerModelResourceChangeListener implements IResourceChangeListener {
-		/**
-		 * Create a new ServerModelResourceChangeListener.
-		 */
-		public ServerModelResourceChangeListener() {
-			super();
-		}
-
-		/**
-		 * Listen for projects being added or removed and act accordingly.
-		 *
-		 * @param event org.eclipse.core.resources.IResourceChangeEvent
-		 */
-		public void resourceChanged(IResourceChangeEvent event) {
-			IResourceDelta delta = event.getDelta();
-			if (delta == null)
-				return;
-	
-			Trace.trace(Trace.RESOURCES, "->- ServerModelResourceManager responding to resource change: " + event.getType() + " ->-");
-			IResourceDelta[] children = delta.getAffectedChildren();
-			if (children != null) {
-				int size = children.length;
-				for (int i = 0; i < size; i++) {
-					IResource resource = children[i].getResource();
-					if (resource != null && resource instanceof IProject) {
-						projectChanged((IProject) resource, children[i]);
-					}
-				}
-			}
-	
-			Trace.trace(Trace.RESOURCES, "-<- Done ServerModelResourceManager responding to resource change -<-");
-		}
-	
-		/**
-		 * React to a change within a possible server project.
-		 *
-		 * @param delta org.eclipse.core.resources.IResourceDelta
-		 */
-		protected void projectChanged(IProject project, IResourceDelta delta) {
-			if (!((ProjectProperties)ServerCore.getProjectProperties(project)).isServerProject()) {
-				Trace.trace(Trace.RESOURCES, "Not a server project: " + project.getName());
-				return;
-			}
-			
-			IResourceDelta[] children = delta.getAffectedChildren();
-	
-			int size = children.length;
-			for (int i = 0; i < size; i++) {
-				IResourceDelta child = children[i];
-
-				// look for servers and server configurations
-				try {
-					child.accept(new IResourceDeltaVisitor() {
-						public boolean visit(IResourceDelta delta2) {
-							return handleResourceDelta(delta2);
-						}
-					});
-				} catch (Exception e) {
-					Trace.trace(Trace.SEVERE, "Error responding to resource change", e);
-				}
-			}
-		}
-	}
-
-	/**
-	 * Publish resource listener
-	 */
-	public class PublishResourceChangeListener implements IResourceChangeListener {
-		/**
-		 * Create a new PublishResourceChangeListener.
-		 */
-		public PublishResourceChangeListener() {
-			super();
-		}
-
-		/**
-		 * Listen for projects being added or removed and act accordingly.
-		 *
-		 * @param event org.eclipse.core.resources.IResourceChangeEvent
-		 */
-		public void resourceChanged(IResourceChangeEvent event) {
-			IResourceDelta delta = event.getDelta();
-			if (delta == null)
-				return;
-		
-			Trace.trace(Trace.FINEST, "->- PublishResourceManager responding to resource change: " + event.getType() + " ->-");
-			// search for changes to any project using a visitor
-			try {
-				delta.accept(new IResourceDeltaVisitor() {
-					public boolean visit(IResourceDelta visitorDelta) {
-						IResource resource = visitorDelta.getResource();
-
-						// only respond to project changes
-						if (resource != null && resource instanceof IProject) {
-							publishHandleProjectChange(visitorDelta);
-							return false;
-						}
-						return true;
-					}
-				});
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "Error responding to resource change", e);
-			}
-			Trace.trace(Trace.FINEST, "-<- Done PublishResourceManager responding to resource change -<-");
-		}
-	}
-	
-	protected List moduleServerEventHandlers;
-	protected List moduleServerEventHandlerIndexes;
-
-	/**
-	 * Cannot directly create a ResourceManager. Use
-	 * ServersCore.getResourceManager().
-	 */
-	private ResourceManager() {
-		super();
-		instance = this;
-		
-		init();
-	}
-
-	protected void init() {
-		servers = new ArrayList();
-		activeBundles = new ArrayList();
-		loadRuntimesList();
-		loadServersList();
-		
-		pcl = new Preferences.IPropertyChangeListener() {
-			public void propertyChange(Preferences.PropertyChangeEvent event) {
-				if (ignorePreferenceChanges)
-					return;
-				String property = event.getProperty();
-				if (property.equals("runtimes")) {
-					loadRuntimesList();
-					saveRuntimesList();
-				}
-			}
-		};
-		
-		ServerPlugin.getInstance().getPluginPreferences().addPropertyChangeListener(pcl);
-		
-		resolveServers();
-
-		// keep track of future changes to the file system
-		modelResourceChangeListener = new ServerModelResourceChangeListener();
-		ResourcesPlugin.getWorkspace().addResourceChangeListener(modelResourceChangeListener, IResourceChangeEvent.POST_CHANGE | IResourceChangeEvent.PRE_CLOSE | IResourceChangeEvent.PRE_DELETE);
-	
-		// add listener for future changes
-		publishResourceChangeListener = new PublishResourceChangeListener();
-		ResourcesPlugin.getWorkspace().addResourceChangeListener(publishResourceChangeListener, IResourceChangeEvent.POST_CHANGE | IResourceChangeEvent.PRE_DELETE);
-	
-		/*configurationListener = new IServerConfigurationListener() {
-			public void childProjectChange(IServerConfiguration configuration) {
-				handleConfigurationChildProjectsChange(configuration);
-			}
-		};*/
-		
-		Trace.trace(Trace.FINER, "Loading workspace servers and server configurations");
-		IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
-		if (projects != null) {
-			int size = projects.length;
-			for (int i = 0; i < size; i++) {
-				if (((ProjectProperties)ServerCore.getProjectProperties(projects[i])).isServerProject())
-					loadFromProject(projects[i]);
-			}
-		}
-		
-		addServerLifecycleListener(ServerListener.getInstance());
-	}
-	
-	/**
-	 * Load all of the servers and server configurations from the given project.
-	 */
-	protected static void loadFromProject(IProject project) {
-		Trace.trace(Trace.FINER, "Initial server resource load for " + project.getName(), null);
-		final ResourceManager rm = ResourceManager.getInstance();
-	
-		try {
-			project.accept(new IResourceVisitor() {
-				public boolean visit(IResource resource) {
-					try {
-						if (resource instanceof IFile) {
-							IFile file = (IFile) resource;
-							rm.handleNewFile(file, null);
-							return false;
-						}
-						return true;
-						//return !rm.handleNewServerResource(resource, null);
-					} catch (Exception e) {
-						Trace.trace(Trace.SEVERE, "Error during initial server resource load", e);
-					}
-					return true;
-				}
-			});
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not load server project " + project.getName(), e);
-		}
-	}
-
-	public static ResourceManager getInstance() {
-		if (instance == null)
-			new ResourceManager();
-
-		return instance;
-	}
-
-	public static void shutdown() {
-		if (instance == null)
-			return;
-		
-		try {
-			instance.shutdownImpl();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error during shutdown", e);
-		}
-	}
-
-	protected boolean isActiveBundle(String bundleId) {
-		return activeBundles.contains(bundleId);
-	}
-
-	protected void shutdownBundle(String id) {
-		// dispose servers
-		Iterator iterator = servers.iterator();
-		while (iterator.hasNext()) {
-			Server server = (Server) iterator.next();
-			try {
-				ServerType serverType = (ServerType) server.getServerType();
-				if (id.equals(serverType.getElement().getDeclaringExtension().getNamespace())) {
-					//server.stop(true);
-					server.dispose();
-				}
-			} catch (Exception e) {
-				Trace.trace(Trace.WARNING, "Error disposing server", e);
-			}
-		}
-		
-		// dispose runtimes
-		iterator = runtimes.iterator();
-		while (iterator.hasNext()) {
-			Runtime runtime = (Runtime) iterator.next();
-			try {
-				RuntimeType runtimeType = (RuntimeType) runtime.getRuntimeType();
-				if (id.equals(runtimeType.getElement().getDeclaringExtension().getNamespace())) {
-					runtime.dispose();
-				}
-			} catch (Exception e) {
-				Trace.trace(Trace.WARNING, "Error disposing server", e);
-			}
-		}
-		try {
-			Thread.sleep(1000);
-		} catch (Exception e) {
-			// ignore
-		}
-	}
-	
-	protected void shutdownImpl() {
-		IWorkspace workspace = ResourcesPlugin.getWorkspace();
-		if (workspace != null) {
-			workspace.removeResourceChangeListener(modelResourceChangeListener);
-			workspace.removeResourceChangeListener(publishResourceChangeListener);
-		}
-		
-		ServerPlugin.getInstance().getPluginPreferences().removePropertyChangeListener(pcl);
-		
-		removeServerLifecycleListener(ServerListener.getInstance());
-	}
-
-	/*
-	 * 
-	 */
-	public void addRuntimeLifecycleListener(IRuntimeLifecycleListener listener) {
-		Trace.trace(Trace.LISTENERS, "Adding server resource listener " + listener + " to " + this);
-	
-		if (runtimeListeners == null)
-			runtimeListeners = new ArrayList(3);
-		runtimeListeners.add(listener);
-	}
-	
-	/*
-	 *
-	 */
-	public void removeRuntimeLifecycleListener(IRuntimeLifecycleListener listener) {
-		Trace.trace(Trace.LISTENERS, "Removing server resource listener " + listener + " from " + this);
-	
-		if (runtimeListeners != null)
-			runtimeListeners.remove(listener);
-	}
-	
-	/*
-	 * 
-	 */
-	public void addServerLifecycleListener(IServerLifecycleListener listener) {
-		Trace.trace(Trace.LISTENERS, "Adding server resource listener " + listener + " to " + this);
-	
-		if (serverListeners == null)
-			serverListeners = new ArrayList(3);
-		serverListeners.add(listener);
-	}
-	
-	/*
-	 *
-	 */
-	public void removeServerLifecycleListener(IServerLifecycleListener listener) {
-		Trace.trace(Trace.LISTENERS, "Removing server resource listener " + listener + " from " + this);
-	
-		if (serverListeners != null)
-			serverListeners.remove(listener);
-	}
-	
-	/**
-	 * Deregister an existing runtime.
-	 *
-	 * @param runtime
-	 */
-	protected void deregisterRuntime(IRuntime runtime) {
-		if (runtime == null)
-			return;
-
-		Trace.trace(Trace.RESOURCES, "Deregistering runtime: " + runtime.getName());
-
-		((Runtime)runtime).dispose();
-		fireRuntimeEvent(runtime, EVENT_REMOVED);
-		runtimes.remove(runtime);
-	}
-
-	/**
-	 * Deregister an existing server resource.
-	 *
-	 * @param server
-	 */
-	protected void deregisterServer(IServer server) {
-		if (server == null)
-			return;
-
-		Trace.trace(Trace.RESOURCES, "Deregistering server: " + server.getName());
-		
-		((Server) server).deleteLaunchConfigurations();
-		ServerPlugin.getInstance().removeTempDirectory(server.getId());
-
-		((Server)server).dispose();
-		fireServerEvent(server, EVENT_REMOVED);
-		servers.remove(server);
-	}
-
-	/**
-	 * Fire a runtime event.
-	 */
-	private void fireRuntimeEvent(final IRuntime runtime, byte b) {
-		Trace.trace(Trace.LISTENERS, "->- Firing runtime event: " + runtime.getName() + " ->-");
-		
-		if (runtimeListeners == null || runtimeListeners.isEmpty())
-			return;
-	
-		int size = runtimeListeners.size();
-		IRuntimeLifecycleListener[] srl = new IRuntimeLifecycleListener[size];
-		runtimeListeners.toArray(srl);
-	
-		for (int i = 0; i < size; i++) {
-			Trace.trace(Trace.LISTENERS, "  Firing runtime event to " + srl[i]);
-			try {
-				if (b == EVENT_ADDED)
-					srl[i].runtimeAdded(runtime);
-				else if (b == EVENT_CHANGED)
-					srl[i].runtimeChanged(runtime);
-				else
-					srl[i].runtimeRemoved(runtime);
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "  Error firing runtime event to " + srl[i], e);
-			}
-		}
-		Trace.trace(Trace.LISTENERS, "-<- Done firing runtime event -<-");
-	}
-
-	/**
-	 * Fire a server event.
-	 */
-	private void fireServerEvent(final IServer server, byte b) {
-		Trace.trace(Trace.LISTENERS, "->- Firing server event: " + server.getName() + " ->-");
-		
-		if (serverListeners == null || serverListeners.isEmpty())
-			return;
-	
-		int size = serverListeners.size();
-		IServerLifecycleListener[] srl = new IServerLifecycleListener[size];
-		serverListeners.toArray(srl);
-	
-		for (int i = 0; i < size; i++) {
-			Trace.trace(Trace.LISTENERS, "  Firing server event to " + srl[i]);
-			try {
-				if (b == EVENT_ADDED)
-					srl[i].serverAdded(server);
-				else if (b == EVENT_CHANGED)
-					srl[i].serverChanged(server);
-				else
-					srl[i].serverRemoved(server);
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "  Error firing server event to " + srl[i], e);
-			}
-		}
-		Trace.trace(Trace.LISTENERS, "-<- Done firing server event -<-");
-	}	
-
-	protected void saveRuntimesList() {
-		try {
-			ignorePreferenceChanges = true;
-			XMLMemento memento = XMLMemento.createWriteRoot("runtimes");
-			
-			if (defaultRuntime != null) {
-				int ind = runtimes.indexOf(defaultRuntime);
-				if (ind >= 0)
-					memento.putString("default", ind + "");
-			}
-
-			Iterator iterator = runtimes.iterator();
-			while (iterator.hasNext()) {
-				Runtime runtime = (Runtime) iterator.next();
-
-				IMemento child = memento.createChild("runtime");
-				runtime.save(child);
-			}
-
-			String xmlString = memento.saveToString();
-			Preferences prefs = ServerPlugin.getInstance().getPluginPreferences();
-			prefs.setValue("runtimes", xmlString);
-			ServerPlugin.getInstance().savePluginPreferences();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save runtimes", e);
-		}
-		ignorePreferenceChanges = false;
-	}
-	
-	protected void saveServersList() {
-		String filename = ServerPlugin.getInstance().getStateLocation().append(SERVER_DATA_FILE).toOSString();
-		
-		try {
-			XMLMemento memento = XMLMemento.createWriteRoot("servers");
-
-			Iterator iterator = servers.iterator();
-			while (iterator.hasNext()) {
-				Server server = (Server) iterator.next();
-
-				IMemento child = memento.createChild("server");
-				server.save(child);
-			}
-
-			memento.saveToFile(filename);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save servers", e);
-		}
-	}
-	
-	protected void loadRuntimesList() {
-		Trace.trace(Trace.FINEST, "Loading runtime info");
-		Preferences prefs = ServerPlugin.getInstance().getPluginPreferences();
-		String xmlString = prefs.getString("runtimes");
-		
-		runtimes = new ArrayList();
-		if (xmlString != null && xmlString.length() > 0) {
-			try {
-				ByteArrayInputStream in = new ByteArrayInputStream(xmlString.getBytes("UTF-8"));
-				IMemento memento = XMLMemento.loadMemento(in);
-		
-				IMemento[] children = memento.getChildren("runtime");
-				int size = children.length;
-				
-				for (int i = 0; i < size; i++) {
-					Runtime runtime = new Runtime(null);
-					runtime.loadFromMemento(children[i], null);
-					runtimes.add(runtime);
-				}
-				
-				String s = memento.getString("default");
-				try {
-					int ind = Integer.parseInt(s);
-					defaultRuntime = (IRuntime) runtimes.get(ind);
-				} catch (Exception ex) {
-					// ignore
-				}
-			} catch (Exception e) {
-				Trace.trace(Trace.WARNING, "Could not load runtimes: " + e.getMessage());
-			}
-		}
-	}
-	
-	protected void loadServersList() {
-		Trace.trace(Trace.FINEST, "Loading server info");
-		String filename = ServerPlugin.getInstance().getStateLocation().append(SERVER_DATA_FILE).toOSString();
-		
-		try {
-			IMemento memento = XMLMemento.loadMemento(filename);
-			
-			IMemento[] children = memento.getChildren("server");
-			int size = children.length;
-			
-			for (int i = 0; i < size; i++) {
-				Server server = new Server(null);
-				server.loadFromMemento(children[i], null);
-				servers.add(server);
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not load servers: " + e.getMessage());
-		}
-	}
-	
-	protected void addRuntime(IRuntime runtime) {
-		if (runtime == null)
-			return;
-		if (!runtimes.contains(runtime))
-			registerRuntime(runtime);
-		else
-			fireRuntimeEvent(runtime, EVENT_CHANGED);
-		saveRuntimesList();
-		resolveServers();
-		RuntimeWorkingCopy.rebuildRuntime(runtime, true);
-	}
-
-	protected void removeRuntime(IRuntime runtime) {
-		if (runtimes.contains(runtime)) {
-			deregisterRuntime(runtime);
-			saveRuntimesList();
-			resolveServers();
-			RuntimeWorkingCopy.rebuildRuntime(runtime, false);
-		}
-	}
-
-	protected void addServer(IServer server) {
-		if (!servers.contains(server))
-			registerServer(server);
-		else
-			fireServerEvent(server, EVENT_CHANGED);
-		saveServersList();
-		resolveServers();
-	}
-
-	protected void removeServer(IServer server) {
-		if (servers.contains(server)) {
-			deregisterServer(server);
-			saveServersList();
-			resolveServers();
-		}
-	}
-
-	/**
-	 * Returns an array of all runtimes.
-	 *
-	 * @return an array of runtimes
-	 */
-	public IRuntime[] getRuntimes() {
-		List list = new ArrayList(runtimes);
-		
-		/*int size = list.size();
-		for (int i = 0; i < size - 1; i++) {
-			for (int j = i + 1; j < size; j++) {
-				IRuntime a = (IRuntime) list.get(i);
-				IRuntime b = (IRuntime) list.get(j);
-				if (a.getRuntimeType() != null && b.getRuntimeType() != null &&
-						((RuntimeType)a.getRuntimeType()).getOrder() < ((RuntimeType)b.getRuntimeType()).getOrder()) {
-					Object temp = a;
-					list.set(i, b);
-					list.set(j, temp);
-				}
-			}
-		}*/
-		
-		if (defaultRuntime != null) {
-			list.remove(defaultRuntime);
-			list.add(0, defaultRuntime);
-		}
-		
-		IRuntime[] r = new IRuntime[list.size()];
-		list.toArray(r);
-		return r;
-	}
-
-	/**
-	 * Returns the runtime with the given id.
-	 * 
-	 * @param id a runtime id
-	 * @return IRuntime
-	 */
-	public IRuntime getRuntime(String id) {
-		if (id == null)
-			throw new IllegalArgumentException();
-
-		Iterator iterator = runtimes.iterator();
-		while (iterator.hasNext()) {
-			IRuntime runtime = (IRuntime) iterator.next();
-			if (runtime.getId().equals(id))
-				return runtime;
-		}
-		return null;
-	}
-	
-	/**
-	 * Returns the default runtime. Test API - do not use.
-	 *
-	 * @return java.util.List
-	 */
-	public IRuntime getDefaultRuntime() {
-		return defaultRuntime;
-	}
-	
-	/**
-	 * Sets the default runtime. Test API - do not use.
-	 * 
-	 * @param runtime a runtime
-	 */
-	public void setDefaultRuntime(IRuntime runtime) {
-		defaultRuntime = runtime;
-		saveRuntimesList();
-	}
-
-	protected void resolveServers() {
-		Iterator iterator = servers.iterator();
-		while (iterator.hasNext()) {
-			Server server = (Server) iterator.next();
-			server.resolve();
-		}
-	}
-
-	/**
-	 * Returns an array containing all servers.
-	 *
-	 * @return an array containing all servers
-	 */
-	public IServer[] getServers() {
-		IServer[] servers2 = new IServer[servers.size()];
-		servers.toArray(servers2);
-		
-		Arrays.sort(servers2, new Comparator() {
-			public int compare(Object o1, Object o2) {
-				IServer a = (IServer) o1;
-				IServer b = (IServer) o2;
-				return a.getName().compareToIgnoreCase(b.getName());
-			}
-		});
-		
-		return servers2;
-	}
-
-	/**
-	 * Returns the server with the given id.
-	 * 
-	 * @param id a server id
-	 * @return a server
-	 */
-	public IServer getServer(String id) {
-		if (id == null)
-			throw new IllegalArgumentException();
-	
-		Iterator iterator = servers.iterator();
-		while (iterator.hasNext()) {
-			Server server = (Server) iterator.next();
-			if (id.equals(server.getId()))
-				return server;
-		}
-		return null;
-	}
-
-	/**
-	 * Returns true if the resource change was handled.
-	 *
-	 * @param delta org.eclipse.core.resources.IResourceDelta
-	 * @return boolean
-	 */
-	protected boolean handleResourceDelta(IResourceDelta delta) {
-		int kind = delta.getKind();
-		IResource resource2 = delta.getResource();
-	
-		// ignore markers
-		if (kind == IResourceDelta.CHANGED && (delta.getFlags() & IResourceDelta.MARKERS) != 0)
-			return false;
-	
-		Trace.trace(Trace.RESOURCES, "Resource changed: " + resource2 + " " + kind);
-		
-		if (resource2 instanceof IFile) {
-			IFile file = (IFile) resource2;
-			IProgressMonitor monitor = null;
-			if (kind == IResourceDelta.ADDED) {
-				handleNewFile(file, monitor);
-			} else if (kind == IResourceDelta.REMOVED) {
-				handleRemovedFile(file);
-			} else
-				handleChangedFile(file, monitor);
-			if (monitor != null)
-				monitor.done();
-			return false;
-		}
-		IFolder folder = (IFolder) resource2;
-		Iterator iterator = servers.iterator();
-		while (iterator.hasNext()) {
-			IServer server = (IServer) iterator.next();
-			if (server.getServerType().hasServerConfiguration() && folder.equals(server.getServerConfiguration())
-					&& server.getAdapter(ServerDelegate.class) != null) {
-				try {
-					((Server)server).getDelegate(null).configurationChanged();
-				} catch (Exception e) {
-					Trace.trace(Trace.WARNING, "Server failed on configuration change");
-				}
-			}
-		}
-		return true;
-	
-		/*IProgressMonitor monitor = new NullProgressMonitor();
-		List list = getResourceParentList(resource2);
-		monitor.beginTask("", list.size() * 1000);
-	
-		Iterator iterator = list.iterator();
-		while (iterator.hasNext()) {
-			IResource resource = (IResource) iterator.next();
-			if (!visited.contains(resource.getFullPath())) {
-				visited.add(resource.getFullPath());
-				if (kind == IResourceDelta.REMOVED) {
-					boolean b = handleRemovedFile(resource);
-					if (b) {
-						if (resource instanceof IContainer)
-							removeServerResourcesBelow((IContainer) resource);
-						return false;
-					} else
-						return true;
-				} else if (kind == IResourceDelta.ADDED) {
-					return !handleNewServerResource(resource, monitor);
-				} else {
-					boolean b = handleChangedServerResource(resource, monitor);
-					if (!b) {
-						handleRemovedFile(resource);
-					}
-					return true;
-				}
-			}
-		}
-
-		monitor.done();
-		Trace.trace(Trace.RESOURCES, "Ignored resource change: " + resource2);
-		return true;*/
-	}
-	
-	protected IServer loadServer(IFile file, IProgressMonitor monitor) throws CoreException {
-		Server server = new Server(file);
-		server.loadFromFile(monitor);
-		return server;
-	}
-	
-	/**
-	 * Tries to load a new server resource from the given resource.
-	 * Returns true if the load and register were successful.
-	 *
-	 * @param file
-	 * @param monitor
-	 * @return boolean
-	 */
-	protected boolean handleNewFile(IFile file, IProgressMonitor monitor) {
-		Trace.trace(Trace.RESOURCES, "handleNewFile: " + file);
-		monitor = ProgressUtil.getMonitorFor(monitor);
-		monitor.beginTask("", 2000);
-		
-		// try loading a server
-		if (file.getFileExtension().equals(Server.FILE_EXTENSION)) {
-			try {
-				IServer server = loadServer(file, ProgressUtil.getSubMonitorFor(monitor, 1000));
-				if (server != null) {
-					registerServer(server);
-					monitor.done();
-					return true;
-				}
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "Error loading server", e);
-			}
-		}
-	
-		monitor.done();
-		return false;
-	}
-	
-	/**
-	 * Returns the server that came from the given file, or <code>null</code>
-	 * if none. This convenience method searches the list of known
-	 * servers ({@link #getServers()}) for the one with a matching
-	 * location ({@link Server#getFile()}). The file may not be null.
-	 *
-	 * @param file a server file
-	 * @return the server instance, or <code>null</code> if 
-	 *    there is no server associated with the given file
-	 */
-	public static IServer findServer(IFile file) {
-		if (file == null)
-			throw new IllegalArgumentException();
-		
-		IServer[] servers = ServerCore.getServers();
-		if (servers != null) {
-			int size = servers.length;
-			for (int i = 0; i < size; i++) {
-				if (file.equals(((Server)servers[i]).getFile()))
-					return servers[i];
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Tries to handle a resource change. Returns true if the reload
-	 * was successful.
-	 *
-	 * @param file a file
-	 * @param monitor
-	 * @return boolean
-	 */
-	protected boolean handleChangedFile(IFile file, IProgressMonitor monitor) {
-		Trace.trace(Trace.RESOURCES, "handleChangedFile: " + file);
-		monitor = ProgressUtil.getMonitorFor(monitor);
-		monitor.beginTask("", 1000);
-		boolean found = false;
-	
-		IServer server = findServer(file);
-		if (server != null) {
-			found = true;
-			try {
-				Trace.trace(Trace.RESOURCES, "Reloading server: " + server);
-				((Server) server).loadFromFile(monitor);
-				fireServerEvent(server, EVENT_CHANGED);
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "Error reloading server " + server.getName() + " from " + file + ": " + e.getMessage());
-				deregisterServer(server);
-			}
-		}
-
-		Trace.trace(Trace.RESOURCES, "No server resource found at: " + file);
-	
-		monitor.done();
-		return found;
-	}
-
-	/**
-	 * Tries to remove a current resource. Returns true if the
-	 * deregistering was successful.
-	 *
-	 * @param file a file
-	 * @return boolean
-	 */
-	protected boolean handleRemovedFile(IFile file) {
-		Trace.trace(Trace.RESOURCES, "handleRemovedServerResource: " + file);
-	
-		IServer server = findServer(file);
-		if (server != null) {
-			deregisterServer(server);
-			return true;
-		}
-
-		Trace.trace(Trace.RESOURCES, "No server resource found at: " + file);
-		return false;
-	}
-
-	/**
-	 * A project has changed. If this is an add or remove, check
-	 * to see if it is part of a current server configuration.
-	 *
-	 * @param delta org.eclipse.core.resources.IResourceDelta
-	 */
-	protected void publishHandleProjectChange(IResourceDelta delta) {
-		Trace.trace(Trace.FINEST, "> publishHandleProjectChange " + delta.getResource());
-		IProject project = (IProject) delta.getResource();
-		
-		if (project == null)
-			return;
-		
-		if (isDeltaOnlyMarkers(delta))
-			return;
-
-		final IModule[] modules = ServerUtil.getModules(project);
-		if (modules == null)
-			return;
-		
-		Trace.trace(Trace.FINEST, "- publishHandleProjectChange");
-
-		if (modules != null) {
-			int size2 = modules.length;
-			for (int j = 0; j < size2; j++) {
-				IServer[] servers2 = getServers();
-				if (servers2 != null) {
-					int size = servers2.length;
-					for (int i = 0; i < size; i++) {
-					if (servers2[i].getAdapter(ServerDelegate.class) != null)
-						((Server) servers2[i]).handleModuleProjectChange(modules[j]);
-					}
-				}
-			}
-		}
-		Trace.trace(Trace.FINEST, "< publishHandleProjectChange");
-	}
-	
-	protected boolean isDeltaOnlyMarkers(IResourceDelta delta) {
-		class Temp {
-			boolean b = true;
-		}
-		final Temp t = new Temp();
-		try {
-			delta.accept(new IResourceDeltaVisitor() {
-				public boolean visit(IResourceDelta delta2) throws CoreException {
-					if (!t.b)
-						return false;
-					int flags = delta2.getFlags();
-					if (flags != 0 && flags != IResourceDelta.MARKERS) {
-						t.b = false;
-						return false;
-					}
-					return true;
-				}
-			});
-		} catch (Exception e) {
-			// ignore
-		}
-		return t.b;
-	}
-
-	/**
-	 * Registers a new runtime.
-	 *
-	 * @param runtime org.eclipse.wst.server.core.IRuntime
-	 */
-	protected void registerRuntime(IRuntime runtime) {
-		if (runtime == null)
-			return;
-	
-		Trace.trace(Trace.RESOURCES, "Registering runtime: " + runtime.getName());
-	
-		runtimes.add(runtime);
-		fireRuntimeEvent(runtime, EVENT_ADDED);
-		
-		RuntimeType runtimeType = (RuntimeType) runtime.getRuntimeType();
-		String bundleId = runtimeType.getElement().getDeclaringExtension().getNamespace();
-		if (!activeBundles.contains(bundleId))
-			activeBundles.add(bundleId);
-	}
-
-	/**
-	 * Registers a new server.
-	 *
-	 * @param server org.eclipse.wst.server.core.IServer
-	 */
-	protected void registerServer(IServer server) {
-		if (server == null)
-			return;
-	
-		Trace.trace(Trace.RESOURCES, "Registering server: " + server.getName());
-	
-		servers.add(server);
-		fireServerEvent(server, EVENT_ADDED);
-		
-		ServerType serverType = (ServerType) server.getServerType();
-		String bundleId = serverType.getElement().getDeclaringExtension().getNamespace();
-		if (!activeBundles.contains(bundleId))
-			activeBundles.add(bundleId);
-	}
-
-	protected void fireModuleServerEvent(ModuleFactoryEvent[] factoryEvents, ModuleEvent[] events) {
-		// do nothing
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Runtime.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Runtime.java
deleted file mode 100644
index 6a5810d..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Runtime.java
+++ /dev/null
@@ -1,209 +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.internal;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.*;
-import org.eclipse.wst.server.core.*;
-import org.eclipse.wst.server.core.model.InternalInitializer;
-import org.eclipse.wst.server.core.model.RuntimeDelegate;
-/**
- * 
- */
-public class Runtime extends Base implements IRuntime {
-	protected static final String PROP_RUNTIME_TYPE_ID = "runtime-type-id";
-	protected static final String PROP_LOCATION = "location";
-	protected static final String PROP_TEST_ENVIRONMENT = "test-environment";
-	protected static final String PROP_STUB = "stub";
-
-	protected IRuntimeType runtimeType;
-	protected RuntimeDelegate delegate;
-
-	/**
-	 * Create a new runtime.
-	 * 
-	 * @param file
-	 */
-	public Runtime(IFile file) {
-		super(file);
-	}
-
-	/**
-	 * Create a new runtime.
-	 * 
-	 * @param file
-	 * @param id
-	 * @param runtimeType
-	 */
-	public Runtime(IFile file, String id, IRuntimeType runtimeType) {
-		super(file, id);
-		this.runtimeType = runtimeType;
-		map.put(PROP_NAME, runtimeType.getName());
-	}
-
-	/**
-	 * @see IRuntime#getRuntimeType()
-	 */
-	public IRuntimeType getRuntimeType() {
-		return runtimeType;
-	}
-
-	/**
-	 * @see IRuntime#validate(IProgressMonitor)
-	 */
-	public IStatus validate(IProgressMonitor monitor) {
-		try {
-			return getDelegate(monitor).validate();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate validate() " + toString(), e);
-			return null;
-		}
-	}
-
-	protected RuntimeDelegate getDelegate(IProgressMonitor monitor) {
-		if (delegate != null)
-			return delegate;
-		
-		synchronized (this) {
-			if (delegate == null) {
-				try {
-					long time = System.currentTimeMillis();
-					RuntimeType runtimeType2 = (RuntimeType) runtimeType;
-					delegate = (RuntimeDelegate) runtimeType2.getElement().createExecutableExtension("class");
-					InternalInitializer.initializeRuntimeDelegate(delegate, this);
-					//delegate.initialize(this);
-					Trace.trace(Trace.PERFORMANCE, "Runtime.getDelegate(): <" + (System.currentTimeMillis() - time) + "> " + getRuntimeType().getId());
-				} catch (Throwable t) {
-					Trace.trace(Trace.SEVERE, "Could not create delegate " + toString(), t);
-				}
-			}
-		}
-		return delegate;
-	}
-
-	public void dispose() {
-		if (delegate != null) {
-			delegate.dispose();
-			delegate = null;
-		}
-	}
-
-	/**
-	 * @see IRuntime#createWorkingCopy()
-	 */
-	public IRuntimeWorkingCopy createWorkingCopy() {
-		return new RuntimeWorkingCopy(this); 
-	}
-
-	/**
-	 * @see IRuntime#isWorkingCopy()
-	 */
-	public boolean isWorkingCopy() {
-		return false;
-	}
-
-	/**
-	 * @see IRuntime#getLocation()
-	 */
-	public IPath getLocation() {
-		String temp = getAttribute(PROP_LOCATION, (String)null);
-		if (temp == null)
-			return null;
-		return new Path(temp);
-	}
-	
-	protected void deleteFromMetadata() {
-		ResourceManager.getInstance().removeRuntime(this);
-	}
-
-	protected void saveToMetadata(IProgressMonitor monitor) {
-		super.saveToMetadata(monitor);
-		ResourceManager.getInstance().addRuntime(this);
-	}
-
-	protected String getXMLRoot() {
-		return "runtime";
-	}
-
-	public boolean isTestEnvironment() {
-		return getAttribute(PROP_TEST_ENVIRONMENT, false);
-	}
-
-	/**
-	 * @see IRuntime#isStub()
-	 */
-	public boolean isStub() {
-		return getAttribute(PROP_STUB, false);
-	}
-
-	protected void setInternal(RuntimeWorkingCopy wc) {
-		map = wc.map;
-		runtimeType = wc.runtimeType;
-		file = wc.file;
-		delegate = wc.delegate;
-		
-		int timestamp = wc.getTimestamp();
-		map.put("timestamp", Integer.toString(timestamp+1));
-	}
-
-	protected void loadState(IMemento memento) {
-		String runtimeTypeId = memento.getString(PROP_RUNTIME_TYPE_ID);
-		if (runtimeTypeId != null)
-			runtimeType = ServerCore.findRuntimeType(runtimeTypeId);
-		else
-			runtimeType = null;
-	}
-
-	protected void saveState(IMemento memento) {
-		if (runtimeType != null)
-			memento.putString(PROP_RUNTIME_TYPE_ID, runtimeType.getId());
-	}
-
-	/**
-	 * @see Object#equals(Object)
-	 */
-	public boolean equals(Object obj) {
-		if (!(obj instanceof Runtime))
-			return false;
-		
-		Runtime runtime = (Runtime) obj;
-		return runtime.getId().equals(getId());
-	}
-
-	/**
-	 * @see IRuntime#getAdapter(Class)
-	 */
-	public Object getAdapter(Class adapter) {
-		if (delegate != null) {
-			if (adapter.isInstance(delegate))
-				return delegate;
-		}
-		return Platform.getAdapterManager().getAdapter(this, adapter);
-	}
-
-	/**
-	 * @see IRuntime#loadAdapter(Class, IProgressMonitor)
-	 */
-	public Object loadAdapter(Class adapter, IProgressMonitor monitor) {
-		getDelegate(monitor);
-		if (adapter.isInstance(delegate))
-			return delegate;
-	
-		return Platform.getAdapterManager().loadAdapter(this, adapter.getName());
-	}
-
-	/**
-	 * @see Object#toString()
-	 */
-	public String toString() {
-		return "Runtime[" + getId() + ", " + getName() + ", " + getLocation() + ", " + getRuntimeType() + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/RuntimeLocator.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/RuntimeLocator.java
deleted file mode 100644
index 0f83e78..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/RuntimeLocator.java
+++ /dev/null
@@ -1,89 +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.internal;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.server.core.IRuntimeWorkingCopy;
-import org.eclipse.wst.server.core.model.RuntimeLocatorDelegate;
-/**
- * 
- */
-public class RuntimeLocator implements IRuntimeLocator {
-	private IConfigurationElement element;
-	private RuntimeLocatorDelegate delegate;
-
-	public RuntimeLocator(IConfigurationElement element) {
-		super();
-		this.element = element;
-	}
-	
-	protected IConfigurationElement getElement() {
-		return element;
-	}
-
-	/*
-	 * @see IRuntimeLocator#getId()
-	 */
-	public String getId() {
-		return element.getAttribute("id");
-	}
-
-	/*
-	 * @see IRuntimeLocator
-	 */
-	protected String[] getTypeIds() {
-		try {
-			return ServerPlugin.tokenize(element.getAttribute("typeIds"), ",");
-		} catch (Exception e) {
-			return null;
-		}
-	}
-
-	/*
-	 * @see IRuntimeLocator
-	 */
-	public boolean supportsType(String id) {
-		return ServerPlugin.supportsType(getTypeIds(), id);
-	}
-
-	protected RuntimeLocatorDelegate getDelegate() {
-		if (delegate == null) {
-			try {
-				delegate = (RuntimeLocatorDelegate) element.createExecutableExtension("class");
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "Could not create delegate " + toString() + ": " + t.getMessage());
-			}
-		}
-		return delegate;
-	}
-
-	/*
-	 * @see IRuntimeLocator#searchForRuntimes()
-	 */
-	public void searchForRuntimes(IPath path, final IRuntimeSearchListener found, IProgressMonitor monitor) {
-		try {
-			//getDelegate().searchForRuntimes(path, found, monitor);
-			getDelegate().searchForRuntimes(path, new RuntimeLocatorDelegate.IRuntimeSearchListener() {
-				public void runtimeFound(IRuntimeWorkingCopy runtime) {
-					found.runtimeFound(runtime);
-				}
-			}, monitor);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate " + toString() + ": " + e.getMessage());
-		}
-	}
-
-	public String toString() {
-		return "RuntimeLocator[" + getId() + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/RuntimeTargetHandler.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/RuntimeTargetHandler.java
deleted file mode 100644
index 1b88c4c..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/RuntimeTargetHandler.java
+++ /dev/null
@@ -1,178 +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.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.server.core.*;
-import org.eclipse.wst.server.core.model.RuntimeTargetHandlerDelegate;
-/**
- * 
- */
-public class RuntimeTargetHandler implements IRuntimeTargetHandler, IOrdered {
-	private IConfigurationElement element;
-	private RuntimeTargetHandlerDelegate delegate;
-
-	/**
-	 * Create a new runtime target handler.
-	 * 
-	 * @param element a configuration element
-	 */
-	public RuntimeTargetHandler(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;
-	}
-
-	/*
-	 * @see IPublishManager#getDelegate()
-	 */
-	public RuntimeTargetHandlerDelegate getDelegate() {
-		if (delegate == null) {
-			try {
-				delegate = (RuntimeTargetHandlerDelegate) element.createExecutableExtension("class");
-				delegate.initialize(this);
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "Could not create delegate " + toString() + ": " + t.getMessage());
-			}
-		}
-		return delegate;
-	}
-
-	/**
-	 * Set the runtime target on the given project.
-	 * 
-	 * @param project the project to set the runtime on
-	 * @param runtime the target runtime
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 */
-	public void setRuntimeTarget(IProject project, IRuntime runtime, IProgressMonitor monitor) {
-		if (project == null || runtime == null)
-			return;
-		try {
-			getDelegate().setRuntimeTarget(project, runtime, monitor);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate " + toString() + ": " + e.getMessage());
-		}
-	}
-	
-	/**
-	 * Remove the runtime target from the given project. This method will undo
-	 * all changes made in setRuntimeTarget().
-	 * 
-	 * @param project the project to remove the runtime from
-	 * @param runtime the target runtime
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 */
-	public void removeRuntimeTarget(IProject project, IRuntime runtime, IProgressMonitor monitor) {
-		if (project == null || runtime == null)
-			return;
-		try {
-			getDelegate().removeRuntimeTarget(project, runtime, monitor);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate " + toString() + ": " + e.getMessage());
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
-	 */
-	public Object getAdapter(Class adapter) {
-		RuntimeTargetHandlerDelegate delegate2 = getDelegate();
-		if (adapter.isInstance(delegate2))
-			return delegate;
-		return null;
-	}
-
-	public String toString() {
-		return "RuntimeTargetHandler[" + getId() + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/RuntimeType.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/RuntimeType.java
deleted file mode 100644
index 77a9b6d..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/RuntimeType.java
+++ /dev/null
@@ -1,100 +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.internal;
-
-import java.util.List;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.server.core.*;
-/**
- * 
- */
-public class RuntimeType implements IRuntimeType {
-	private IConfigurationElement element;
-	private List moduleTypes;
-
-	public RuntimeType(IConfigurationElement element) {
-		super();
-		this.element = element;
-	}
-	
-	protected IConfigurationElement getElement() {
-		return element;
-	}
-
-	/**
-	 * 
-	 * @return the id
-	 */
-	public String getId() {
-		return element.getAttribute("id");
-	}
-
-	/**
-	 * 
-	 * @return the name
-	 */
-	public String getName() {
-		return element.getAttribute("name");
-	}
-
-	/**
-	 * 
-	 * @return the description
-	 */
-	public String getDescription() {
-		return element.getAttribute("description");
-	}
-	
-	public String getVendor() {
-		String vendor = element.getAttribute("vendor");
-		if (vendor == null)
-			return Messages.defaultVendor;
-		return vendor;
-	}
-	
-	public String getVersion() {
-		String version = element.getAttribute("version");
-		if (version == null)
-			return Messages.defaultVersion;
-		return version;
-	}
-	
-	/**
-	 * Return the supported module types.
-	 * 
-	 * @return an array of module types
-	 */
-	public IModuleType[] getModuleTypes() {
-		if (moduleTypes == null)
-			moduleTypes = ServerPlugin.getModuleTypes(element.getChildren("moduleType"));
-
-		IModuleType[] mt = new IModuleType[moduleTypes.size()];
-		moduleTypes.toArray(mt);
-		return mt;
-	}
-	
-	public boolean canCreate() {
-		String a = element.getAttribute("class");
-		return a != null && a.length() > 0;
-	}
-
-	public IRuntimeWorkingCopy createRuntime(String id, IProgressMonitor monitor) {
-		RuntimeWorkingCopy rwc = new RuntimeWorkingCopy(null, id, this);
-		rwc.setDefaults(monitor);
-		return rwc;
-	}
-
-	public String toString() {
-		return "RuntimeType[" + getId() + ", " + getName() + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/RuntimeWorkingCopy.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/RuntimeWorkingCopy.java
deleted file mode 100644
index 3f7c441..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/RuntimeWorkingCopy.java
+++ /dev/null
@@ -1,361 +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.internal;
-
-import java.beans.PropertyChangeListener;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.*;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.server.core.*;
-import org.eclipse.wst.server.core.model.InternalInitializer;
-import org.eclipse.wst.server.core.model.RuntimeDelegate;
-/**
- * 
- */
-public class RuntimeWorkingCopy extends Runtime implements IRuntimeWorkingCopy {
-	protected String PROP_ID_SET = "id-set";
-	protected Runtime runtime;
-	protected WorkingCopyHelper wch;
-	
-	protected RuntimeDelegate workingCopyDelegate;
-
-	/**
-	 * Create a new runtime working copy from existing runtime.
-	 * 
-	 * @param runtime
-	 */
-	public RuntimeWorkingCopy(Runtime runtime) {
-		super(runtime.getFile());
-		this.runtime = runtime;
-		
-		runtimeType = runtime.getRuntimeType();
-		
-		map = new HashMap(runtime.map);
-		wch = new WorkingCopyHelper(this);
-	}
-	
-	/**
-	 * Create a new runtime working copy for a new runtime.
-	 * 
-	 * @param file
-	 * @param id
-	 * @param runtimeType
-	 */
-	public RuntimeWorkingCopy(IFile file, String id, IRuntimeType runtimeType) {
-		super(file, id, runtimeType);
-		wch = new WorkingCopyHelper(this);
-		wch.setDirty(true);
-		
-		if (id == null || id.length() == 0) {
-			id = ServerPlugin.generateId();
-			map.put(PROP_ID, id);
-		} else
-			setAttribute(PROP_ID_SET, true);
-		
-		// throw CoreException if the id already exists
-	}
-
-	/**
-	 * @see IRuntime#isWorkingCopy()
-	 */
-	public boolean isWorkingCopy() {
-		return true;
-	}
-
-	/**
-	 * @see IRuntime#createWorkingCopy()
-	 */
-	public IRuntimeWorkingCopy createWorkingCopy() {
-		return this;
-	}
-
-	public void setAttribute(String attributeName, int value) {
-		wch.setAttribute(attributeName, value);
-	}
-
-	public void setAttribute(String attributeName, boolean value) {
-		wch.setAttribute(attributeName, value);
-	}
-	
-	public void setAttribute(String attributeName, String value) {
-		wch.setAttribute(attributeName, value);
-	}
-
-	public void setAttribute(String attributeName, List value) {
-		wch.setAttribute(attributeName, value);
-	}
-
-	public void setAttribute(String attributeName, Map value) {
-		wch.setAttribute(attributeName, value);
-	}
-
-	/**
-	 * @see IRuntimeWorkingCopy#setName(String)
-	 */
-	public void setName(String name) {
-		wch.setName(name);
-		boolean set = getAttribute(PROP_ID_SET, false);
-		if (runtime == null && !set)
-			setAttribute("id", name);
-	}
-
-	public void setTestEnvironment(boolean b) {
-		setAttribute(PROP_TEST_ENVIRONMENT, b);
-	}
-	
-	/**
-	 * @see IRuntimeWorkingCopy#setStub(boolean)
-	 */
-	public void setStub(boolean b) {
-		setAttribute(PROP_STUB, b);
-	}
-
-	/**
-	 * @see IRuntimeWorkingCopy#isDirty()
-	 */
-	public boolean isDirty() {
-		return wch.isDirty();
-	}
-	
-	/**
-	 * @see IRuntimeWorkingCopy#getOriginal()
-	 */
-	public IRuntime getOriginal() {
-		return runtime;
-	}
-
-	/**
-	 * @see IRuntimeWorkingCopy#setReadOnly(boolean)
-	 */
-	public void setReadOnly(boolean b) {
-		wch.setLocked(b);
-	}
-
-	public void setPrivate(boolean b) {
-		wch.setPrivate(b);
-	}
-
-	/**
-	 * @see IRuntimeWorkingCopy#setLocation(IPath)
-	 */
-	public void setLocation(IPath path) {
-		if (path == null)
-			setAttribute(PROP_LOCATION, (String)null);
-		else
-			setAttribute(PROP_LOCATION, path.toString());
-	}
-
-	/**
-	 * @see IRuntimeWorkingCopy#save(boolean, IProgressMonitor)
-	 */
-	public IRuntime save(boolean force, IProgressMonitor monitor) throws CoreException {
-		monitor = ProgressUtil.getMonitorFor(monitor);
-		monitor.subTask(NLS.bind(Messages.savingTask, getName()));
-		
-		if (!force && getOriginal() != null)
-			wch.validateTimestamp(((Runtime) getOriginal()).getTimestamp());
-		
-		IRuntime origRuntime = runtime;
-		if (runtime == null)
-			runtime = new Runtime(file);
-		
-		String oldId = getId();
-		String name = getName();
-		boolean set = getAttribute(PROP_ID_SET, false);
-		if (!oldId.equals(name) && !set) {
-			setAttribute("id", name);
-		} else
-			oldId = null;
-		
-		runtime.setInternal(this);
-		runtime.saveToMetadata(monitor);
-		wch.setDirty(false);
-		
-		if (oldId != null)
-			updateRuntimeReferences(oldId, name, origRuntime);
-		
-		return runtime;
-	}
-
-	protected void updateRuntimeReferences(final String oldId, final String newId, final IRuntime origRuntime) {
-		class UpdateRuntimeReferencesJob extends Job {
-			/**
-			 * A job that updates runtime references when a runtime changes.
-			 */
-			public UpdateRuntimeReferencesJob() {
-				super(NLS.bind(Messages.savingTask, newId));
-			}
-
-			public IStatus run(IProgressMonitor monitor) {
-				// fix .runtime files
-				IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
-				if (projects != null) {
-					int size = projects.length;
-					for (int i = 0; i < size; i++) {
-						ProjectProperties props = (ProjectProperties) ServerCore.getProjectProperties(projects[i]);
-						if (oldId.equals(props.getRuntimeTargetId())) {
-							try {
-								props.setRuntimeTargetId(newId, monitor);
-							} catch (Exception e) {
-								Trace.trace(Trace.SEVERE, "Error setting runtime target", e);
-							}
-						}
-					}
-				}
-				
-				// save servers
-				if (runtime != null) {
-					ResourceManager rm = ResourceManager.getInstance();
-					IServer[] servers = rm.getServers();
-					if (servers != null) {
-						int size = servers.length;
-						for (int i = 0; i < size; i++) {
-							if (oldId.equals(((Server)servers[i]).getRuntimeId())) {
-								try {
-									ServerWorkingCopy wc = (ServerWorkingCopy) servers[i].createWorkingCopy();
-									wc.setRuntimeId(newId);
-									wc.save(false, monitor);
-								} catch (Exception e) {
-									// ignore
-								}
-							}
-						}
-					}
-				}
-				
-				return new Status(IStatus.OK, ServerPlugin.PLUGIN_ID, 0, "", null);
-			}
-		}
-		UpdateRuntimeReferencesJob job = new UpdateRuntimeReferencesJob();
-		job.schedule();
-	}
-	
-	/**
-	 * Rebuild any projects that are targetted to this runtime.
-	 * 
-	 * @param runtime
-	 * @param add
-	 */
-	protected static void rebuildRuntime(final IRuntime runtime, final boolean add) {
-		if (runtime == null)
-			return;
-
-		class RebuildRuntimeReferencesJob extends Job {
-			/**
-			 * A job that rebuilds projects when a runtime changes.
-			 */
-			public RebuildRuntimeReferencesJob() {
-				super(Messages.taskPerforming);
-			}
-
-			public IStatus run(IProgressMonitor monitor) {
-				String id = runtime.getId();
-				
-				IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
-				if (projects != null) {
-					int size = projects.length;
-					for (int i = 0; i < size; i++) {
-						ProjectProperties props = (ProjectProperties) ServerCore.getProjectProperties(projects[i]);
-						if (id.equals(props.getRuntimeTargetId())) {
-							try {
-								if (add)
-									props.setRuntimeTarget(null, runtime, false, monitor);
-								else
-									props.setRuntimeTarget(runtime, null, false, monitor);
-								projects[i].build(IncrementalProjectBuilder.FULL_BUILD, monitor);
-							} catch (Exception e) {
-								Trace.trace(Trace.SEVERE, "Error setting runtime target", e);
-							}
-						}
-					}
-				}
-				
-				return new Status(IStatus.OK, ServerPlugin.PLUGIN_ID, 0, "", null);
-			}
-		}
-		RebuildRuntimeReferencesJob job = new RebuildRuntimeReferencesJob();
-		job.schedule();
-	}
-
-	protected RuntimeDelegate getWorkingCopyDelegate(IProgressMonitor monitor) {
-		if (workingCopyDelegate != null)
-			return workingCopyDelegate;
-		
-		synchronized (this) {
-			if (workingCopyDelegate == null) {
-				try {
-					long time = System.currentTimeMillis();
-					RuntimeType runtimeType2 = (RuntimeType) runtimeType;
-					workingCopyDelegate = (RuntimeDelegate) runtimeType2.getElement().createExecutableExtension("class");
-					//workingCopyDelegate.initialize(this);
-					InternalInitializer.initializeRuntimeDelegate(workingCopyDelegate, this);
-					Trace.trace(Trace.PERFORMANCE, "RuntimeWorkingCopy.getWorkingCopyDelegate(): <" + (System.currentTimeMillis() - time) + "> " + getRuntimeType().getId());
-				} catch (Exception e) {
-					Trace.trace(Trace.SEVERE, "Could not create delegate " + toString(), e);
-				}
-			}
-		}
-		return workingCopyDelegate;
-	}
-
-	public void dispose() {
-		super.dispose();
-		if (workingCopyDelegate != null)
-			workingCopyDelegate.dispose();
-	}
-
-	/**
-	 * Add a property change listener to this server.
-	 *
-	 * @param listener java.beans.PropertyChangeListener
-	 */
-	public void addPropertyChangeListener(PropertyChangeListener listener) {
-		wch.addPropertyChangeListener(listener);
-	}
-	
-	/**
-	 * Remove a property change listener from this server.
-	 *
-	 * @param listener java.beans.PropertyChangeListener
-	 */
-	public void removePropertyChangeListener(PropertyChangeListener listener) {
-		wch.removePropertyChangeListener(listener);
-	}
-	
-	/**
-	 * Fire a property change event.
-	 * 
-	 * @param propertyName a property name
-	 * @param oldValue the old value
-	 * @param newValue the new value
-	 */
-	public void firePropertyChangeEvent(String propertyName, Object oldValue, Object newValue) {
-		wch.firePropertyChangeEvent(propertyName, oldValue, newValue);
-	}
-	
-	/**
-	 * Set the defaults.
-	 * 
-	 * @param monitor
-	 */
-	protected void setDefaults(IProgressMonitor monitor) {
-		try {
-			getWorkingCopyDelegate(monitor).setDefaults();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate setDefaults() " + toString(), e);
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Server.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Server.java
deleted file mode 100644
index 5ce3fbd..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Server.java
+++ /dev/null
@@ -1,1931 +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.internal;
-
-import java.util.*;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.*;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.*;
-
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.server.core.*;
-import org.eclipse.wst.server.core.model.*;
-import org.eclipse.wst.server.core.util.SocketUtil;
-/**
- * 
- */
-public class Server extends Base implements IServer {
-	/**
-	 * Server id attribute (value "server-id") of launch configurations.
-	 * This attribute is used to tag a launch configuration with the
-	 * id of the corresponding server.
-	 * 
-	 * @see ILaunchConfiguration
-	 */
-	public static final String ATTR_SERVER_ID = "server-id";
-
-	protected static final List EMPTY_LIST = new ArrayList(0);
-	
-	/**
-	 * File extension (value "server") for serialized representation of
-	 * server instances.
-	 * <p>
-	 * [issue: What is relationship between this file extension and
-	 * the file passed to IServerType.create(...) or returned by
-	 * IServer.getFile()? That is, are server files expected to end
-	 * in ".server", or is this just a default? If the former
-	 * (as I suspect), then IServerType.create needs to say so,
-	 * and the implementation should enforce the restriction.]
-	 * </p>
-	 */
-	public static final String FILE_EXTENSION = "server";
-	
-	protected static final String PROP_HOSTNAME = "hostname";
-	protected static final String SERVER_ID = "server-id";
-	protected static final String RUNTIME_ID = "runtime-id";
-	protected static final String CONFIGURATION_ID = "configuration-id";
-	protected static final String MODULE_LIST = "modules";
-	protected static final String PROP_AUTO_PUBLISH_TIME = "auto-publish-time";
-	protected static final String PROP_AUTO_PUBLISH_DEFAULT = "auto-publish-default";
-
-	protected static final char[] INVALID_CHARS = new char[] {'\\', '/', ':', '*', '?', '"', '<', '>', '|', '\0', '@', '&'};
-
-	protected IServerType serverType;
-	protected ServerDelegate delegate;
-	protected ServerBehaviourDelegate behaviourDelegate;
-
-	protected IRuntime runtime;
-	protected IFolder configuration;
-	
-	// the list of modules that are to be published to the server
-	protected List modules;
-	
-	// transient fields
-	protected transient String mode = ILaunchManager.RUN_MODE;
-	protected transient int serverState = STATE_UNKNOWN;
-	protected transient int serverSyncState;
-	protected transient boolean serverRestartNeeded;
-
-	protected transient Map moduleState = new HashMap();
-	protected transient Map modulePublishState = new HashMap();
-	protected transient Map moduleRestartState = new HashMap();
-	
-	protected transient IStatus serverStatus;
-	protected transient Map moduleStatus = new HashMap();
-
-	protected transient ServerPublishInfo publishInfo;
-	protected transient AutoPublishThread autoPublishThread;
-
-/*	private static final String[] stateStrings = new String[] {
-		"unknown", "starting", "started", "started_debug",
-		"stopping", "stopped", "started_unsupported", "started_profile"
-	};*/
-	
-	// publish listeners
-	protected transient List publishListeners;
-	
-	// Server listeners
-	protected transient ServerNotificationManager notificationManager;
-	
-	public class AutoPublishThread extends Thread {
-		public boolean stop;
-		public int time = 0; 
-		
-		public void run() {
-			Trace.trace(Trace.FINEST, "Auto-publish thread starting for " + Server.this + " - " + time + "s");
-			if (stop)
-				return;
-			
-			try {
-				sleep(time * 1000);
-			} catch (Exception e) {
-				// ignore
-			}
-			
-			if (stop)
-				return;
-			
-			Trace.trace(Trace.FINEST, "Auto-publish thread publishing " + Server.this);
-
-			PublishServerJob publishJob = new PublishServerJob(Server.this, IServer.PUBLISH_AUTO, false);
-			publishJob.schedule();
-		}
-	}
-
-	// working copy, loaded resource
-	public Server(IFile file) {
-		super(file);
-		map.put(PROP_HOSTNAME, "localhost");
-	}
-
-	// creation (working copy)
-	public Server(String id, IFile file, IRuntime runtime, IServerType serverType) {
-		super(file, id);
-		this.runtime = runtime;
-		this.serverType = serverType;
-		map.put("server-type-id", serverType.getId());
-		map.put(PROP_HOSTNAME, "localhost");
-		if (runtime != null && runtime.getRuntimeType() != null) {
-			String name = runtime.getRuntimeType().getName();
-			map.put(PROP_NAME, name);
-		}
-		serverState = ((ServerType)serverType).getInitialState();
-	}
-	
-	public IServerType getServerType() {
-		return serverType;
-	}
-	
-	public IServerWorkingCopy createWorkingCopy() {
-		return new ServerWorkingCopy(this); 
-	}
-
-	public boolean isWorkingCopy() {
-		return false;
-	}
-	
-	protected void deleteFromMetadata() {
-		ResourceManager.getInstance().removeServer(this);
-	}
-	
-	protected void saveToMetadata(IProgressMonitor monitor) {
-		super.saveToMetadata(monitor);
-		ResourceManager.getInstance().addServer(this);
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.wtp.server.core.IServer2#getRuntime()
-	 */
-	public IRuntime getRuntime() {
-		return runtime;
-	}
-
-	protected String getRuntimeId() {
-		return getAttribute(RUNTIME_ID, (String) null);
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.wtp.server.core.IServer2#getServerConfiguration()
-	 */
-	public IFolder getServerConfiguration() {
-		return configuration;
-	}
-
-	protected ServerDelegate getDelegate(IProgressMonitor monitor) {
-		if (delegate != null)
-			return delegate;
-		
-		if (serverType != null) {
-			synchronized (this) {
-				if (delegate == null) {
-					Job job = new Job("Load delegate") {
-						protected IStatus run(IProgressMonitor monitor2) {
-							try {
-								long time = System.currentTimeMillis();
-								IConfigurationElement element = ((ServerType) serverType).getElement();
-								delegate = (ServerDelegate) element.createExecutableExtension("class");
-								InternalInitializer.initializeServerDelegate(delegate, Server.this);
-								Trace.trace(Trace.PERFORMANCE, "Server.getDelegate(): <" + (System.currentTimeMillis() - time) + "> " + getServerType().getId());
-							} catch (Throwable t) {
-								Trace.trace(Trace.SEVERE, "Could not create delegate " + toString(), t);
-							}
-							return new Status(IStatus.OK, ServerPlugin.PLUGIN_ID, 0, "", null);
-						}
-					};
-					job.schedule();
-					try {
-						job.join();
-					} catch (Exception e) {
-						// ignore
-					}
-				}
-			}
-		}
-		return delegate;
-	}
-
-	protected ServerBehaviourDelegate getBehaviourDelegate(IProgressMonitor monitor) {
-		if (behaviourDelegate != null)
-			return behaviourDelegate;
-		
-		if (serverType != null) {
-			synchronized (this) {
-				if (behaviourDelegate == null) {
-					Job job = new Job("Load delegate") {
-						protected IStatus run(IProgressMonitor monitor2) {
-							try {
-								long time = System.currentTimeMillis();
-								IConfigurationElement element = ((ServerType) serverType).getElement();
-								behaviourDelegate = (ServerBehaviourDelegate) element.createExecutableExtension("behaviourClass");
-								//behaviourDelegate.initialize(Server.this);
-								InternalInitializer.initializeServerBehaviourDelegate(behaviourDelegate, Server.this);
-								Trace.trace(Trace.PERFORMANCE, "Server.getBehaviourDelegate(): <" + (System.currentTimeMillis() - time) + "> " + getServerType().getId());
-							} catch (Throwable t) {
-								Trace.trace(Trace.SEVERE, "Could not create behaviour delegate " + toString(), t);
-							}
-							return new Status(IStatus.OK, ServerPlugin.PLUGIN_ID, 0, "", null);
-						}
-					};
-					job.schedule();
-					try {
-						job.join();
-					} catch (Exception e) {
-						// ignore
-					}
-				}
-			}
-		}
-		return behaviourDelegate;
-	}
-
-	public void dispose() {
-		if (delegate != null) {
-			delegate.dispose();
-			delegate = null;
-		}
-		if (behaviourDelegate != null) {
-			behaviourDelegate.dispose();
-			behaviourDelegate = null;
-		}
-	}
-
-	public String getHost() {
-		return getAttribute(PROP_HOSTNAME, "localhost");
-	}
-
-	public int getAutoPublishTime() {
-		return getAttribute(PROP_AUTO_PUBLISH_TIME, -1);
-	}
-	
-	public boolean getAutoPublishDefault() {
-		return getAttribute(PROP_AUTO_PUBLISH_DEFAULT, true);
-	}
-
-	/**
-	 * Returns the current state of the server. (see SERVER_XXX constants)
-	 *
-	 * @return int
-	 */
-	public int getServerState() {
-		return serverState;
-	}
-	
-	public String getMode() {
-		return mode;
-	}
-
-	public void setServerState(int state) {
-		if (state == serverState)
-			return;
-
-		this.serverState = state;
-		fireServerStateChangeEvent();
-	}
-	
-	/**
-	 * Add a listener to this server.
-	 *
-	 * @param listener org.eclipse.wst.server.model.IServerListener
-	 */
-	public void addServerListener(IServerListener listener) {
-		Trace.trace(Trace.LISTENERS, "Adding server listener " + listener + " to " + this);
-		getServerNotificationManager().addListener(listener);
-	}
-	
-	/**
-	 * Add a listener to this server with the given event mask.
-	 *
-	 * @param listener org.eclipse.wst.server.model.IServerListener
-	 * @param eventMask to limit listening to certain types of events
-	 */
-	public void addServerListener(IServerListener listener, int eventMask) {
-		Trace.trace(Trace.LISTENERS, "Adding server listener " + listener + " to " + this + " with eventMask " + eventMask);
-		getServerNotificationManager().addListener(listener, eventMask);
-	}
-
-	/**
-	 * Remove a listener from this server.
-	 *
-	 * @param listener org.eclipse.wst.server.model.IServerListener
-	 */
-	public void removeServerListener(IServerListener listener) {
-		Trace.trace(Trace.LISTENERS, "Removing server listener " + listener + " from " + this);
-		getServerNotificationManager().removeListener(listener);
-	}
-	
-	/**
-	 * Fire a server listener restart state change event.
-	 */
-	protected void fireRestartStateChangeEvent() {
-		Trace.trace(Trace.LISTENERS, "->- Firing server restart change event: " + getName() + " ->-");
-	
-		if (notificationManager == null || notificationManager.hasListenerEntries())
-			return;
-	
-		notificationManager.broadcastChange(
-			new ServerEvent(ServerEvent.SERVER_CHANGE | ServerEvent.RESTART_STATE_CHANGE, this, getServerState(), 
-				getServerPublishState(), getServerRestartState()));
-	}
-	
-	/**
-	 * Fire a server listener state change event.
-	 */
-	protected void fireServerStateChangeEvent() {
-		Trace.trace(Trace.LISTENERS, "->- Firing server state change event: " + getName() + ", " + getServerState() + " ->-");
-	
-		if (notificationManager == null || notificationManager.hasListenerEntries())
-			return;
-	
-		notificationManager.broadcastChange(
-			new ServerEvent(ServerEvent.SERVER_CHANGE | ServerEvent.STATE_CHANGE, this, getServerState(), 
-				getServerPublishState(), getServerRestartState()));
-	}
-
-	/**
-	 * Fire a server listener module state change event.
-	 */
-	protected void fireServerModuleStateChangeEvent(IModule[] module) {
-		Trace.trace(Trace.LISTENERS, "->- Firing server module state change event: " + getName() + ", " + getServerState() + " ->-");
-		
-		if (notificationManager == null || notificationManager.hasListenerEntries())
-			return;
-	
-		notificationManager.broadcastChange(
-			new ServerEvent(ServerEvent.MODULE_CHANGE | ServerEvent.STATE_CHANGE, this, module, getModuleState(module), 
-				getModulePublishState(module), getModuleRestartState(module)));
-	}
-
-	public void setMode(String m) {
-		this.mode = m;
-	}
-
-	public void setModuleState(IModule[] module, int state) {
-		Integer in = new Integer(state);
-		moduleState.put(getKey(module), in);
-		fireServerModuleStateChangeEvent(module);
-	}
-	
-	public void setModulePublishState(IModule[] module, int state) {
-		Integer in = new Integer(state);
-		modulePublishState.put(getKey(module), in);
-		//fireServerModuleStateChangeEvent(module);
-	}
-
-	public void setModuleRestartState(IModule[] module, boolean r) {
-		Boolean b = new Boolean(r);
-		moduleState.put(getKey(module), b);
-		//fireServerModuleStateChangeEvent(module);
-	}
-
-	protected void handleModuleProjectChange(final IModule module) {
-		Trace.trace(Trace.FINEST, "> handleDeployableProjectChange() " + this + " " + module);
-		
-		class Helper {
-			boolean changed;
-		}
-		final Helper helper = new Helper();
-		
-		IModuleVisitor visitor = new IModuleVisitor() {
-			public boolean visit(IModule[] module2) {
-				int size = module2.length;
-				IModule m = module2[size - 1];
-				if (m.getProject() == null)
-					return true;
-				
-				if (module.equals(m)) {
-					IModuleResourceDelta[] delta2 = getPublishedResourceDelta(module2);
-					if (delta2.length > 0)
-						helper.changed = true;
-					
-					// TODO
-					/*if (deployableDelta[i] == null)
-						deployableDelta[i] = moduleProjects[i].getModuleResourceDelta(delta);
-					
-					if (deployableDelta[i] != null) {
-						// updateDeployable(module, deployableDelta[i]);
-
-						ModulePublishInfo control = PublishInfo.getPublishInfo().getPublishControl(Server.this, parents, module);
-						if (control.isDirty())
-							return true;
-	
-						control.setDirty(true);
-						firePublishStateChange(parents, module);
-					}*/
-					return true;
-				}
-				return true;
-			}
-		};
-
-		visit(visitor, null);
-		
-		if (!helper.changed)
-			return;
-		
-		// check for auto-publish
-		if (autoPublishThread != null) {
-			autoPublishThread.stop = true;
-			autoPublishThread.interrupt();
-			autoPublishThread = null;
-		}
-		
-		int time = 0;
-		if (getAutoPublishDefault()) {
-			boolean local = SocketUtil.isLocalhost(getHost());
-			if (local && ServerPreferences.getInstance().getAutoPublishLocal())
-				time = ServerPreferences.getInstance().getAutoPublishLocalTime();
-			else if (!local && ServerPreferences.getInstance().getAutoPublishRemote())
-				time = ServerPreferences.getInstance().getAutoPublishRemoteTime();
-		} else {
-			time = getAutoPublishTime();
-		}
-		
-		if (time > 5) {
-			autoPublishThread = new AutoPublishThread();
-			autoPublishThread.time = time;
-			autoPublishThread.setPriority(Thread.MIN_PRIORITY + 1);
-			autoPublishThread.start();
-		}
-		
-		//Trace.trace(Trace.FINEST, "< handleDeployableProjectChange()");
-	}
-	
-	private ServerNotificationManager getServerNotificationManager() {
-		if (notificationManager == null) {
-			notificationManager = new ServerNotificationManager();
-		}
-		return notificationManager;
-	}
-
-	/**
-	 * Returns the configuration's sync state.
-	 *
-	 * @return int
-	 */
-	public int getServerPublishState() {
-		return serverSyncState;
-	}
-
-	/**
-	 * Sets the configuration sync state.
-	 *
-	 * @param state int
-	 */
-	public void setServerPublishState(int state) {
-		if (state == serverSyncState)
-			return;
-		serverSyncState = state;
-		//fireConfigurationSyncStateChangeEvent();
-	}
-
-	/**
-	 * 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) {
-		Trace.trace(Trace.LISTENERS, "Adding publish listener " + listener + " to " + this);
-
-		if (publishListeners == null)
-			publishListeners = new ArrayList();
-		publishListeners.add(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) {
-		Trace.trace(Trace.LISTENERS, "Removing publish listener " + listener + " from " + this);
-
-		if (publishListeners != null)
-			publishListeners.remove(listener);
-	}
-	
-	/**
-	 * Fire a publish start event.
-	 */
-	private void firePublishStarted() {
-		Trace.trace(Trace.FINEST, "->- Firing publish started event ->-");
-	
-		if (publishListeners == null || publishListeners.isEmpty())
-			return;
-
-		int size = publishListeners.size();
-		IPublishListener[] srl = new IPublishListener[size];
-		publishListeners.toArray(srl);
-
-		for (int i = 0; i < size; i++) {
-			Trace.trace(Trace.FINEST, "  Firing publish started event to " + srl[i]);
-			try {
-				srl[i].publishStarted(this);
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "  Error firing publish started event to " + srl[i], e);
-			}
-		}
-
-		Trace.trace(Trace.FINEST, "-<- Done firing publish started event -<-");
-	}
-
-	/**
-	 * Fire a publish stop event.
-	 *
-	 * @param status publishing status
-	 */
-	private void firePublishFinished(IStatus status) {
-		Trace.trace(Trace.FINEST, "->- Firing publishing finished event: " + status + " ->-");
-	
-		if (publishListeners == null || publishListeners.isEmpty())
-			return;
-
-		int size = publishListeners.size();
-		IPublishListener[] srl = new IPublishListener[size];
-		publishListeners.toArray(srl);
-
-		for (int i = 0; i < size; i++) {
-			Trace.trace(Trace.FINEST, "  Firing publishing finished event to " + srl[i]);
-			try {
-				srl[i].publishFinished(this, status);
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "  Error firing publishing finished event to " + srl[i], e);
-			}
-		}
-
-		Trace.trace(Trace.FINEST, "-<- Done firing publishing finished event -<-");
-	}
-
-	/**
-	 * Fire a publish state change event.
-	 */
-	protected void firePublishStateChange(IModule[] module) {
-		Trace.trace(Trace.FINEST, "->- Firing publish state change event: " + module + " ->-");
-	
-		if (notificationManager == null || notificationManager.hasListenerEntries())
-			return;
-	
-		notificationManager.broadcastChange(
-			new ServerEvent(ServerEvent.MODULE_CHANGE | ServerEvent.PUBLISH_STATE_CHANGE, this, module, getModuleState(module), 
-				getModulePublishState(module), getModuleRestartState(module)));
-	}
-
-	/**
-	 * Returns true if the server is in a state that it can
-	 * be published to.
-	 *
-	 * @return boolean
-	 */
-	public IStatus canPublish() {
-		// can't publish if the server is starting or stopping
-		int state = getServerState();
-		if (state == STATE_STARTING || state == STATE_STOPPING)
-			return new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, Messages.errorPublishStarting, null);
-	
-		// can't publish if there is no configuration
-		if (getServerType() == null || getServerType().hasServerConfiguration() && configuration == null)
-			return new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, Messages.errorPublishNoConfiguration, null);
-	
-		// return true if the configuration can be published
-		if (getServerPublishState() != PUBLISH_STATE_NONE)
-			return new Status(IStatus.OK, ServerPlugin.PLUGIN_ID, 0, Messages.canPublishOk, null);
-
-		// return true if any modules can be published
-		class Temp {
-			boolean found = false;
-		}
-		//final Temp temp = new Temp();
-		
-		return new Status(IStatus.OK, ServerPlugin.PLUGIN_ID, 0, Messages.canPublishOk, null);
-	
-		/*IModuleVisitor visitor = new IModuleVisitor() {
-			public boolean visit(IModule[] parents, IModule module) {
-				if (getModulePublishState(module) != PUBLISH_STATE_NONE) {
-					temp.found = true;
-					return false;
-				}
-				return true;
-			}
-		};
-		ServerUtil.visit(this, visitor, null);
-		
-		return temp.found;*/
-	}
-
-	/**
-	 * Returns true if the server is in a state that it can
-	 * be published to.
-	 *
-	 * @return boolean
-	 */
-	public boolean shouldPublish() {
-		if (!canPublish().isOK())
-			return false;
-	
-		if (getServerPublishState() != PUBLISH_STATE_NONE)
-			return true;
-	
-		//if (getUnpublishedModules().length > 0)
-		return true;
-	
-		//return false;
-	}
-
-	public ServerPublishInfo getServerPublishInfo() {
-		if (publishInfo == null) {
-			publishInfo = PublishInfo.getInstance().getServerPublishInfo(this);
-		}
-		return publishInfo;
-	}
-
-	/*
-	 * Publish to the server using the progress monitor. The result of the
-	 * publish operation is returned as an IStatus.
-	 */
-	public IStatus publish(final int kind, IProgressMonitor monitor) {
-		if (getServerType() == null)
-			return new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, Messages.errorPublishing, null);
-
-		// check what is out of sync and publish
-		if (getServerType().hasServerConfiguration() && configuration == null)
-			return new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, Messages.errorNoConfiguration, null);
-		
-		if (((ServerType)getServerType()).startBeforePublish()) {
-			try {
-				synchronousStart(ILaunchManager.RUN_MODE, monitor);
-			} catch (CoreException ce) {
-				Trace.trace(Trace.SEVERE, "Error starting server", ce);
-				return ce.getStatus();
-			}
-		}
-		
-		IStatus status = null;
-		try {
-			firePublishStarted();
-			status = doPublish(kind, monitor);
-		} catch (Exception e) {
-			status = null; // TODO
-		} finally {
-			firePublishFinished(status);
-		}
-		return status;
-	}
-
-	protected IStatus doPublish(int kind, IProgressMonitor monitor) {
-		Trace.trace(Trace.FINEST, "-->-- Publishing to server: " + toString() + " -->--");
-
-		try {
-			return getBehaviourDelegate(monitor).publish(kind, monitor);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate publish() " + toString(), e);
-			return null;
-		}
-	}
-	
-	/**
-	 * Returns the publish tasks that have been targetted to this server.
-	 * These tasks should be run during publishing.
-	 * 
-	 * @return a possibly empty array of IOptionalTasks
-	 */
-	public PublishOperation[] getTasks() {
-		final List moduleList = new ArrayList();
-		
-		IModuleVisitor visitor = new IModuleVisitor() {
-			public boolean visit(IModule[] module) {
-				moduleList.add(module);
-				return true;
-			}
-		};
-
-		visit(visitor, null);
-	
-		List tasks = new ArrayList();
-		
-		String serverTypeId = getServerType().getId();
-		
-		IPublishTask[] publishTasks = ServerPlugin.getPublishTasks();
-		if (publishTasks != null) {
-			int size = publishTasks.length;
-			for (int i = 0; i < size; i++) {
-				IPublishTask task = publishTasks[i];
-				if (task.supportsType(serverTypeId)) {
-					PublishOperation[] tasks2 = task.getTasks(this, moduleList);
-					if (tasks2 != null) {
-						int size2 = tasks2.length;
-						for (int j = 0; j < size2; j++) {
-							if (tasks2[j].getKind() == PublishOperation.REQUIRED)
-								tasks.add(tasks2[j]);
-						}
-					}
-				}
-			}
-		}
-		
-		return (PublishOperation[]) tasks.toArray(new PublishOperation[tasks.size()]);
-	}
-	
-	public List getAllModules() {
-		final List moduleList = new ArrayList();
-		
-		IModuleVisitor visitor = new IModuleVisitor() {
-			public boolean visit(IModule[] module) {
-				moduleList.add(module);
-				return true;
-			}
-		};
-
-		visit(visitor, null);
-		
-		return moduleList;
-	}
-
-	/*
-	 * Returns the module resources that have been published.
-	 * 
-	 * @see ServerBehaviourDelegate.getPublishedResources(IModule[], IModule)
-	 */
-	public IModuleResource[] getPublishedResources(IModule[] module) {
-		return getServerPublishInfo().getModulePublishInfo(module).getResources();
-	}
-
-	/*
-	 * Returns the delta of the current module resources that have been
-	 * published compared to the current state of the module.
-	 * 
-	 * @see ServerBehaviourDelegate.getPublishedResourceDelta(IModule[], IModule)
-	 */
-	public IModuleResourceDelta[] getPublishedResourceDelta(IModule[] module) {
-		return getServerPublishInfo().getDelta(module);
-	}
-
-	/**
-	 * @see IServer#getAdapter(Class)
-	 */
-	public Object getAdapter(Class adapter) {
-		if (delegate != null) {
-			if (adapter.isInstance(delegate))
-				return delegate;
-		}
-		if (behaviourDelegate != null) {
-			if (adapter.isInstance(behaviourDelegate))
-				return behaviourDelegate;
-		}
-		return Platform.getAdapterManager().getAdapter(this, adapter);
-	}
-
-	/**
-	 * @see IServer#loadAdapter(Class, IProgressMonitor)
-	 */
-	public Object loadAdapter(Class adapter, IProgressMonitor monitor) {
-		getDelegate(monitor);
-		if (adapter.isInstance(delegate))
-			return delegate;
-
-		getBehaviourDelegate(monitor);
-		if (adapter.isInstance(behaviourDelegate))
-			return behaviourDelegate;
-		
-		return Platform.getAdapterManager().loadAdapter(this, adapter.getName());
-	}
-
-	public String toString() {
-		return getName();
-	}
-
-	/**
-	 * Returns true if the server is in a state that it can
-	 * be started, and supports the given mode.
-	 *
-	 * @param mode2
-	 * @return status
-	 */
-	public IStatus canStart(String mode2) {
-		int state = getServerState();
-		if (state != STATE_STOPPED && state != STATE_UNKNOWN)
-			return new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, Messages.canStartErrorState, null);
-		
-		if (getServerType() == null || !getServerType().supportsLaunchMode(mode2))
-			return new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, Messages.errorLaunchMode, null);
-
-		return new Status(IStatus.OK, ServerPlugin.PLUGIN_ID, 0, Messages.canStartOk, null);
-	}
-	
-	public ILaunch getExistingLaunch() {
-		ILaunchManager launchManager = DebugPlugin.getDefault().getLaunchManager();
-		
-		ILaunch[] launches = launchManager.getLaunches();
-		int size = launches.length;
-		for (int i = 0; i < size; i++) {
-			ILaunchConfiguration launchConfig = launches[i].getLaunchConfiguration();
-			try {
-				if (launchConfig != null) {
-					String serverId = launchConfig.getAttribute(SERVER_ID, (String) null);
-					if (getId().equals(serverId)) {
-						if (!launches[i].isTerminated())
-							return launches[i];
-					}
-				}
-			} catch (CoreException e) {
-				// ignore
-			}
-		}
-		
-		return null;
-	}
-
-	public void setupLaunchConfiguration(ILaunchConfigurationWorkingCopy workingCopy, IProgressMonitor monitor) {
-		try {
-			getBehaviourDelegate(monitor).setupLaunchConfiguration(workingCopy, monitor);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate setLaunchDefaults() " + toString(), e);
-		}
-	}
-
-	public void importConfiguration(IRuntime runtime2, IProgressMonitor monitor) {
-		try {
-			getDelegate(monitor).importConfiguration(runtime2, monitor);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate setLaunchDefaults() " + toString(), e);
-		}
-	}
-
-	/**
-	 * Return the launch configuration for this server. If one does not exist, it
-	 * will be created if "create" is true, and otherwise will return null.
-	 * 
-	 * @param create <code>true</code> if a new launch configuration should be
-	 *    created if there are none already
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return the launch configuration, no <code>null</code> if there was no
-	 *    existing launch configuration and <code>create</code> was false
-	 * @throws CoreException
-	 */
-	public ILaunchConfiguration getLaunchConfiguration(boolean create, IProgressMonitor monitor) throws CoreException {
-		ILaunchConfigurationType launchConfigType = ((ServerType) getServerType()).getLaunchConfigurationType();
-		
-		ILaunchManager launchManager = DebugPlugin.getDefault().getLaunchManager();
-		ILaunchConfiguration[] launchConfigs = null;
-		try {
-			launchConfigs = launchManager.getLaunchConfigurations(launchConfigType);
-		} catch (CoreException e) {
-			// ignore
-		}
-		
-		if (launchConfigs != null) {
-			int size = launchConfigs.length;
-			for (int i = 0; i < size; i++) {
-				try {
-					String serverId = launchConfigs[i].getAttribute(SERVER_ID, (String) null);
-					if (getId().equals(serverId)) {
-						ILaunchConfigurationWorkingCopy wc = launchConfigs[i].getWorkingCopy();
-						setupLaunchConfiguration(wc, monitor);
-						if (wc.isDirty())
-							return wc.doSave();
-						return launchConfigs[i];
-					}
-				} catch (CoreException e) {
-					Trace.trace(Trace.SEVERE, "Error configuring launch", e);
-				}
-			}
-		}
-		
-		if (!create)
-			return null;
-		
-		// create a new launch configuration
-		String launchName = getValidLaunchConfigurationName(getName());
-		launchName = launchManager.generateUniqueLaunchConfigurationNameFrom(launchName); 
-		ILaunchConfigurationWorkingCopy wc = launchConfigType.newInstance(null, launchName);
-		wc.setAttribute(SERVER_ID, getId());
-		setupLaunchConfiguration(wc, monitor);
-		return wc.doSave();
-	}
-
-	protected String getValidLaunchConfigurationName(String s) {
-		if (s == null || s.length() == 0)
-			return "1";
-		int size = INVALID_CHARS.length;
-		for (int i = 0; i < size; i++) {
-			s = s.replace(INVALID_CHARS[i], '_');
-		}
-		return s;
-	}
-
-	/**
-	 * @see IServer#start(String, IProgressMonitor)
-	 */
-	public void start(String mode2, IProgressMonitor monitor) throws CoreException {
-		Trace.trace(Trace.FINEST, "Starting server: " + toString() + ", launchMode: " + mode2);
-	
-		try {
-			ILaunchConfiguration launchConfig = getLaunchConfiguration(true, monitor);
-			ILaunch launch = launchConfig.launch(mode2, monitor);
-			Trace.trace(Trace.FINEST, "Launch: " + launch);
-		} catch (CoreException e) {
-			Trace.trace(Trace.SEVERE, "Error starting server " + toString(), e);
-			throw e;
-		}
-	}
-
-	/**
-	 * Clean up any old launch configurations with the current server's id.
-	 */
-	protected void deleteLaunchConfigurations() {
-		if (getServerType() == null)
-			return;
-		ILaunchManager launchManager = DebugPlugin.getDefault().getLaunchManager();
-		ILaunchConfigurationType launchConfigType = ((ServerType) getServerType()).getLaunchConfigurationType();
-		
-		ILaunchConfiguration[] configs = null;
-		try {
-			configs = launchManager.getLaunchConfigurations(launchConfigType);
-			int size = configs.length;
-			for (int i = 0; i < size; i++) {
-				try {
-					if (getId().equals(configs[i].getAttribute(SERVER_ID, (String) null)))
-						configs[i].delete();
-				} catch (Exception e) {
-					// ignore
-				}
-			}
-		} catch (Exception e) {
-			// ignore
-		}
-	}
-
-	/**
-	 * @see IServer#canRestart(String)
-	 */
-	public IStatus canRestart(String mode2) {
-		if (!getServerType().supportsLaunchMode(mode2))
-			return new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, Messages.errorLaunchMode, null);
-
-		int state = getServerState();
-		if (state == STATE_STARTED)
-			return new Status(IStatus.OK, ServerPlugin.PLUGIN_ID, 0, Messages.canRestartOk, null);
-		
-		return new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, Messages.errorRestartNotStarted, null);
-	}
-
-	/**
-	 * Returns the current restart state of the server. This
-	 * implementation will always return false when the server
-	 * is stopped.
-	 *
-	 * @return boolean
-	 */
-	public boolean getServerRestartState() {
-		if (getServerState() == STATE_STOPPED)
-			return false;
-		return serverRestartNeeded;
-	}
-
-	/**
-	 * Sets the server restart state.
-	 *
-	 * @param state boolean
-	 */
-	public synchronized void setServerRestartState(boolean state) {
-		if (state == serverRestartNeeded)
-			return;
-		serverRestartNeeded = state;
-		fireRestartStateChangeEvent();
-	}
-
-	/**
-	 * @see IServer#restart(String, IProgressMonitor)
-	 */
-	public void restart(final String mode2, final IProgressMonitor monitor) {
-		if (getServerState() == STATE_STOPPED)
-			return;
-	
-		Trace.trace(Trace.FINEST, "Restarting server: " + getName());
-	
-		try {
-			try {
-				getBehaviourDelegate(null).restart(mode2);
-				return;
-			} catch (CoreException ce) {
-				Trace.trace(Trace.SEVERE, "Error calling delegate restart() " + toString());
-			}
-		
-			// add listener to start it as soon as it is stopped
-			addServerListener(new IServerListener() {
-				public void serverChanged(ServerEvent event) {
-					int eventKind = event.getKind();
-					IServer server = event.getServer();
-					if (eventKind == (ServerEvent.SERVER_CHANGE | ServerEvent.STATE_CHANGE)) {
-						if (server.getServerState() == STATE_STOPPED) {
-							server.removeServerListener(this);
-
-							// restart in a quarter second (give other listeners a chance
-							// to hear the stopped message)
-							Thread t = new Thread() {
-								public void run() {
-									try {
-										Thread.sleep(250);
-									} catch (Exception e) {
-										// ignore
-									}
-									try {
-										Server.this.start(mode2, monitor);
-									} catch (Exception e) {
-										Trace.trace(Trace.SEVERE, "Error while restarting server", e);
-									}
-								}
-							};
-							t.setDaemon(true);
-							t.setPriority(Thread.NORM_PRIORITY - 2);
-							t.start();
-						}
-					}
-					
-				}
-			});
-	
-			// stop the server
-			stop(false);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error restarting server", e);
-		}
-	}
-
-	/**
-	 * Returns true if the server is in a state that it can
-	 * be stopped.
-	 *
-	 * @return boolean
-	 */
-	public IStatus canStop() {
-		if (getServerState() == STATE_STOPPED)
-			return new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, Messages.errorStopAlreadyStopped, null);
-
-		return new Status(IStatus.OK, ServerPlugin.PLUGIN_ID, 0, Messages.canStopOk, null);
-	}
-
-	/**
-	 * @see IServer#stop(boolean)
-	 */
-	public void stop(boolean force) {
-		if (getServerState() == STATE_STOPPED)
-			return;
-
-		Trace.trace(Trace.FINEST, "Stopping server: " + toString());
-
-		try {
-			getBehaviourDelegate(null).stop(force);
-		} catch (Throwable t) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate stop() " + toString(), t);
-		}
-	}
-	
-	/**
-	 * @see IServer#start(String, IOperationListener)
-	 */
-	public void start(String mode2, IOperationListener listener2) {
-		Trace.trace(Trace.FINEST, "synchronousStart 1");
-		final Object mutex = new Object();
-	
-		// add listener to the server
-		IServerListener listener = new IServerListener() {
-			public void serverChanged(ServerEvent event) {
-				int eventKind = event.getKind();
-				IServer server = event.getServer();
-				if (eventKind == (ServerEvent.SERVER_CHANGE | ServerEvent.STATE_CHANGE)) {
-					int state = server.getServerState();
-					if (state == IServer.STATE_STARTED || state == IServer.STATE_STOPPED) {
-						// notify waiter
-						synchronized (mutex) {
-							try {
-								Trace.trace(Trace.FINEST, "synchronousStart notify");
-								mutex.notifyAll();
-							} catch (Exception e) {
-								Trace.trace(Trace.SEVERE, "Error notifying server start", e);
-							}
-						}
-					}
-				}
-			}
-		};
-		addServerListener(listener);
-		
-		final int serverTimeout = ((ServerType) getServerType()).getStartTimeout();
-		class Timer {
-			boolean timeout;
-			boolean alreadyDone;
-		}
-		final Timer timer = new Timer();
-		
-		Thread thread = new Thread() {
-			public void run() {
-				try {
-					Thread.sleep(serverTimeout * 1000);
-					if (!timer.alreadyDone) {
-						timer.timeout = true;
-						// notify waiter
-						synchronized (mutex) {
-							Trace.trace(Trace.FINEST, "synchronousStart notify timeout");
-							mutex.notifyAll();
-						}
-					}
-				} catch (Exception e) {
-					Trace.trace(Trace.SEVERE, "Error notifying server start timeout", e);
-				}
-			}
-		};
-		thread.setDaemon(true);
-		thread.start();
-	
-		Trace.trace(Trace.FINEST, "synchronousStart 2");
-	
-		// start the server
-		try {
-			start(mode2, (IProgressMonitor)null);
-		} catch (CoreException e) {
-			removeServerListener(listener);
-			timer.alreadyDone = true;
-			listener2.done(e.getStatus());
-			return;
-		}
-	
-		Trace.trace(Trace.FINEST, "synchronousStart 3");
-	
-		// wait for it! wait for it! ...
-		synchronized (mutex) {
-			try {
-				while (!timer.timeout && !(getServerState() == IServer.STATE_STARTED || getServerState() == IServer.STATE_STOPPED))
-					mutex.wait();
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "Error waiting for server start", e);
-			}
-		}
-		removeServerListener(listener);
-		timer.alreadyDone = true;
-		
-		if (timer.timeout) {
-			listener2.done(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorStartTimeout, new String[] { getName(), serverTimeout + "" }), null));
-			return;
-		}
-		timer.alreadyDone = true;
-		
-		if (getServerState() == IServer.STATE_STOPPED) {
-			listener2.done(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorStartFailed, getName()), null));
-			return;
-		}
-	
-		Trace.trace(Trace.FINEST, "synchronousStart 4");
-		listener2.done(null);
-	}
-
-	public void synchronousStart(String mode2, IProgressMonitor monitor) throws CoreException {
-		Trace.trace(Trace.FINEST, "synchronousStart 1");
-		final Object mutex = new Object();
-	
-		// add listener to the server
-		IServerListener listener = new IServerListener() {
-			public void serverChanged(ServerEvent event) {
-				int eventKind = event.getKind();
-				IServer server = event.getServer();
-				if (eventKind == (ServerEvent.SERVER_CHANGE | ServerEvent.STATE_CHANGE)) {
-					int state = server.getServerState();
-					if (state == IServer.STATE_STARTED || state == IServer.STATE_STOPPED) {
-						// notify waiter
-						synchronized (mutex) {
-							try {
-								Trace.trace(Trace.FINEST, "synchronousStart notify");
-								mutex.notifyAll();
-							} catch (Exception e) {
-								Trace.trace(Trace.SEVERE, "Error notifying server start", e);
-							}
-						}
-					}
-				}
-			}
-		};
-		addServerListener(listener);
-		
-		final int serverTimeout = ((ServerType) getServerType()).getStartTimeout();
-		class Timer {
-			boolean timeout;
-			boolean alreadyDone;
-		}
-		final Timer timer = new Timer();
-		
-		Thread thread = new Thread() {
-			public void run() {
-				try {
-					Thread.sleep(serverTimeout * 1000);
-					if (!timer.alreadyDone) {
-						timer.timeout = true;
-						// notify waiter
-						synchronized (mutex) {
-							Trace.trace(Trace.FINEST, "synchronousStart notify timeout");
-							mutex.notifyAll();
-						}
-					}
-				} catch (Exception e) {
-					Trace.trace(Trace.SEVERE, "Error notifying server start timeout", e);
-				}
-			}
-		};
-		thread.setDaemon(true);
-		thread.start();
-	
-		Trace.trace(Trace.FINEST, "synchronousStart 2");
-	
-		// start the server
-		try {
-			start(mode2, monitor);
-		} catch (CoreException e) {
-			removeServerListener(listener);
-			timer.alreadyDone = true;
-			throw e;
-		}
-	
-		Trace.trace(Trace.FINEST, "synchronousStart 3");
-	
-		// wait for it! wait for it! ...
-		synchronized (mutex) {
-			try {
-				while (!timer.timeout && !(getServerState() == IServer.STATE_STARTED || getServerState() == IServer.STATE_STOPPED))
-					mutex.wait();
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "Error waiting for server start", e);
-			}
-		}
-		removeServerListener(listener);
-		timer.alreadyDone = true;
-		
-		if (timer.timeout)
-			throw new CoreException(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorStartTimeout, new String[] { getName(), serverTimeout + "" }), null));
-		timer.alreadyDone = true;
-		
-		if (getServerState() == IServer.STATE_STOPPED)
-			throw new CoreException(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorStartFailed, getName()), null));
-	
-		Trace.trace(Trace.FINEST, "synchronousStart 4");
-	}
-
-	/*
-	 * @see IServer#synchronousRestart(String, IProgressMonitor)
-	 */
-	public void synchronousRestart(String mode2, IProgressMonitor monitor) throws CoreException {
-		synchronousStop(true);
-		synchronousStart(mode2, monitor);
-	}
-	
-	/*
-	 * @see IServer#restart(String, IOperationListener)
-	 */
-	public void restart(String mode2, IOperationListener listener) {
-		stop(true, null);
-		try {
-			start(mode2, (IProgressMonitor)null);
-		} catch (CoreException ce) {
-			// TODO
-		}
-		listener.done(null);
-	}
-	
-	/*
-	 * @see IServer#stop(boolean, IOperationListener)
-	 */
-	public void stop(boolean force, IOperationListener listener2) {
-		if (getServerState() == IServer.STATE_STOPPED)
-			return;
-		
-		final Object mutex = new Object();
-	
-		// add listener to the server
-		IServerListener listener = new IServerListener() {
-			public void serverChanged(ServerEvent event) {
-				int eventKind = event.getKind();
-				IServer server = event.getServer();
-				if (eventKind == (ServerEvent.SERVER_CHANGE | ServerEvent.STATE_CHANGE)) {
-					int state = server.getServerState();
-					if (Server.this == server && state == IServer.STATE_STOPPED) {
-						// notify waiter
-						synchronized (mutex) {
-							try {
-								mutex.notifyAll();
-							} catch (Exception e) {
-								Trace.trace(Trace.SEVERE, "Error notifying server stop", e);
-							}
-						}
-					}
-				}
-			}
-		};
-		addServerListener(listener);
-		
-		class Timer {
-			boolean timeout;
-			boolean alreadyDone;
-		}
-		final Timer timer = new Timer();
-		
-		Thread thread = new Thread() {
-			public void run() {
-				try {
-					Thread.sleep(120000);
-					if (!timer.alreadyDone) {
-						timer.timeout = true;
-						// notify waiter
-						synchronized (mutex) {
-							Trace.trace(Trace.FINEST, "stop notify timeout");
-							mutex.notifyAll();
-						}
-					}
-				} catch (Exception e) {
-					Trace.trace(Trace.SEVERE, "Error notifying server stop timeout", e);
-				}
-			}
-		};
-		thread.setDaemon(true);
-		thread.start();
-	
-		// stop the server
-		stop(force);
-	
-		// wait for it! wait for it!
-		synchronized (mutex) {
-			try {
-				while (!timer.timeout && getServerState() != IServer.STATE_STOPPED)
-					mutex.wait();
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "Error waiting for server stop", e);
-			}
-		}
-		removeServerListener(listener);
-		
-		/*
-		//can't throw exceptions
-		if (timer.timeout)
-			throw new CoreException(new Status(IStatus.ERROR, ServerCore.PLUGIN_ID, 0, ServerPlugin.getResource("%errorStartFailed", getName()), null));
-		else
-			timer.alreadyDone = true;
-		
-		if (getServerState() == IServer.STATE_STOPPED)
-			throw new CoreException(new Status(IStatus.ERROR, ServerCore.PLUGIN_ID, 0, ServerPlugin.getResource("%errorStartFailed", getName()), null));*/
-		listener2.done(null);
-	}
-
-	/*
-	 * @see IServer#synchronousStop()
-	 */
-	public void synchronousStop(boolean force) {
-		if (getServerState() == IServer.STATE_STOPPED)
-			return;
-		
-		final Object mutex = new Object();
-	
-		// add listener to the server
-		IServerListener listener = new IServerListener() {
-			public void serverChanged(ServerEvent event) {
-				int eventKind = event.getKind();
-				IServer server = event.getServer();
-				if (eventKind == (ServerEvent.SERVER_CHANGE | ServerEvent.STATE_CHANGE)) {
-					int state = server.getServerState();
-					if (Server.this == server && state == IServer.STATE_STOPPED) {
-						// notify waiter
-						synchronized (mutex) {
-							try {
-								mutex.notifyAll();
-							} catch (Exception e) {
-								Trace.trace(Trace.SEVERE, "Error notifying server stop", e);
-							}
-						}
-					}
-				}
-			}
-		};
-		addServerListener(listener);
-		
-		class Timer {
-			boolean timeout;
-			boolean alreadyDone;
-		}
-		final Timer timer = new Timer();
-		
-		Thread thread = new Thread() {
-			public void run() {
-				try {
-					Thread.sleep(120000);
-					if (!timer.alreadyDone) {
-						timer.timeout = true;
-						// notify waiter
-						synchronized (mutex) {
-							Trace.trace(Trace.FINEST, "stop notify timeout");
-							mutex.notifyAll();
-						}
-					}
-				} catch (Exception e) {
-					Trace.trace(Trace.SEVERE, "Error notifying server stop timeout", e);
-				}
-			}
-		};
-		thread.setDaemon(true);
-		thread.start();
-	
-		// stop the server
-		stop(force);
-	
-		// wait for it! wait for it!
-		synchronized (mutex) {
-			try {
-				while (!timer.timeout && getServerState() != IServer.STATE_STOPPED)
-					mutex.wait();
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "Error waiting for server stop", e);
-			}
-		}
-		removeServerListener(listener);
-		
-		/*
-		//can't throw exceptions
-		if (timer.timeout)
-			throw new CoreException(new Status(IStatus.ERROR, ServerCore.PLUGIN_ID, 0, ServerPlugin.getResource("%errorStartFailed", getName()), null));
-		else
-			timer.alreadyDone = true;
-		
-		if (getServerState() == IServer.STATE_STOPPED)
-			throw new CoreException(new Status(IStatus.ERROR, ServerCore.PLUGIN_ID, 0, ServerPlugin.getResource("%errorStartFailed", getName()), null));*/
-	}
-	
-	/*
-	 * Trigger a restart of the given module and wait until it has finished restarting.
-	 *
-	 * @param module org.eclipse.wst.server.core.IModule
-	 * @param monitor org.eclipse.core.runtime.IProgressMonitor
-	 * @exception org.eclipse.core.runtime.CoreException - thrown if an error occurs while trying to restart the module
-	 *
-	public void synchronousRestartModule(final IModule[] module, IProgressMonitor monitor) throws CoreException {
-		Trace.trace(Trace.FINEST, "synchronousModuleRestart 1");
-
-		final Object mutex = new Object();
-	
-		// add listener to the module
-		IServerListener listener = new IServerListener() {
-			public void serverChanged(ServerEvent event) {
-				int eventKind = event.getKind();
-				IServer server = event.getServer();
-				if (eventKind == (ServerEvent.MODULE_CHANGE | ServerEvent.STATE_CHANGE)) {
-					int state = server.getModuleState(module);
-					if (state == IServer.STATE_STARTED || state == IServer.STATE_STOPPED) {
-						// notify waiter
-						synchronized (mutex) {
-							try {
-								Trace.trace(Trace.FINEST, "synchronousModuleRestart notify");
-								mutex.notifyAll();
-							} catch (Exception e) {
-								Trace.trace(Trace.SEVERE, "Error notifying module restart", e);
-							}
-						}
-					}
-				}
-			}
-		};
-		addServerListener(listener);
-		
-		// make sure it times out after 30s
-		class Timer {
-			boolean timeout;
-			boolean alreadyDone;
-		}
-		final Timer timer = new Timer();
-		
-		Thread thread = new Thread() {
-			public void run() {
-				try {
-					Thread.sleep(30000);
-					if (!timer.alreadyDone) {
-						timer.timeout = true;
-						// notify waiter
-						synchronized (mutex) {
-							Trace.trace(Trace.FINEST, "synchronousModuleRestart notify timeout");
-							mutex.notifyAll();
-						}
-					}
-				} catch (Exception e) {
-					Trace.trace(Trace.SEVERE, "Error notifying module restart timeout", e);
-				}
-			}
-		};
-		thread.setDaemon(true);
-		thread.start();
-	
-		Trace.trace(Trace.FINEST, "synchronousModuleRestart 2");
-	
-		// restart the module
-		try {
-			getBehaviourDelegate(null).restartModule(module, monitor);
-		} catch (CoreException e) {
-			removeServerListener(listener);
-			throw e;
-		}
-	
-		Trace.trace(Trace.FINEST, "synchronousModuleRestart 3");
-	
-		// wait for it! wait for it! ...
-		synchronized (mutex) {
-			try {
-				while (!timer.timeout && !(getModuleState(module) == IServer.STATE_STARTED || getModuleState(module) == IServer.STATE_STOPPED))
-					mutex.wait();
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "Error waiting for server start", e);
-			}
-		}
-		removeServerListener(listener);
-		if (timer.timeout)
-			throw new CoreException(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorModuleRestartFailed, getName()), null));
-		timer.alreadyDone = true;
-		
-		if (getModuleState(module) == IServer.STATE_STOPPED)
-			throw new CoreException(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorModuleRestartFailed, getName()), null));
-	
-		Trace.trace(Trace.FINEST, "synchronousModuleRestart 4");
-	}*/
-
-	public IPath getTempDirectory() {
-		return ServerPlugin.getInstance().getTempDirectory(getId());
-	}
-
-	protected String getXMLRoot() {
-		return "server";
-	}
-	
-	protected void loadState(IMemento memento) {
-		/*String serverTypeId = memento.getString("server-type-id");
-		serverType = ServerCore.getServerType(serverTypeId);
-		
-		String runtimeId = memento.getString("runtime-id");
-		runtime = ServerCore.getResourceManager().getRuntime(runtimeId);
-		
-		String configurationId = memento.getString("configuration-id");
-		configuration = ServerCore.getResourceManager().getServerConfiguration(configurationId);*/
-		resolve();
-	}
-	
-	protected void resolve() {
-		IServerType oldServerType = serverType;
-		String serverTypeId = getAttribute("server-type-id", (String)null);
-		if (serverTypeId != null)
-			serverType = ServerCore.findServerType(serverTypeId);
-		else
-			serverType = null;
-		if (serverType != null && !serverType.equals(oldServerType))
-			serverState = ((ServerType)serverType).getInitialState();
-		
-		String runtimeId = getAttribute(RUNTIME_ID, (String)null);
-		if (runtimeId != null)
-			runtime = ServerCore.findRuntime(runtimeId);
-		
-		String configPath = getAttribute(CONFIGURATION_ID, (String)null);
-		configuration = null;
-		if (configPath != null)
-			configuration = ResourcesPlugin.getWorkspace().getRoot().getFolder(new Path(configPath));
-	}
-
-	protected void setInternal(ServerWorkingCopy wc) {
-		map = wc.map;
-		configuration = wc.configuration;
-		runtime = wc.runtime;
-		serverSyncState = wc.serverSyncState;
-		//restartNeeded = wc.restartNeeded;
-		serverType = wc.serverType;
-		modules = wc.modules;
-
-		// can never modify the following properties via the working copy
-		//serverState = wc.serverState;
-		delegate = wc.delegate;
-	}
-
-	protected void saveState(IMemento memento) {
-		if (serverType != null)
-			memento.putString("server-type", serverType.getId());
-
-		if (configuration != null)
-			memento.putString(CONFIGURATION_ID, configuration.getFullPath().toString());
-		else
-			memento.putString(CONFIGURATION_ID, null);
-		
-		if (runtime != null)
-			memento.putString(RUNTIME_ID, runtime.getId());
-		else
-			memento.putString(RUNTIME_ID, null);
-	}
-
-	/*public void updateConfiguration() {
-		try {
-			getDelegate(null).updateConfiguration();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate updateConfiguration() " + toString(), e);
-		}
-	}*/
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.IServerConfiguration#canModifyModule(org.eclipse.wst.server.core.model.IModule)
-	 */
-	public IStatus canModifyModules(IModule[] add, IModule[] remove, IProgressMonitor monitor) {
-		try {
-			return getDelegate(monitor).canModifyModules(add, remove);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate canModifyModules() " + toString(), e);
-			return null;
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.IServer#getModules()
-	 */
-	public IModule[] getModules() {
-		if (modules == null) {
-			// convert from attribute
-			List list = getAttribute(MODULE_LIST, (List) null);
-			if (list == null)
-				list = new ArrayList(1);
-			
-			modules = new ArrayList(list.size() + 1);
-			Iterator iterator = list.iterator();
-			while (iterator.hasNext()) {
-				String moduleStr = (String) iterator.next();
-				IModule module = ServerUtil.getModule(moduleStr);
-				if (module != null)
-					modules.add(module);
-			}
-		} else {
-			// verify modules are still available
-			List remove = new ArrayList();
-			Iterator iterator = modules.iterator();
-			while (iterator.hasNext()) {
-				IModule module = (IModule) iterator.next();
-				if (ServerUtil.getModule(module.getId()) == null)
-					remove.add(module);
-			}
-			
-			iterator = remove.iterator();
-			while (iterator.hasNext()) {
-				modules.remove(iterator.next());
-			}
-		}
-		
-		IModule[] modules2 = new IModule[modules.size()];
-		modules.toArray(modules2);
-		return modules2;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.IServer#getModuleState()
-	 */
-	public int getModuleState(IModule[] module) {
-		try {
-			Integer in = (Integer) moduleState.get(getKey(module));
-			if (in != null)
-				return in.intValue();
-		} catch (Exception e) {
-			// ignore
-		}
-		return STATE_UNKNOWN;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.IServer#getModuleState()
-	 */
-	public int getModulePublishState(IModule[] module) {
-		try {
-			Integer in = (Integer) modulePublishState.get(getKey(module));
-			if (in != null)
-				return in.intValue();
-		} catch (Exception e) {
-			// ignore
-		}
-		return PUBLISH_STATE_UNKNOWN;
-	}
-
-	/*
-	 * @see IServer#getChildModule(IModule[])
-	 */
-	public IModule[] getChildModules(IModule[] module, IProgressMonitor monitor) {
-		try {
-			return getDelegate(monitor).getChildModules(module);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate getChildModules() " + toString(), e);
-			return null;
-		}
-	}
-
-	/*
-	 * @see IServer#getRootModules(IModule)
-	 */
-	public IModule[] getRootModules(IModule module, IProgressMonitor monitor) throws CoreException {
-		try {
-			return getDelegate(monitor).getRootModules(module);
-		} catch (CoreException se) {
-			//Trace.trace(Trace.FINER, "CoreException calling delegate getParentModules() " + toString() + ": " + se.getMessage());
-			throw se;
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate getParentModules() " + toString(), e);
-			return null;
-		}
-	}
-	
-	/*
-	 * 
-	 */
-	/*public boolean hasRuntime() {
-		try {
-			return getDelegate().requiresRuntime();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate requiresRuntime() " + toString(), e);
-			return false;
-		}
-	}*/
-	
-	/**
-	 * Returns whether the given module can be restarted.
-	 *
-	 * @param module the module
-	 * @param monitor
-	 * @return <code>true</code> if the given module can be
-	 *    restarted, and <code>false</code> otherwise
-	 */
-	public IStatus canControlModule(IModule[] module, IProgressMonitor monitor) {
-		try {
-			boolean b = getBehaviourDelegate(monitor).canControlModule(module);
-			if (b)
-				return new Status(IStatus.OK, ServerPlugin.PLUGIN_ID, 0, Messages.canRestartModuleOk, null);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate canRestartRuntime() " + toString(), e);
-		}
-		return new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, Messages.errorRestartModule, null);
-	}
-
-	/**
-	 * 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 org.eclipse.wst.server.core.model.IModule
-	 * @return boolean
-	 */
-	public boolean getModuleRestartState(IModule[] module) {
-		try {
-			Boolean b = (Boolean) moduleRestartState.get(getKey(module));
-			if (b != null)
-				return b.booleanValue();
-		} catch (Exception e) {
-			// ignore
-		}
-		return false;
-	}
-
-	/*
-	 * @see IServer#startModule(IModule[], IOperationListener)
-	 */
-	public void startModule(IModule[] module, IOperationListener listener) {
-		try {
-			getBehaviourDelegate(null).startModule(module, null);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate restartModule() " + toString(), e);
-		}
-	}
-	
-	/*
-	 * @see IServer#stopModule(IModule[], IOperationListener)
-	 */
-	public void stopModule(IModule[] module, IOperationListener listener) {
-		try {
-			getBehaviourDelegate(null).stopModule(module, null);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate restartModule() " + toString(), e);
-		}
-	}
-	
-	/*
-	 * @see IServer#restartModule(IModule[], IOperationListener, IProgressMonitor)
-	 */
-	public void restartModule(IModule[] module, IOperationListener listener) {
-		try {
-			getBehaviourDelegate(null).stopModule(module, null);
-			getBehaviourDelegate(null).startModule(module, null);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate restartModule() " + toString(), e);
-		}
-	}
-	
-	/**
-	 * Returns an array of IServerPorts that this server has.
-	 *
-	 * @param monitor
-	 * @return a possibly empty array of servers ports
-	 */
-	public ServerPort[] getServerPorts(IProgressMonitor monitor) {
-		try {
-			return getDelegate(monitor).getServerPorts();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate getServerPorts() " + toString(), e);
-			return null;
-		}
-	}
-	
-	/**
-	 * Visit all the modules in the server with the given module visitor.
-	 * 
-	 * @param visitor the visitor
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 */
-	public void visit(IModuleVisitor visitor, IProgressMonitor monitor) {
-		IModule[] modules2 = getModules();
-		if (modules2 != null) { 
-			int size = modules2.length;
-			for (int i = 0; i < size; i++) {
-				if (!visitModule(new IModule[] { modules2[i] }, visitor, monitor))
-					return;
-			}
-		}
-	}
-
-	/**
-	 * Returns true to keep visiting, and false to stop.
-	 * 
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 */
-	private boolean visitModule(IModule[] module, IModuleVisitor visitor, IProgressMonitor monitor) {
-		if (module == null)
-			return true;
-		
-		if (!visitor.visit(module))
-			return false;
-		
-		IModule[] children = getChildModules(module, monitor);
-		if (children != null) {
-			int size = children.length;
-			for (int i = 0; i < size; i++) {
-				IModule[] module2 = new IModule[module.length + 1];
-				System.arraycopy(module, 0, module2, 0, module.length);
-				module2[module.length] = children[i];
-				
-				if (!visitModule(module2, visitor, monitor))
-					return false;
-			}
-		}
-		
-		return true;
-	}
-	
-	private String getKey(IModule[] module) {
-		StringBuffer sb = new StringBuffer();
-		
-		if (module != null) {
-			int size = module.length;
-			for (int i = 0; i < size; i++) {
-				if (i != 0)
-					sb.append("#");
-				sb.append(module[i].getId());
-			}
-		}
-		
-		return sb.toString();
-	}
-	
-	public void setModuleStatus(IModule[] module, IStatus status) {
-		moduleStatus.put(getKey(module), status);
-		//fireServerModuleStateChangeEvent(module);
-	}
-	
-	public IStatus getModuleStatus(IModule[] module) {
-		try {
-			return (IStatus) moduleStatus.get(getKey(module));
-		} catch (Exception e) {
-			return null;
-		}
-	}
-	
-	public void setServerStatus(IStatus status) {
-		serverStatus = status;
-		//fireServerStateChangeEvent();
-	}
-	
-	public IStatus getServerStatus() {
-		return serverStatus;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerListener.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerListener.java
deleted file mode 100644
index c1e48d1..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerListener.java
+++ /dev/null
@@ -1,72 +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.internal;
-
-import org.eclipse.wst.server.core.*;
-import org.eclipse.wst.server.core.util.ServerLifecycleAdapter;
-/**
- * Listens for messages from the servers. This class keeps
- * track of server instances current state and any clients
- * that are waiting to run on the server. 
- */
-public class ServerListener extends ServerLifecycleAdapter implements IServerListener {
-	// static instance
-	protected static ServerListener listener;
-
-	/**
-	 * ServerListener constructor comment.
-	 */
-	private ServerListener() {
-		super();
-	}
-	
-	/**
-	 * Get the static instance.
-	 *
-	 * @return org.eclipse.wst.server.core.internal.plugin.ServerListener
-	 */
-	public static ServerListener getInstance() {
-		if (listener == null)
-			listener = new ServerListener();
-		return listener;
-	}
-	
-	/**
-	 * Called when the server configuration's sync state changes.
-	 *
-	 * @param server org.eclipse.wst.server.model.IServer
-	 */
-	public void configurationSyncStateChange(IServer server) {
-		// do nothing
-	}
-
-	/**
-	 * A new resource has been added.
-	 *
-	 * @param server org.eclipse.wst.server.core.IServer
-	 */
-	public void serverAdded(IServer server) {
-		server.addServerListener(this);
-	}
-
-	/**
-	 * A existing resource has been removed.
-	 *
-	 * @param server org.eclipse.wst.server.core.IServer
-	 */
-	public void serverRemoved(IServer server) {
-		server.removeServerListener(this);
-	}
-
-	public void serverChanged(ServerEvent event) {
-		// do nothing
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerMonitor.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerMonitor.java
deleted file mode 100644
index 23a009a..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerMonitor.java
+++ /dev/null
@@ -1,118 +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.internal;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.ServerPort;
-/**
- * 
- */
-public class ServerMonitor implements IServerMonitor {
-	private IConfigurationElement element;
-	private ServerMonitorDelegate delegate;
-
-	/**
-	 * Monitor constructor comment.
-	 * 
-	 * @param element a configuration element
-	 */
-	public ServerMonitor(IConfigurationElement element) {
-		super();
-		this.element = element;
-	}
-
-	/**
-	 * Returns the id of this default server.
-	 *
-	 * @return java.lang.String
-	 */
-	public String getId() {
-		return element.getAttribute("id");
-	}
-
-	/*
-	 * @see IMonitor#getDescription()
-	 */
-	public String getDescription() {
-		return element.getAttribute("description");
-	}
-
-	/*
-	 * @see IMonitor#getLabel()
-	 */
-	public String getName() {
-		String label = element.getAttribute("name");
-		if (label == null)
-			return "n/a";
-		return label;
-	}
-
-	/*
-	 * @see IMonitor#getDelegate()
-	 */
-	public ServerMonitorDelegate getDelegate() {
-		if (delegate == null) {
-			try {
-				delegate = (ServerMonitorDelegate) element.createExecutableExtension("class");
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "Could not create delegate" + toString() + ": " + t.getMessage());
-			}
-		}
-		return delegate;
-	}
-
-	/**
-	 * Start monitoring the given port, and return the port number to
-	 * tunnel requests through.
-	 * 
-	 * @param server a server
-	 * @param port a port
-	 * @param monitorPort the port used for monitoring
-	 * @return the port used for monitoring
-	 * @throws CoreException if anything goes wrong
-	 */
-	public int startMonitoring(IServer server, ServerPort port, int monitorPort) throws CoreException {
-		try {
-			return getDelegate().startMonitoring(server, port, monitorPort);
-		} catch (CoreException ce) {
-			throw ce;
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate " + toString() + ": " + e.getMessage());
-			return -1;
-		}
-	}
-
-	/**
-	 * Stop monitoring the given port.
-	 * 
-	 * @param server a server
-	 * @param port a port
-	 */
-	public void stopMonitoring(IServer server, ServerPort port) {
-		try {
-			getDelegate().stopMonitoring(server, port);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate " + toString() + ": " + e.getMessage());
-		}
-	}
-
-	/**
-	 * Return a string representation of this object.
-	 * 
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		return "Monitor[" + getId() + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerMonitorDelegate.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerMonitorDelegate.java
deleted file mode 100644
index 0cc3d67..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerMonitorDelegate.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.wst.server.core.internal;
-
-import org.eclipse.core.runtime.CoreException;
-
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.ServerPort;
-/**
- * An interface to a TCP/IP monitor.
- */
-public abstract class ServerMonitorDelegate {
-	/**
-	 * Start monitoring the given port, and return the port number to
-	 * tunnel requests through. The monitorPort is the new port to use, or
-	 * -1 to pick a random port.
-	 * 
-	 * @param server a server
-	 * @param port a port
-	 * @param monitorPort the port used for monitoring
-	 * @return the port used for monitoring
-	 * @throws CoreException if anything goes wrong
-	 */
-	public abstract int startMonitoring(IServer server, ServerPort port, int monitorPort) throws CoreException;
-
-	/**
-	 * Stop monitoring the given port.
-	 * 
-	 * @param server a server
-	 * @param port a port
-	 */
-	public abstract void stopMonitoring(IServer server, ServerPort port);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerMonitorManager.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerMonitorManager.java
deleted file mode 100644
index a91f4a7..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerMonitorManager.java
+++ /dev/null
@@ -1,371 +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.internal;
-
-import java.util.*;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.wst.server.core.*;
-/**
- * 
- */
-public class ServerMonitorManager implements IServerMonitorManager {
-	private static final String MONITOR_DATA_FILE = "monitors.xml";
-	
-	protected static ServerMonitorManager instance;
-
-	protected List ports = new ArrayList(); 
-	protected ServerMonitor monitor;
-	
-	class MonitoredPort implements IMonitoredServerPort {
-		protected IServer server;
-		protected ServerPort port;
-		protected int newPort = -1;
-		protected String[] content;
-		public boolean started;
-		
-		public MonitoredPort(IServer server, ServerPort port, int newPort, String[] content) {
-			this.server = server;
-			this.port = port;
-			this.newPort = newPort;
-			this.content = content;
-		}
-		
-		public MonitoredPort(IMemento memento, IProgressMonitor monitor) {
-			load(memento, monitor);
-		}
-		
-		public IServer getServer() {
-			return server;
-		}
-		
-		public ServerPort getServerPort() {
-			return port;
-		}
-		
-		public int getMonitorPort() {
-			return newPort;
-		}
-		
-		public void setMonitorPort(int p) {
-			newPort = p;
-		}
-		
-		public String[] getContentTypes() {
-			if (content == null)
-				return new String[0];
-			return content;
-		}
-		
-		public boolean isStarted() {
-			return started;
-		}
-		
-		protected void setStarted(boolean s) {
-			started = s;
-		}
-		
-		public boolean equals(Object obj) {
-			if (!(obj instanceof MonitoredPort))
-				return false;
-			MonitoredPort mp = (MonitoredPort) obj;
-			if (!mp.server.equals(server))
-				return false;
-			if (!mp.port.equals(port))
-				return false;
-			if (newPort != mp.newPort)
-				return false;
-			if (content == null && mp.content != null)
-				return false;
-			if (content != null && mp.content == null)
-				return false;
-			if (content != null) {
-				int size = content.length;
-				if (size != mp.content.length)
-					return false;
-				for (int i = 0; i < size; i++)
-					if (!content[i].equals(mp.content[i]))
-						return false;
-			}
-			return true;
-		}
-		
-		protected boolean canSave() {
-			return (port.getId() != null);
-		}
-		
-		protected void save(IMemento memento) {
-			memento.putString("serverId", server.getId());
-			if (newPort != -1)
-				memento.putString("port", newPort + "");
-			memento.putString("portId", port.getId());
-			memento.putBoolean("started", started);
-			
-			if (content != null) {
-				StringBuffer sb = new StringBuffer();
-				int size = content.length;
-				for (int i = 0; i < size; i++) {
-					if (i > 0)
-						sb.append(",");
-					sb.append(content[i]);
-				}
-				memento.putString("contentTypes", sb.toString());
-			}
-		}
-		
-		protected void load(IMemento memento, IProgressMonitor monitor2) {
-			String serverId = memento.getString("serverId");
-			server = null;
-			if (serverId != null)
-				server = ServerCore.findServer(serverId);
-			if (server == null)
-				throw new RuntimeException("Server could not be found: " + serverId + " " + server);
-			String newPortStr = memento.getString("port");
-			if (newPortStr != null && newPortStr.length() > 0)
-				newPort = Integer.parseInt(newPortStr);
-			String portId = memento.getString("portId");
-			
-			ServerPort[] ports2 = server.getServerPorts(monitor2);
-			if (ports2 != null) {
-				int size = ports2.length;
-				for (int i = 0; port == null && i < size; i++) {
-					ServerPort sp = ports2[i];
-					if (sp.getId() != null && sp.getId().equals(portId))
-						port = sp;
-				}
-			}
-			if (port == null)
-				throw new RuntimeException("Could not relocate port: " + serverId + " " + server + " " + portId);
-			
-			String s = memento.getString("contentTypes");
-			if (s != null)
-				content = ServerPlugin.tokenize(s, ",");
-			
-			Boolean b = memento.getBoolean("started");
-			if (b != null && b.booleanValue()) {
-				try {
-					newPort = monitor.startMonitoring(server, port, newPort);
-					started = true;
-				} catch (CoreException e) {
-					Trace.trace(Trace.WARNING, "Could not restart server monitor", e);
-				}
-			}
-		}
-	}
-
-	public ServerMonitorManager() {
-		IServerMonitor[] monitors = ServerPlugin.getServerMonitors();
-		if (monitors != null && monitors.length > 0)
-			monitor = (ServerMonitor) monitors[0];
-		
-		instance = this;
-		loadMonitors();
-	}
-	
-	public static ServerMonitorManager getInstance() {
-		if (instance == null)
-			new ServerMonitorManager();
-		return instance;
-	}
-	
-	public static void shutdown() {
-		if (instance == null)
-			return;
-		instance.saveMonitors();
-	}
-
-	/**
-	 * Returns the monitor that is currently being used.
-	 *  
-	 * @return the current server monitor
-	 */
-	public IServerMonitor getCurrentServerMonitor() {
-		return monitor;
-	}
-
-	/**
-	 * Switch to use a different server monitor. All existing monitors will be
-	 * removed from the current monitor and added to the new monitor.
-	 * 
-	 * @param newMonitor
-	 * @throws org.eclipse.core.runtime.CoreException
-	 */
-	public void setServerMonitor(IServerMonitor newMonitor) throws CoreException {
-		throw new CoreException(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, "Not implemented yet", null));
-	}
-
-	/**
-	 * Returns the list of ports that are currently being monitored.
-	 *
-	 * @param server a server
-	 * @return a possibly empty array of monitored server ports
-	 */
-	public IMonitoredServerPort[] getMonitoredPorts(IServer server) {
-		List list = new ArrayList();
-		Iterator iterator = ports.iterator();
-		while (iterator.hasNext()) {
-			MonitoredPort mp = (MonitoredPort) iterator.next();
-			if (mp.server.equals(server))
-				list.add(mp);
-		}
-		
-		IMonitoredServerPort[] msp = new IMonitoredServerPort[list.size()];
-		list.toArray(msp);
-		return msp;
-	}
-
-	/**
-	 * Starts monitoring the given port, and returns the new port # to use that will
-	 * route to the monitored port.
-	 * 
-	 * @param server a server
-	 * @param port a port
-	 * @param monitorPort the port used for monitoring
-	 * @param content the content
-	 * @return a monitored server port
-	 */
-	public IMonitoredServerPort createMonitor(IServer server, ServerPort port, int monitorPort, String[] content) {
-		if (port == null || monitor == null)
-			return null;
-		
-		MonitoredPort mp = new MonitoredPort(server, port, monitorPort, content);
-		ports.add(mp);
-		return mp;
-	}
-
-	/**
-	 * Stop monitoring the given port. Throws a CoreException if there was a problem
-	 * stopping the monitoring
-	 *
-	 * @param port
-	 */
-	public void removeMonitor(IMonitoredServerPort port) {
-		if (port == null)
-			return;
-
-		try {
-			ports.remove(port);
-			if (port.isStarted())
-				monitor.stopMonitoring(port.getServer(), port.getServerPort());
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not remove monitor", e);
-		}
-	}
-
-	/**
-	 * Start the monitor. If the msp port is -1, it will be updated to the port that is actually in use.
-	 * 
-	 * @param msp
-	 * @throws CoreException
-	 */
-	public void startMonitor(IMonitoredServerPort msp) throws CoreException {
-		if (msp == null || msp.isStarted())
-			return;
-		
-		MonitoredPort port = (MonitoredPort) msp;
-		port.setMonitorPort(monitor.startMonitoring(msp.getServer(), msp.getServerPort(), msp.getMonitorPort()));
-		port.setStarted(true);
-	}
-
-	/**
-	 * Stop monitoring.
-	 * 
-	 * @param msp
-	 */
-	public void stopMonitor(IMonitoredServerPort msp) {
-		if (msp == null || !msp.isStarted())
-			return;
-		MonitoredPort port = (MonitoredPort) msp;
-		monitor.stopMonitoring(msp.getServer(), msp.getServerPort());
-		port.setStarted(false);
-	}
-
-	/**
-	 * Returns the mapped port to use when making requests to the given server
-	 * and port number. Returns the existing port number if the port is not being
-	 * monitored.
-	 * 
-	 * @param server a server
-	 * @param port a port number
-	 * @param content the content
-	 * @return the port used for monitoring
-	 */
-	public int getMonitoredPort(IServer server, int port, String content) {
-		try {
-			Iterator iterator = ports.iterator();
-			while (iterator.hasNext()) {
-				MonitoredPort mp = (MonitoredPort) iterator.next();
-				if (mp.isStarted() && mp.server.equals(server) && mp.port.getPort() == port) {
-					String[] contentTypes = mp.getContentTypes();
-					boolean found = false;
-					if (content == null || contentTypes != null) {
-						int size = contentTypes.length;
-						for (int i = 0; i < size; i++)
-							if (content.equals(contentTypes[i]))
-								found = true;
-					} else
-						found = true;
-					if (found && mp.newPort != -1)
-						return mp.newPort;
-				}
-			}
-		} catch (Exception e) {
-			// ignore
-		}
-		return port;
-	}
-	
-	protected void saveMonitors() {
-		String filename = ServerPlugin.getInstance().getStateLocation().append(MONITOR_DATA_FILE).toOSString();
-		try {
-			XMLMemento memento = XMLMemento.createWriteRoot("monitors");
-
-			Iterator iterator = ports.iterator();
-			while (iterator.hasNext()) {
-				MonitoredPort mp = (MonitoredPort) iterator.next();
-				if (mp.canSave()) {
-					IMemento child = memento.createChild("monitor");
-					mp.save(child);
-				}
-			}
-			
-			memento.saveToFile(filename);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error saving monitor info", e);
-		}
-	}
-	
-	protected void loadMonitors() {
-		Trace.trace(Trace.FINEST, "Loading monitor info");
-		String filename = ServerPlugin.getInstance().getStateLocation().append(MONITOR_DATA_FILE).toOSString();
-		
-		try {
-			IMemento memento = XMLMemento.loadMemento(filename);
-			
-			IMemento[] children = memento.getChildren("monitor");
-			int size = children.length;
-			
-			for (int i = 0; i < size; i++) {
-				try {
-					MonitoredPort mp = new MonitoredPort(children[i], null);
-					ports.add(mp);
-				} catch (Exception e) {
-					Trace.trace(Trace.WARNING, "Could not load monitor: " + e);
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not load monitor info: " + e.getMessage());
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerNotificationManager.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerNotificationManager.java
deleted file mode 100644
index 0e9239f..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerNotificationManager.java
+++ /dev/null
@@ -1,155 +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.internal;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.wst.server.core.IServerListener;
-import org.eclipse.wst.server.core.ServerEvent;
-/**
- * Notification manager for server.
- * 
- * @since 1.0
- */
-public class ServerNotificationManager {
-	private List listenerList = new ArrayList();
-	
-	/**
-	 * For masking event on all changes.
-	 */
-	public static final int ALL_EVENTS = 0xFFFF;
-	
-	private class ListenerEntry {
-		private IServerListener listener;
-		private int eventMask;
-		
-		private ListenerEntry(IServerListener curListener, int curEventMask) {
-			listener = curListener;
-			eventMask = curEventMask;
-		}
-		
-		IServerListener getListener() {
-			return listener;
-		}
-		
-		int getEventMask() {
-			return eventMask;
-		}
-	}
-
-	/**
-	 * Create a new notification manager.
-	 */
-	public ServerNotificationManager() {
-		super();
-	}
-
-	/**
-	 * Add listener for all events.
-	 * 
-	 * @param curListener
-	 */
-	public void addListener(IServerListener curListener) {
-		addListener(curListener, ALL_EVENTS);
-	}
-	
-	/**
-	 * Add listener for the events specified by the mask.
-	 * 
-	 * @param curListener
-	 * @param eventMask
-	 */
-	public void addListener(IServerListener curListener, int eventMask) {
-		Trace.trace(Trace.FINEST, "->- Adding server listener to notification manager: " + curListener + " " + eventMask + " ->-");
-		if (curListener == null) {
-			return;
-		}
-		
-		synchronized (listenerList) {
-			listenerList.add(new ListenerEntry(curListener, eventMask));
-		}
-	}
-
-	protected void broadcastChange(ServerEvent event) {
-		Trace.trace(Trace.FINEST, "->- Broadcasting server event: " + event + " ->-");
-		if (event == null) {
-			return;
-		}
-		int eventKind = event.getKind();
-		Trace.trace(Trace.FINEST, "  Server event kind: " + eventKind + " ->-");
-		
-		// only notify listeners that listen to module event
-		int size;
-		ListenerEntry[] listeners;
-		synchronized (listenerList) {
-			size = listenerList.size();
-			listeners = (ListenerEntry[]) listenerList.toArray(new ListenerEntry[size]);
-		}
-		for (int i = 0; i < size; i++) {
-			ListenerEntry curEntry = listeners[i];
-			int mask = curEntry.getEventMask();
-
-			// check if the type of the event matches the mask, e.g. server or module change
-			boolean isTypeMatch = ((mask & eventKind & ServerEvent.SERVER_CHANGE) != 0) 
-					|| ((mask & eventKind & ServerEvent.MODULE_CHANGE) != 0);
-			// check the kind of change
-			boolean isKindMatch = (mask & eventKind ^ ServerEvent.SERVER_CHANGE ^ ServerEvent.MODULE_CHANGE) != 0;
-			
-			if (isTypeMatch && isKindMatch) {
-				Trace.trace(Trace.FINEST, "->- Firing server event to listener: " + curEntry.getListener() + " ->-");
-				try {
-					Trace.trace(Trace.LISTENERS, "  Firing server event to listener: " + curEntry.getListener());
-					curEntry.getListener().serverChanged(event);
-				} catch (Exception e) {
-					Trace.trace(Trace.SEVERE, "  Error firing server event: " + curEntry.getListener(), e);
-				}
-				Trace.trace(Trace.LISTENERS, "-<- Done Firing server event -<-");
-			}
-		}
-		Trace.trace(Trace.FINEST, "-<- Done broadcasting server event -<-");
-	}
-	
-	/**
-	 * Returns true if the listener list is not empty; otherwise, returns false.
-	 * 
-	 * @return true if the listener list is not empty; otherwise, returns false
-	 */
-	protected boolean hasListenerEntries() {
-		return listenerList.size() == 0;
-	}
-	
-	/**
-	 * Remove a listener from notification.
-	 * 
-	 * @param curListener
-	 */
-	public void removeListener(IServerListener curListener) {
-		Trace.trace(Trace.FINEST, "->- Removing server listener from notification manager: " + curListener + " ->-");
-		if (curListener == null) {
-			return;
-		}
-		ListenerEntry matchedListenerEntry = null;
-		Iterator listenerIter = listenerList.iterator();
-		while (matchedListenerEntry == null && listenerIter.hasNext()) {
-			ListenerEntry curEntry = (ListenerEntry)listenerIter.next();
-			if (curListener.equals(curEntry.getListener())) {
-				matchedListenerEntry = curEntry;
-			}
-		}
-		if (matchedListenerEntry != null) {
-			synchronized (listenerList) {
-				listenerList.remove(matchedListenerEntry);
-			}
-		}
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerPlugin.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerPlugin.java
deleted file mode 100644
index 1da6dfe..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerPlugin.java
+++ /dev/null
@@ -1,900 +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.internal;
-
-import java.io.*;
-import java.util.*;
-import java.text.DateFormat;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.server.core.IModuleArtifact;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.BundleEvent;
-import org.osgi.framework.BundleListener;
-/**
- * The main server plugin class.
- */
-public class ServerPlugin extends Plugin {
-	public static final String PROJECT_PREF_FILE = ".serverPreference";
-	
-	private static final String SHUTDOWN_JOB_FAMILY = "org.eclipse.wst.server.core.family";
-	
-	protected static final DateFormat df = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT);
-	protected static int num = 0;
-	
-	// cached copy of all launchable adapters
-	private static List launchableAdapters;
-
-	// cached copy of all launchable clients
-	private static List clients;
-	
-	// cached copy of all module factories
-	private static List moduleFactories;
-
-	// singleton instance of this class
-	private static ServerPlugin singleton;
-
-	// cached copy of all publish tasks
-	private static List publishTasks;
-	
-	//	cached copy of all server monitors
-	private static List monitors;
-	
-	//	cached copy of all runtime locators
-	private static List runtimeLocators;
-	
-	// cached copy of all module artifact adapters
-	private static List moduleArtifactAdapters;
-	
-	// bundle listener
-	private BundleListener bundleListener;
-
-	private static final String TEMP_DATA_FILE = "tmp-data.xml";
-
-	class TempDir {
-		String path;
-		int age;
-	}
-
-	// temp directories - String key to TempDir
-	protected Map tempDirHash;
-
-	/**
-	 * server core plugin id
-	 */
-	public static final String PLUGIN_ID = "org.eclipse.wst.server.core";
-
-	/**
-	 * Create the ServerPlugin.
-	 */
-	public ServerPlugin() {
-		super();
-		singleton = this;
-	}
-
-	/**
-	 * Returns the singleton instance of this plugin.
-	 *
-	 * @return org.eclipse.wst.server.core.internal.plugin.ServerPlugin
-	 */
-	public static ServerPlugin getInstance() {
-		return singleton;
-	}
-
-	/**
-	 * Returns a temporary directory that the requestor can use
-	 * throughout it's lifecycle. This is primary to be used by
-	 * server instances for working directories, instance specific
-	 * files, etc.
-	 *
-	 * <p>As long as the same key is used to call this method on
-	 * each use of the workbench, this method directory will return
-	 * the same directory. If the directory is not requested over a
-	 * period of time, the directory may be deleted and a new one
-	 * will be assigned on the next request. For this reason, a
-	 * server instance should request the temp directory on startup
-	 * if it wants to store files there. In all cases, the instance
-	 * should have a backup plan anyway, as this directory may be
-	 * deleted accidentally.</p>
-	 *
-	 * @param key
-	 * @return java.io.File
-	 */
-	public IPath getTempDirectory(String key) {
-		if (key == null)
-			return null;
-	
-		// first, look through hash of current directories
-		IPath statePath = ServerPlugin.getInstance().getStateLocation();
-		try {
-			TempDir dir = (TempDir) tempDirHash.get(key);
-			if (dir != null) {
-				dir.age = 0;
-				return statePath.append(dir.path);
-			}
-		} catch (Exception e) {
-			// ignore
-		}
-	
-		// otherwise, create a new directory
-	
-		// find first free directory
-		String path = null;
-		File dir = null;
-		int count = 0;
-		while (dir == null || dir.exists()) {
-			path = "tmp" + count;
-			dir = statePath.append(path).toFile();
-			count ++;
-		}
-	
-		dir.mkdirs();
-	
-		TempDir d = new TempDir();
-		d.path = path;
-		tempDirHash.put(key, d);
-		saveTempDirInfo();
-		return statePath.append(path);
-	}
-	
-	/**
-	 * Remove a temp directory.
-	 * @param key
-	 */
-	public void removeTempDirectory(String key) {
-		if (key == null)
-			return;
-		
-		IPath statePath = ServerPlugin.getInstance().getStateLocation();
-		try {
-			TempDir dir = (TempDir) tempDirHash.get(key);
-			if (dir != null) {
-				tempDirHash.remove(key);
-				saveTempDirInfo();
-				deleteDirectory(statePath.append(dir.path).toFile(), null);
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not remove temp directory", e);
-		}
-	}
-	
-	/**
-	 * Load the temporary directory information.
-	 */
-	private void loadTempDirInfo() {
-		Trace.trace(Trace.FINEST, "Loading temporary directory information");
-		IPath statePath = ServerPlugin.getInstance().getStateLocation();
-		String filename = statePath.append(TEMP_DATA_FILE).toOSString();
-	
-		tempDirHash = new HashMap();
-		try {
-			IMemento memento = XMLMemento.loadMemento(filename);
-	
-			IMemento[] children = memento.getChildren("temp-directory");
-			int size = children.length;
-			for (int i = 0; i < size; i++) {
-				String key = children[i].getString("key");
-	
-				TempDir d = new TempDir();
-				d.path = children[i].getString("path");
-				d.age = children[i].getInteger("age").intValue();
-				d.age++;
-	
-				tempDirHash.put(key, d);
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not load temporary directory information: " + e.getMessage());
-		}
-	}
-
-	/**
-	 * Convenience method for logging.
-	 *
-	 * @param status org.eclipse.core.runtime.IStatus
-	 */
-	public static void log(IStatus status) {
-		getInstance().getLog().log(status);
-	}
-
-	/**
-	 * Save the temporary directory information.
-	 */
-	private void saveTempDirInfo() {
-		// save remaining directories
-		IPath statePath = ServerPlugin.getInstance().getStateLocation();
-		String filename = statePath.append(TEMP_DATA_FILE).toOSString();
-	
-		try {
-			XMLMemento memento = XMLMemento.createWriteRoot("temp-directories");
-	
-			Iterator iterator = tempDirHash.keySet().iterator();
-			while (iterator.hasNext()) {
-				String key = (String) iterator.next();
-				TempDir d = (TempDir) tempDirHash.get(key);
-	
-				if (d.age < 5) {
-					IMemento child = memento.createChild("temp-directory");
-					child.putString("key", key);
-					child.putString("path", d.path);
-					child.putInteger("age", d.age);
-				} else
-					deleteDirectory(statePath.append(d.path).toFile(), null);
-			}
-	
-			memento.saveToFile(filename);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save temporary directory information", e);
-		}
-	}
-
-	protected void initializeDefaultPluginPreferences() {
-		ServerPreferences.getInstance().setDefaults();
-	}
-
-	/**
-	 * @see Plugin#start(org.osgi.framework.BundleContext)
-	 */
-	public void start(BundleContext context) throws Exception {
-		Trace.trace(Trace.CONFIG, "----->----- Server Core plugin startup ----->-----");
-		super.start(context);
-		
-		initializeDefaultPluginPreferences();
-
-		// load temp directory information
-		loadTempDirInfo();
-		
-		bundleListener = new BundleListener() {
-			public void bundleChanged(BundleEvent event) {
-				String bundleId = event.getBundle().getSymbolicName();
-				//System.out.println(event.getType() + " " + bundleId);
-				if (BundleEvent.STOPPED == event.getType() && ResourceManager.getInstance().isActiveBundle(bundleId))
-					stopBundle(bundleId);
-			}
-		};
-		context.addBundleListener(bundleListener);
-	}
-
-	protected void stopBundle(final String bundleId) {
-		class StopJob extends Job {
-			public StopJob() {
-				super("Disposing servers");
-			}
-			
-			public boolean belongsTo(Object family) {
-				return SHUTDOWN_JOB_FAMILY.equals(family);
-			}
-
-			public IStatus run(IProgressMonitor monitor2) {
-				ResourceManager.getInstance().shutdownBundle(bundleId);
-				return new Status(IStatus.OK, PLUGIN_ID, 0, "", null);
-			}
-		}
-		
-		StopJob job = new StopJob();
-		job.setUser(false);
-		job.schedule();
-	}
-
-	/**
-	 * @see Plugin#stop(org.osgi.framework.BundleContext)
-	 */
-	public void stop(BundleContext context) throws Exception {
-		Trace.trace(Trace.CONFIG, "-----<----- Server Core plugin shutdown -----<-----");
-		super.stop(context);
-		
-		ResourceManager.shutdown();
-		ServerMonitorManager.shutdown();
-		
-		try {
-			Platform.getJobManager().join(SHUTDOWN_JOB_FAMILY, null);
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Error waiting for shutdown job", e);
-		}
-		context.removeBundleListener(bundleListener);
-	}
-
-	public static String[] tokenize(String param, String delim) {
-		if (param == null)
-			return new String[0];
-		
-		List list = new ArrayList();
-		
-		StringTokenizer st = new StringTokenizer(param, delim);
-		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;
-	}
-
-	protected static List getModuleTypes(IConfigurationElement[] elements) {
-		List list = new ArrayList();
-		if (elements == null)
-			return list;
-	
-		int size = elements.length;
-		for (int i = 0; i < size; i++) {
-			String[] types = tokenize(elements[i].getAttribute("types"), ",");
-			String[] versions = tokenize(elements[i].getAttribute("versions"), ",");
-			int sizeT = types.length;
-			int sizeV = versions.length;
-			for (int j = 0; j < sizeT; j++) {
-				for (int k = 0; k < sizeV; k++) {
-					ModuleType module = new ModuleType(types[j], versions[k]);
-					list.add(module);
-				}
-			}
-		}
-		return list;
-	}
-	
-	public static String generateId() {
-		String s = df.format(new Date()).toString() + num++;
-		s = s.replace(' ', '_');
-		s = s.replace(':', '_');
-		s = s.replace('/', '_');
-		s = s.replace('\\', '_');
-		return s;
-	}
-
-	/**
-	 * Returns true if ids contains id.
-	 * 
-	 * @param ids
-	 * @param id
-	 * @return true if the id is supported
-	 */
-	public static boolean supportsType(String[] ids, String id) {
-		if (id == null || id.length() == 0)
-			return false;
-
-		if (ids == null)
-			return true;
-		
-		int size = ids.length;
-		for (int i = 0; i < size; i++) {
-			if (ids[i].endsWith("*")) {
-				if (id.length() >= ids[i].length() && id.startsWith(ids[i].substring(0, ids[i].length() - 1)))
-					return true;
-			} else if (id.equals(ids[i]))
-				return true;
-		}
-		return false;
-	}
-	
-	/**
-	 * Recursively delete a directory.
-	 *
-	 * @param dir java.io.File
-	 * @param monitor a progress monitor, or <code>null</code> if no progress
-	 *    reporting is required
-	 */
-	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);
-		}
-	}
-	
-	/**
-	 * Returns an array of all known launchable adapters.
-	 * <p>
-	 * A new array is returned on each call, so clients may store or modify the result.
-	 * </p>
-	 * 
-	 * @return a possibly-empty array of launchable adapters {@link ILaunchableAdapter}
-	 */
-	public static ILaunchableAdapter[] getLaunchableAdapters() {
-		if (launchableAdapters == null)
-			loadLaunchableAdapters();
-		ILaunchableAdapter[] la = new ILaunchableAdapter[launchableAdapters.size()];
-		launchableAdapters.toArray(la);
-		return la;
-	}
-
-	/**
-	 * Returns an array of all known client 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 client instances {@link IClient}
-	 */
-	public static IClient[] getClients() {
-		if (clients == null)
-			loadClients();
-		IClient[] c = new IClient[clients.size()];
-		clients.toArray(c);
-		return c;
-	}
-	
-	/**
-	 * Load the launchable adapters extension point.
-	 */
-	private static synchronized void loadLaunchableAdapters() {
-		if (launchableAdapters != null)
-			return;
-		Trace.trace(Trace.EXTENSION_POINT, "->- Loading .launchableAdapters extension point ->-");
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IConfigurationElement[] cf = registry.getConfigurationElementsFor(ServerPlugin.PLUGIN_ID, "launchableAdapters");
-
-		int size = cf.length;
-		launchableAdapters = new ArrayList(size);
-		for (int i = 0; i < size; i++) {
-			try {
-				launchableAdapters.add(new LaunchableAdapter(cf[i]));
-				Trace.trace(Trace.EXTENSION_POINT, "  Loaded launchableAdapter: " + cf[i].getAttribute("id"));
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "  Could not load launchableAdapter: " + cf[i].getAttribute("id"), t);
-			}
-		}
-		Trace.trace(Trace.EXTENSION_POINT, "-<- Done loading .launchableAdapters extension point -<-");
-	}
-
-	/**
-	 * Load the client extension point.
-	 */
-	private static synchronized void loadClients() {
-		if (clients != null)
-			return;
-		Trace.trace(Trace.EXTENSION_POINT, "->- Loading .clients extension point ->-");
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IConfigurationElement[] cf = registry.getConfigurationElementsFor(ServerPlugin.PLUGIN_ID, "clients");
-
-		int size = cf.length;
-		clients = new ArrayList(size);
-		for (int i = 0; i < size; i++) {
-			try {
-				clients.add(new Client(cf[i]));
-				Trace.trace(Trace.EXTENSION_POINT, "  Loaded clients: " + cf[i].getAttribute("id"));
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "  Could not load clients: " + cf[i].getAttribute("id"), t);
-			}
-		}
-		Trace.trace(Trace.EXTENSION_POINT, "-<- Done loading .clients extension point -<-");
-	}
-	
-	/**
-	 * Returns an array of all known publish tasks.
-	 * <p>
-	 * A new array is returned on each call, so clients may store or modify the result.
-	 * </p>
-	 * 
-	 * @return a possibly-empty array of publish tasks instances {@link IPublishTask}
-	 */
-	public static IPublishTask[] getPublishTasks() {
-		if (publishTasks == null)
-			loadPublishTasks();
-		IPublishTask[] st = new IPublishTask[publishTasks.size()];
-		publishTasks.toArray(st);
-		return st;
-	}
-	
-	/**
-	 * Load the publish task extension point.
-	 */
-	private static synchronized void loadPublishTasks() {
-		if (publishTasks != null)
-			return;
-		Trace.trace(Trace.EXTENSION_POINT, "->- Loading .publishTasks extension point ->-");
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IConfigurationElement[] cf = registry.getConfigurationElementsFor(ServerPlugin.PLUGIN_ID, "publishTasks");
-
-		int size = cf.length;
-		publishTasks = new ArrayList(size);
-		for (int i = 0; i < size; i++) {
-			try {
-				publishTasks.add(new PublishTask(cf[i]));
-				Trace.trace(Trace.EXTENSION_POINT, "  Loaded publishTask: " + cf[i].getAttribute("id"));
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "  Could not load publishTask: " + cf[i].getAttribute("id"), t);
-			}
-		}
-		
-		sortOrderedList(publishTasks);
-		
-		Trace.trace(Trace.EXTENSION_POINT, "-<- Done loading .publishTasks extension point -<-");
-	}
-	
-	/**
-	 * Sort the given list of IOrdered items into indexed order.
-	 *
-	 * @param list java.util.List
-	 * @return java.util.List
-	 */
-	private static List sortOrderedList(List list) {
-		if (list == null)
-			return null;
-
-		int size = list.size();
-		for (int i = 0; i < size - 1; i++) {
-			for (int j = i + 1; j < size; j++) {
-				IOrdered a = (IOrdered) list.get(i);
-				IOrdered b = (IOrdered) list.get(j);
-				if (a.getOrder() > b.getOrder()) {
-					Object temp = a;
-					list.set(i, b);
-					list.set(j, temp);
-				}
-			}
-		}
-		return list;
-	}
-	
-	/**
-	 * Returns an array of all known module module factories.
-	 * <p>
-	 * A new array is returned on each call, so clients may store or modify the result.
-	 * </p>
-	 * 
-	 * @return the array of module factories {@link ModuleFactory}
-	 */
-	public static ModuleFactory[] getModuleFactories() {
-		if (moduleFactories == null)
-			loadModuleFactories();
-		
-		ModuleFactory[] mf = new ModuleFactory[moduleFactories.size()];
-		moduleFactories.toArray(mf);
-		return mf;
-	}
-	
-	/**
-	 * Returns the module factory with the given id, or <code>null</code>
-	 * if none. This convenience method searches the list of known
-	 * module factories ({@link #getModuleFactories()}) for the one a matching
-	 * module factory id ({@link ModuleFactory#getId()}). The id may not be null.
-	 *
-	 * @param id the module factory id
-	 * @return the module factory, or <code>null</code> if there is no module factory
-	 * with the given id
-	 */
-	public static ModuleFactory findModuleFactory(String id) {
-		if (id == null)
-			throw new IllegalArgumentException();
-
-		if (moduleFactories == null)
-			loadModuleFactories();
-		
-		Iterator iterator = moduleFactories.iterator();
-		while (iterator.hasNext()) {
-			ModuleFactory factory = (ModuleFactory) iterator.next();
-			if (id.equals(factory.getId()))
-				return factory;
-		}
-		return null;
-	}
-	
-	/**
-	 * Load the module factories extension point.
-	 */
-	private static synchronized void loadModuleFactories() {
-		if (moduleFactories != null)
-			return;
-		Trace.trace(Trace.EXTENSION_POINT, "->- Loading .moduleFactories extension point ->-");
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IConfigurationElement[] cf = registry.getConfigurationElementsFor(ServerPlugin.PLUGIN_ID, "moduleFactories");
-
-		int size = cf.length;
-		moduleFactories = new ArrayList(size);
-		for (int i = 0; i < size; i++) {
-			try {
-				moduleFactories.add(new ModuleFactory(cf[i]));
-				Trace.trace(Trace.EXTENSION_POINT, "  Loaded moduleFactories: " + cf[i].getAttribute("id"));
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "  Could not load moduleFactories: " + cf[i].getAttribute("id"), t);
-			}
-		}
-		sortOrderedList(moduleFactories);
-		
-		Trace.trace(Trace.EXTENSION_POINT, "-<- Done loading .moduleFactories extension point -<-");
-	}
-	
-	/**
-	 * Returns all projects contained by the server. This included the
-	 * projects that are in the configuration, as well as their
-	 * children, and their children...
-	 *
-	 * @param server a server
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return a possibly-empty array of module instances {@link IModule}
-	 */
-	/*public static IModule[] getAllContainedModules(IServer server, IProgressMonitor monitor) {
-		//Trace.trace("> getAllContainedModules: " + getName(configuration));
-		List modules = new ArrayList();
-		if (server == null)
-			return new IModule[0];
-
-		// get all of the directly contained projects
-		IModule[] deploys = server.getModules();
-		if (deploys == null || deploys.length == 0)
-			return new IModule[0];
-
-		int size = deploys.length;
-		for (int i = 0; i < size; i++) {
-			if (deploys[i] != null && !modules.contains(deploys[i]))
-				modules.add(deploys[i]);
-		}
-
-		//Trace.trace("  getAllContainedModules: root level done");
-
-		// get all of the module's children
-		int count = 0;
-		while (count < modules.size()) {
-			IModule module = (IModule) modules.get(count);
-			try {
-				IModule[] children = server.getChildModules(module, monitor);
-				if (children != null) {
-					size = children.length;
-					for (int i = 0; i < size; i++) {
-						if (children[i] != null && !modules.contains(children[i]))
-							modules.add(children[i]);
-					}
-				}
-			} catch (Exception e) {
-				Trace.trace(Trace.SEVERE, "Error getting child modules for: " + module.getName(), e);
-			}
-			count ++;
-		}
-
-		//Trace.trace("< getAllContainedModules");
-
-		IModule[] modules2 = new IModule[modules.size()];
-		modules.toArray(modules2);
-		return modules2;
-	}*/
-	
-	/**
-	 * Returns an array of all known server monitor 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 server monitor instances {@link IServerMonitor}
-	 */
-	public static IServerMonitor[] getServerMonitors() {
-		if (monitors == null)
-			loadServerMonitors();
-		IServerMonitor[] sm = new IServerMonitor[monitors.size()];
-		monitors.toArray(sm);
-		return sm;
-	}
-	
-	/**
-	 * Load the server monitor extension point.
-	 */
-	private static synchronized void loadServerMonitors() {
-		if (monitors != null)
-			return;
-		Trace.trace(Trace.EXTENSION_POINT, "->- Loading .serverMonitors extension point ->-");
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IConfigurationElement[] cf = registry.getConfigurationElementsFor(ServerPlugin.PLUGIN_ID, "internalServerMonitors");
-
-		int size = cf.length;
-		monitors = new ArrayList(size);
-		for (int i = 0; i < size; i++) {
-			try {
-				monitors.add(new ServerMonitor(cf[i]));
-				Trace.trace(Trace.EXTENSION_POINT, "  Loaded serverMonitor: " + cf[i].getAttribute("id"));
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "  Could not load serverMonitor: " + cf[i].getAttribute("id"), t);
-			}
-		}
-	
-		Trace.trace(Trace.EXTENSION_POINT, "-<- Done loading .serverMonitors extension point -<-");
-	}
-	
-	/**
-	 * Returns an array of all known runtime locator 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 locator instances {@link IRuntimeLocator}
-	 */
-	public static IRuntimeLocator[] getRuntimeLocators() {
-		if (runtimeLocators == null)
-			loadRuntimeLocators();
-		IRuntimeLocator[] rl = new IRuntimeLocator[runtimeLocators.size()];
-		runtimeLocators.toArray(rl);
-		return rl;
-	}
-	
-	/**
-	 * Load the runtime locators.
-	 */
-	private static synchronized void loadRuntimeLocators() {
-		if (runtimeLocators != null)
-			return;
-		Trace.trace(Trace.EXTENSION_POINT, "->- Loading .runtimeLocators extension point ->-");
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IConfigurationElement[] cf = registry.getConfigurationElementsFor(ServerPlugin.PLUGIN_ID, "runtimeLocators");
-
-		int size = cf.length;
-		runtimeLocators = new ArrayList(size);
-		for (int i = 0; i < size; i++) {
-			try {
-				RuntimeLocator runtimeLocator = new RuntimeLocator(cf[i]);
-				runtimeLocators.add(runtimeLocator);
-				Trace.trace(Trace.EXTENSION_POINT, "  Loaded runtimeLocator: " + cf[i].getAttribute("id"));
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "  Could not load runtimeLocator: " + cf[i].getAttribute("id"), t);
-			}
-		}
-		
-		Trace.trace(Trace.EXTENSION_POINT, "-<- Done loading .runtimeLocators extension point -<-");
-	}
-	
-	/**
-	 * Returns an array of all module artifact adapters.
-	 *
-	 * @return a possibly empty array of module artifact adapters
-	 */
-	protected static ModuleArtifactAdapter[] getModuleArtifactAdapters() {
-		if (moduleArtifactAdapters == null)
-			loadModuleArtifactAdapters();
-		
-		ModuleArtifactAdapter[] moa = new ModuleArtifactAdapter[moduleArtifactAdapters.size()];
-		moduleArtifactAdapters.toArray(moa);
-		return moa;
-	}
-	
-	/**
-	 * Load the module artifact adapters extension point.
-	 */
-	private static synchronized void loadModuleArtifactAdapters() {
-		if (moduleArtifactAdapters != null)
-			return;
-		Trace.trace(Trace.EXTENSION_POINT, "->- Loading .moduleArtifactAdapters extension point ->-");
-		IExtensionRegistry registry = Platform.getExtensionRegistry();
-		IConfigurationElement[] cf = registry.getConfigurationElementsFor(ServerPlugin.PLUGIN_ID, "moduleArtifactAdapters");
-
-		int size = cf.length;
-		moduleArtifactAdapters = new ArrayList(size);
-		for (int i = 0; i < size; i++) {
-			try {
-				moduleArtifactAdapters.add(new ModuleArtifactAdapter(cf[i]));
-				Trace.trace(Trace.EXTENSION_POINT, "  Loaded moduleArtifactAdapter: " + cf[i].getAttribute("id"));
-			} catch (Throwable t) {
-				Trace.trace(Trace.SEVERE, "  Could not load moduleArtifactAdapter: " + cf[i].getAttribute("id"), t);
-			}
-		}
-		
-		// sort by index to put lower numbers first in order
-		size = moduleArtifactAdapters.size();
-		for (int i = 0; i < size-1; i++) {
-			for (int j = i+1; j < size; j++) {
-				ModuleArtifactAdapter a = (ModuleArtifactAdapter) moduleArtifactAdapters.get(i);
-				ModuleArtifactAdapter b = (ModuleArtifactAdapter) moduleArtifactAdapters.get(j);
-				if (a.getPriority() < b.getPriority()) {
-					moduleArtifactAdapters.set(i, b);
-					moduleArtifactAdapters.set(j, a);
-				}
-			}
-		}
-		
-		Trace.trace(Trace.EXTENSION_POINT, "-<- Done loading .moduleArtifactAdapters extension point -<-");
-	}
-	
-	/**
-	 * Returns <code>true</code> if a module artifact may be available for the given object,
-	 * and <code>false</code> otherwise.
-	 *
-	 * @param obj an object
-	 * @return <code>true</code> if there is a module artifact adapter
-	 */
-	public static boolean hasModuleArtifact(Object obj) {
-		Trace.trace(Trace.FINEST, "ServerUIPlugin.hasModuleArtifact() " + obj);
-		ModuleArtifactAdapter[] adapters = getModuleArtifactAdapters();
-		if (adapters != null) {
-			int size = adapters.length;
-			for (int i = 0; i < size; i++) {
-				try {
-					if (adapters[i].isEnabled(obj)) {
-						Trace.trace(Trace.FINER, "Run On Server for " + obj + " is enabled by " + adapters[i].getId());
-						return true;
-					}
-				} catch (CoreException ce) {
-					Trace.trace(Trace.WARNING, "Could not use moduleArtifactAdapter", ce);
-				}
-			}
-		}
-		
-		return false;
-	}
-
-	/**
-	 * Returns a module artifact if one can be found without loading plugins.
-	 * 
-	 * @param obj
-	 * @return a module artifact, or null
-	 */
-	public static IModuleArtifact getModuleArtifact(Object obj) {
-		Trace.trace(Trace.FINEST, "ServerUIPlugin.getModuleArtifact() " + obj);
-		ModuleArtifactAdapter[] adapters = getModuleArtifactAdapters();
-		if (adapters != null) {
-			int size = adapters.length;
-			for (int i = 0; i < size; i++) {
-				try {
-					if (adapters[i].isEnabled(obj)) {
-						IModuleArtifact ma = adapters[i].getModuleArtifact(obj);
-						if (ma != null)
-							return ma;
-						/*if (Platform.getAdapterManager().hasAdapter(obj, MODULE_ARTIFACT_CLASS)) {
-							return (IModuleArtifact) Platform.getAdapterManager().getAdapter(obj, MODULE_ARTIFACT_CLASS);
-						}*/
-					}
-				} catch (Exception e) {
-					Trace.trace(Trace.WARNING, "Could not use moduleArtifactAdapter " + adapters[i], e);
-				}
-			}
-		}
-		
-		return null;
-	}
-
-	/**
-	 * Returns a module artifact if possible, loading any plugins required.
-	 * 
-	 * @param obj
-	 * @return a module artifact, or null
-	 */
-	public static IModuleArtifact loadModuleArtifact(Object obj) {
-		Trace.trace(Trace.FINEST, "ServerUIPlugin.loadModuleArtifact() " + obj);
-		ModuleArtifactAdapter[] adapters = getModuleArtifactAdapters();
-		if (adapters != null) {
-			int size = adapters.length;
-			for (int i = 0; i < size; i++) {
-				try {
-					if (adapters[i].isEnabled(obj)) {
-						IModuleArtifact ma = adapters[i].getModuleArtifact(obj);
-						if (ma != null)
-							return ma;
-						/*if (Platform.getAdapterManager().hasAdapter(obj, MODULE_ARTIFACT_CLASS)) {
-							return (IModuleArtifact) Platform.getAdapterManager().loadAdapter(obj, MODULE_ARTIFACT_CLASS);
-						}*/
-					}
-				} catch (Exception e) {
-					Trace.trace(Trace.WARNING, "Could not use moduleArtifactAdapter " + adapters[i], e);
-				}
-			}
-		}
-		
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerPreferences.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerPreferences.java
deleted file mode 100644
index 09634fc..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerPreferences.java
+++ /dev/null
@@ -1,315 +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.internal;
-
-import org.eclipse.core.runtime.*;
-/**
- * Helper class that stores preference information for server tools.
- */
-public class ServerPreferences {
-	private static final String PREF_AUTO_RESTART = "auto-restart";
-	private static final String PREF_AUTO_PUBLISH = "auto-publish";
-	private static final String PREF_CREATE_IN_WORKSPACE = "create-workspace";
-	private static final String PREF_MODULE_START_TIMEOUT = "module-start-timeout";
-	
-	private static final String PREF_AUTO_PUBLISH_LOCAL = "auto-publish-local";
-	private static final String PREF_AUTO_PUBLISH_LOCAL_TIME = "auto-publish-local-time";
-	private static final String PREF_AUTO_PUBLISH_REMOTE = "auto-publish-remote";
-	private static final String PREF_AUTO_PUBLISH_REMOTE_TIME = "auto-publish-remote-time";
-	
-	private static final String PREF_MACHINE_SPEED = "machine-speed";
-
-	private Preferences preferences;
-
-	protected static ServerPreferences instance;
-
-	/**
-	 * ServerPreference constructor comment.
-	 */
-	private ServerPreferences() {
-		super();
-		preferences = ServerPlugin.getInstance().getPluginPreferences();
-	}
-
-	/**
-	 * Returns the static instance.
-	 * 
-	 * @return the static instance
-	 */
-	public static ServerPreferences getInstance() {
-		if (instance == null)
-			instance = new ServerPreferences();
-		return instance;
-	}
-
-	/**
-	 * Returns whether servers will be automatically restarted when
-	 * required.
-	 *
-	 * @return boolean
-	 */
-	public boolean isAutoRestarting() {
-		return preferences.getBoolean(PREF_AUTO_RESTART);
-	}
-
-	/**
-	 * Returns whether servers will be automatically restarted when
-	 * required.
-	 *
-	 * @return boolean
-	 */
-	public boolean isDefaultAutoRestarting() {
-		return false;
-	}
-
-	/**
-	 * Returns whether publishing should occur before starting the
-	 * server.
-	 *
-	 * @return boolean
-	 */
-	public boolean isAutoPublishing() {
-		return preferences.getBoolean(PREF_AUTO_PUBLISH);
-	}
-	
-	/**
-	 * Returns whether publishing should occur before starting the
-	 * server.
-	 *
-	 * @return boolean
-	 */
-	public boolean isDefaultAutoPublishing() {
-		return true;
-	}
-	
-	/**
-	 * Returns whether servers and configurations should be created in the
-	 * workspace (as opposed to in metadata).
-	 *
-	 * @return boolean
-	 */
-	public boolean isCreateResourcesInWorkspace() {
-		return preferences.getBoolean(PREF_CREATE_IN_WORKSPACE);
-	}
-
-	/**
-	 * Returns whether servers and configurations should be created in the
-	 * workspace (as opposed to in metadata) by default.
-	 *
-	 * @return boolean
-	 */
-	public boolean isDefaultCreateResourcesInWorkspace() {
-		return false;
-	}
-
-	/**
-	 * Set whether servers and configurations should be created in the
-	 * workspace (as opposed to in metadata).
-	 *
-	 * @param b
-	 */
-	public void setCreateResourcesInWorkspace(boolean b) {
-		preferences.setValue(PREF_CREATE_IN_WORKSPACE, b);
-		ServerPlugin.getInstance().savePluginPreferences();
-	}
-
-	/**
-	 * Set whether servers will be automatically restarted when
-	 * they need a restart.
-	 *
-	 * @param value
-	 */
-	public void setAutoRestarting(boolean value) {
-		preferences.setValue(PREF_AUTO_RESTART, value);
-		ServerPlugin.getInstance().savePluginPreferences();
-	}
-
-	/**
-	 * Set whether publishing should happen before the server starts.
-	 *
-	 * @param value
-	 */
-	public void setAutoPublishing(boolean value) {
-		preferences.setValue(PREF_AUTO_PUBLISH, value);
-		ServerPlugin.getInstance().savePluginPreferences();
-	}
-
-	/**
-	 * Returns the module start timeout.
-	 * 
-	 * @return the module start timeout
-	 */
-	public int getModuleStartTimeout() {
-		return preferences.getInt(PREF_MODULE_START_TIMEOUT);
-	}
-
-	/**
-	 * Return the machine speed index, from 1 to 10.
-	 * 
-	 * @return the relative speed
-	 */
-	public int getMachineSpeed() {
-		return preferences.getInt(PREF_MACHINE_SPEED);
-	}
-	
-	/**
-	 * Return the default machine speed index, 6.
-	 * 
-	 * @return the default speed index
-	 */
-	public int getDefaultMachineSpeed() {
-		return 6;
-	}
-
-	/**
-	 * Sets the relative machine speed index, from 1 to 10.
-	 * 
-	 * @param speed the relative speed 
-	 */
-	public void setMachineSpeed(int speed) {
-		preferences.setValue(PREF_MACHINE_SPEED, speed);
-	}
-	
-	/**
-	 * Returns the default setting for local auto-publishing.
-	 * 
-	 * @return int
-	 */
-	public boolean getDefaultAutoPublishLocal() {
-		return false;
-	}
-
-	/**
-	 * Returns the setting for local auto-publishing.
-	 * 
-	 * @return int
-	 */
-	public boolean getAutoPublishLocal() {
-		return preferences.getBoolean(PREF_AUTO_PUBLISH_LOCAL);
-	}
-
-	/**
-	 * Sets the value for local auto-publishing.
-	 * 
-	 * @param auto
-	 */
-	public void setAutoPublishLocal(boolean auto) {
-		preferences.setValue(PREF_AUTO_PUBLISH_LOCAL, auto);
-		ServerPlugin.getInstance().savePluginPreferences();
-	}
-	
-	/**
-	 * Returns the default setting for local auto-publishing.
-	 * 
-	 * @return int
-	 */
-	public int getDefaultAutoPublishLocalTime() {
-		return 15;
-	}
-
-	/**
-	 * Returns the setting for local auto-publishing.
-	 * 
-	 * @return int
-	 */
-	public int getAutoPublishLocalTime() {
-		return preferences.getInt(PREF_AUTO_PUBLISH_LOCAL_TIME);
-	}
-
-	/**
-	 * Sets the value for local auto-publishing.
-	 * 
-	 * @param auto
-	 */
-	public void setAutoPublishLocalTime(int auto) {
-		preferences.setValue(PREF_AUTO_PUBLISH_LOCAL_TIME, auto);
-		ServerPlugin.getInstance().savePluginPreferences();
-	}
-
-	/**
-	 * Returns the default setting for remote auto-publishing.
-	 * 
-	 * @return int
-	 */
-	public boolean getDefaultAutoPublishRemote() {
-		return false;
-	}
-
-	/**
-	 * Returns the setting for remote auto-publishing.
-	 * 
-	 * @return int
-	 */
-	public boolean getAutoPublishRemote() {
-		return preferences.getBoolean(PREF_AUTO_PUBLISH_REMOTE);
-	}
-
-	/**
-	 * Sets the value for remote auto-publishing.
-	 * 
-	 * @param auto
-	 */
-	public void setAutoPublishRemote(boolean auto) {
-		preferences.setValue(PREF_AUTO_PUBLISH_REMOTE, auto);
-		ServerPlugin.getInstance().savePluginPreferences();
-	}
-
-	/**
-	 * Returns the default setting for remote auto-publishing.
-	 * 
-	 * @return int
-	 */
-	public int getDefaultAutoPublishRemoteTime() {
-		return 60;
-	}
-
-	/**
-	 * Returns the setting for remote auto-publishing.
-	 * 
-	 * @return int
-	 */
-	public int getAutoPublishRemoteTime() {
-		return preferences.getInt(PREF_AUTO_PUBLISH_REMOTE_TIME);
-	}
-
-	/**
-	 * Sets the value for remote auto-publishing.
-	 * 
-	 * @param auto
-	 */
-	public void setAutoPublishRemoteTime(int auto) {
-		preferences.setValue(PREF_AUTO_PUBLISH_REMOTE_TIME, auto);
-		ServerPlugin.getInstance().savePluginPreferences();
-	}
-
-	/**
-	 * Set the default values.
-	 */
-	public void setDefaults() {
-		preferences.setDefault(PREF_AUTO_PUBLISH, isDefaultAutoPublishing());
-		preferences.setDefault(PREF_AUTO_RESTART, isDefaultAutoRestarting());
-		preferences.setDefault(PREF_MACHINE_SPEED, getDefaultMachineSpeed());
-		
-		preferences.setDefault(PREF_AUTO_PUBLISH_LOCAL, getDefaultAutoPublishLocal());
-		preferences.setDefault(PREF_AUTO_PUBLISH_LOCAL_TIME, getDefaultAutoPublishLocalTime());
-		preferences.setDefault(PREF_AUTO_PUBLISH_REMOTE, getDefaultAutoPublishRemote());
-		preferences.setDefault(PREF_AUTO_PUBLISH_REMOTE_TIME, getDefaultAutoPublishRemoteTime());
-		
-		preferences.setDefault(PREF_MODULE_START_TIMEOUT, 300001);
-		boolean save = false;
-		if (preferences.isDefault(PREF_MODULE_START_TIMEOUT)) {
-			preferences.setValue(PREF_MODULE_START_TIMEOUT, 300000);
-			save = true;
-		}
-		if (save)
-			ServerPlugin.getInstance().savePluginPreferences();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerPublishInfo.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerPublishInfo.java
deleted file mode 100644
index 615e45f..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerPublishInfo.java
+++ /dev/null
@@ -1,322 +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.internal;
-
-import java.io.File;
-import java.util.*;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.ServerUtil;
-import org.eclipse.wst.server.core.model.*;
-/**
- * Helper to obtain and store the publishing information (what files
- * were published and when) for a single server.
- */
-public class ServerPublishInfo {
-	protected IPath path;
-
-	// map of module ids to ModulePublishInfo
-	protected Map modulePublishInfo;
-
-	/**
-	 * ServerPublishInfo constructor comment.
-	 */
-	protected ServerPublishInfo(IPath path) {
-		super();
-		
-		this.path = path;
-		modulePublishInfo = new HashMap();
-		load();
-	}
-
-	private String getKey(IModule[] module) {
-		StringBuffer sb = new StringBuffer();
-		
-		if (module != null) {
-			int size = module.length;
-			for (int i = 0; i < size; i++) {
-				if (i != 0)
-					sb.append("#");
-				sb.append(module[i].getId());
-			}
-		}
-		
-		return sb.toString();
-	}
-
-	private String getKey(String moduleId) {
-		return moduleId;
-	}
-	
-	private IModule[] getModule(String moduleId) {
-		if (moduleId == null || moduleId.length() == 0)
-			return new IModule[0];
-		
-		List list = new ArrayList();
-		StringTokenizer st = new StringTokenizer(moduleId, "#");
-		while (st.hasMoreTokens()) {
-			String mid = st.nextToken();
-			if (mid != null && mid.length() > 0) {
-				IModule m = ServerUtil.getModule(mid);
-				if (m == null)
-					return null;
-				list.add(m);
-			}
-		}
-		
-		IModule[] modules = new IModule[list.size()];
-		list.toArray(modules);
-		return modules;
-	}
-
-	public boolean hasModulePublishInfo(IModule[] module) {
-		String key = getKey(module);
-		return modulePublishInfo.containsKey(key);
-	}
-
-	public void removeModulePublishInfo(IModule[] module) {
-		String key = getKey(module);
-		modulePublishInfo.remove(key);
-		
-		save();
-	}
-
-	/**
-	 * Return the publish state.
-	 */
-	protected ModulePublishInfo getModulePublishInfo(IModule[] module) {
-		String key = getKey(module);
-
-		// check if it now exists
-		if (modulePublishInfo.containsKey(key))
-			return (ModulePublishInfo) modulePublishInfo.get(key);
-	
-		// have to create a new one
-		ModulePublishInfo mpi = new ModulePublishInfo(getKey(module));
-		modulePublishInfo.put(key, mpi);
-		return mpi;
-	}
-
-	public void addRemovedModules(List moduleList, List kindList) {
-		int size = moduleList.size();
-		List removed = new ArrayList();
-		Iterator iterator = modulePublishInfo.keySet().iterator();
-		while (iterator.hasNext()) {
-			String key = (String) iterator.next();
-		
-			boolean found = false;
-			for (int i = 0; i < size; i++) {
-				IModule[] module = (IModule[]) moduleList.get(i);
-				String key2 = getKey(module);
-				if (key != null && key.equals(key2))
-					found = true;
-			}
-			if (!found) {
-				ModulePublishInfo mpi = (ModulePublishInfo) modulePublishInfo.get(key);
-				removed.add(mpi);
-			}
-		}
-		
-		iterator = removed.iterator();
-		while (iterator.hasNext()) {
-			ModulePublishInfo mpi = (ModulePublishInfo) iterator.next();
-			IModule[] module2 = getModule(mpi.getModuleId());
-			if (module2 == null || module2.length == 0) {
-				String moduleId = mpi.getModuleId();
-				if (moduleId != null) {
-					int index = moduleId.lastIndexOf("#");
-					module2 = new IModule[] { new DeletedModule(moduleId.substring(index + 1)) };
-				}
-			}
-			if (module2 != null && module2.length > 0) {
-				moduleList.add(module2);
-				kindList.add(new Integer(ServerBehaviourDelegate.REMOVED));
-			}
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public void load() {
-		String filename = path.toOSString();
-		if (!(new File(filename).exists()))
-			return;
-	
-		Trace.trace(Trace.FINEST, "Loading publish info from " + filename);
-
-		try {
-			IMemento memento2 = XMLMemento.loadMemento(filename);
-			IMemento[] children = memento2.getChildren("module");
-	
-			int size = children.length;
-			for (int i = 0; i < size; i++) {
-				ModulePublishInfo mpi = new ModulePublishInfo(children[i]);
-				modulePublishInfo.put(getKey(mpi.getModuleId()), mpi);
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Could not load publish information: " + e.getMessage());
-		}
-	}
-
-	/**
-	 * 
-	 */
-	public void save() {
-		String filename = path.toOSString();
-		Trace.trace(Trace.FINEST, "Saving publish info to " + filename);
-	
-		try {
-			XMLMemento memento = XMLMemento.createWriteRoot("server");
-
-			Iterator iterator = modulePublishInfo.keySet().iterator();
-			while (iterator.hasNext()) {
-				String controlRef = (String) iterator.next();
-				ModulePublishInfo mpi = (ModulePublishInfo) modulePublishInfo.get(controlRef);
-				IMemento child = memento.createChild("module");
-				mpi.save(child);
-			}
-			memento.saveToFile(filename);
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not save publish information", e);
-		}
-	}
-	
-	public void fill(IModule[] module) {
-		ModulePublishInfo mpi = getModulePublishInfo(module);
-		int size = module.length;
-		ModuleDelegate pm = (ModuleDelegate) module[size - 1].loadAdapter(ModuleDelegate.class, null);
-		try {
-			if (pm != null)
-				mpi.setResources(pm.members());
-		} catch (CoreException ce) {
-			// ignore
-		}
-		save();
-	}
-
-	protected IModuleResourceDelta[] getDelta(IModule[] module) {
-		if (module == null)
-			return new IModuleResourceDelta[0];
-		
-		ModulePublishInfo mpi = getModulePublishInfo(module);
-		int size = module.length;
-		ModuleDelegate pm = (ModuleDelegate) module[size - 1].loadAdapter(ModuleDelegate.class, null);
-		IModuleResource[] resources = null;
-		try {
-			if (pm != null)
-				resources = pm.members();
-		} catch (CoreException ce) {
-			// ignore
-		}
-		if (resources == null)
-			resources = new IModuleResource[0];
-		return getDelta(mpi.getResources(), resources);
-	}
-
-	protected IModuleResourceDelta[] getDelta(IModuleResource[] original, IModuleResource[] current) {
-		if (original == null || current == null)
-			return new IModuleResourceDelta[0];
-	
-		List list = new ArrayList();
-		
-		// look for duplicates
-		List found = new ArrayList();
-		int size = original.length;
-		int size2 = current.length;
-		for (int i = 0; i < size; i++) {
-			for (int j = 0; j < size2; j++) {
-				if (!found.contains(original[i]) && !found.contains(current[j]) && original[i].equals(current[j])) {
-					// found a match
-					found.add(original[i]);
-					if (original[i] instanceof IModuleFile) {
-						// include files only if the modification stamp has changed
-						IModuleFile mf1 = (IModuleFile) original[i];
-						IModuleFile mf2 = (IModuleFile) current[j];
-						if (mf1.getModificationStamp() != mf2.getModificationStamp()) {
-							list.add(new ModuleResourceDelta(original[i], IModuleResourceDelta.CHANGED));
-						}
-					} else {
-						// include folders only if their contents have changed
-						IModuleFolder mf1 = (IModuleFolder) original[i];
-						IModuleFolder mf2 = (IModuleFolder) current[j];
-						IModuleResourceDelta[] mrdc = getDelta(mf1.members(), mf2.members());
-						if (mrdc.length > 0) {
-							ModuleResourceDelta mrd = new ModuleResourceDelta(original[i], IModuleResourceDelta.NO_CHANGE);
-							mrd.setChildren(mrdc);
-							list.add(mrd);
-						}
-					}
-				}
-			}
-		}
-		
-		// add deletions (unfound items in the original list)
-		for (int i = 0; i < size; i++) {
-			if (!found.contains(original[i])) {
-				if (original[i] instanceof IModuleFile) {
-					list.add(new ModuleResourceDelta(original[i], IModuleResourceDelta.REMOVED));
-				} else {
-					IModuleFolder mf = (IModuleFolder) original[i];
-					ModuleResourceDelta mrd = new ModuleResourceDelta(original[i], IModuleResourceDelta.REMOVED);
-					IModuleResourceDelta[] mrdc = getDeltaTree(mf.members(), IModuleResourceDelta.REMOVED);
-					mrd.setChildren(mrdc);
-					list.add(mrd);
-				}
-			}
-		}
-		
-		//	add additions (unfound items in the current list)
-		for (int j = 0; j < size2; j++) {
-			if (!found.contains(current[j])) {
-				if (current[j] instanceof IModuleFile) {
-					list.add(new ModuleResourceDelta(current[j], IModuleResourceDelta.ADDED));
-				} else {
-					IModuleFolder mf = (IModuleFolder) current[j];
-					ModuleResourceDelta mrd = new ModuleResourceDelta(current[j], IModuleResourceDelta.ADDED);
-					IModuleResourceDelta[] mrdc = getDeltaTree(mf.members(), IModuleResourceDelta.ADDED);
-					mrd.setChildren(mrdc);
-					list.add(mrd);
-				}
-			}
-		}
-		
-		IModuleResourceDelta[] delta = new IModuleResourceDelta[list.size()];
-		list.toArray(delta);
-		return delta;
-	}
-
-	/**
-	 * Create a resource delta for an entire tree.
-	 */
-	protected IModuleResourceDelta[] getDeltaTree(IModuleResource[] resources, int kind) {
-		if (resources == null)
-			return new IModuleResourceDelta[0];
-	
-		List list = new ArrayList();
-		
-		// look for duplicates
-		int size = resources.length;
-		for (int i = 0; i < size; i++) {
-			ModuleResourceDelta mrd = new ModuleResourceDelta(resources[i], kind);
-			if (resources[i] instanceof IModuleFolder) {
-				IModuleFolder mf = (IModuleFolder) resources[i];
-				mrd.setChildren(getDeltaTree(mf.members(), kind));
-			}
-			list.add(mrd);
-		}
-		
-		IModuleResourceDelta[] delta = new IModuleResourceDelta[list.size()];
-		list.toArray(delta);
-		return delta;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerSchedulingRule.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerSchedulingRule.java
deleted file mode 100644
index 9a5aaf2..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerSchedulingRule.java
+++ /dev/null
@@ -1,44 +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.internal;
-
-import org.eclipse.core.runtime.jobs.ISchedulingRule;
-import org.eclipse.wst.server.core.IServer;
-/**
- * Simple job scheduling rule that stops a server from starting,
- * publishing, or stopping at the same time.
- */
-public class ServerSchedulingRule implements ISchedulingRule {
-	protected IServer server;
-	
-	public ServerSchedulingRule(IServer server) {
-		this.server = server;
-	}
-	
-	public boolean contains(ISchedulingRule rule) {
-		if (!(rule instanceof ServerSchedulingRule))
-			return false;
-		
-		return true;
-	}
-
-	public boolean isConflicting(ISchedulingRule rule) {
-		if (!(rule instanceof ServerSchedulingRule))
-			return false;
-		
-		ServerSchedulingRule ssrule = (ServerSchedulingRule) rule;
-		return ssrule.server.equals(server);
-	}
-	
-	public String toString() {
-		return "Server scheduling rule for " + server;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerType.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerType.java
deleted file mode 100644
index 8dc0edd..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerType.java
+++ /dev/null
@@ -1,282 +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.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.ILaunchManager;
-
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.server.core.*;
-/**
- * 
- */
-public class ServerType implements IServerType {
-	protected IConfigurationElement element;
-
-	/**
-	 * ServerType constructor comment.
-	 * 
-	 * @param element a configuration element
-	 */
-	public ServerType(IConfigurationElement element) {
-		super();
-		this.element = element;
-	}
-	
-	protected IConfigurationElement getElement() {
-		return element;
-	}
-
-	/**
-	 * Returns the id of this factory.
-	 *
-	 * @return java.lang.String
-	 */
-	public String getId() {
-		return element.getAttribute("id");
-	}
-	
-	public String getName() {
-		return element.getAttribute("name");
-	}
-
-	public boolean startBeforePublish() {
-		return "true".equals(element.getAttribute("startBeforePublish"));
-	}
-
-	public String getDescription() {
-		return element.getAttribute("description");
-	}
-	
-	public IRuntimeType getRuntimeType() {
-		String typeId = element.getAttribute("runtimeTypeId");
-		if (typeId == null)
-			return null;
-		return ServerCore.findRuntimeType(typeId);
-	}
-
-	public boolean hasRuntime() {
-		String s = element.getAttribute("runtime");
-		return "true".equals(s);
-	}
-	
-	protected ILaunchConfigurationType getLaunchConfigurationType() {
-		String launchConfigId = element.getAttribute("launchConfigId");
-		if (launchConfigId == null)
-			return null;
-		ILaunchManager launchManager = DebugPlugin.getDefault().getLaunchManager();
-		return launchManager.getLaunchConfigurationType(launchConfigId);
-	}
-	
-	/**
-	 * Returns true if this server can start or may already be started
-	 * in the given mode, and false if not. Uses the launchMode attribute,
-	 * which may contain the strings "run", "debug", and/or "profile".
-	 * 
-	 * @param launchMode String
-	 * @return boolean
-	 */
-	public boolean supportsLaunchMode(String launchMode) {
-		ILaunchConfigurationType configType = getLaunchConfigurationType();
-		if (configType == null) {
-			String mode = element.getAttribute("launchModes");
-			if (mode == null)
-				return false;
-			return mode.indexOf(launchMode) >= 0;
-		}
-		return configType.supportsMode(launchMode);
-	}
-
-	/*public IServerConfigurationType getServerConfigurationType() {
-		String configurationTypeId = element.getAttribute("configurationTypeId");
-		return ServerCore.findServerConfigurationType(configurationTypeId);
-	}*/
-	
-	public boolean supportsRemoteHosts() {
-		String hosts = element.getAttribute("supportsRemoteHosts");
-		return (hosts != null && hosts.toLowerCase().equals("true"));
-	}
-
-	public byte getInitialState() {
-		String stateString = element.getAttribute("initialState");
-		if (stateString != null)
-			stateString = stateString.toLowerCase();
-		if ("stopped".equals(stateString))
-			return IServer.STATE_STOPPED;
-		else if ("started".equals(stateString))
-			return IServer.STATE_STARTED;
-		return IServer.STATE_UNKNOWN;
-	}
-
-	public boolean hasServerConfiguration() {
-		return ("true".equalsIgnoreCase(element.getAttribute("hasConfiguration")));
-	}
-
-	public IServerWorkingCopy createServer(String id, IFile file, IRuntime runtime, IProgressMonitor monitor) throws CoreException {
-		if (id == null || id.length() == 0)
-			id = ServerPlugin.generateId();
-		ServerWorkingCopy swc = new ServerWorkingCopy(id, file, runtime, this);
-		swc.setDefaults(monitor);
-		swc.setRuntime(runtime);
-		
-		// TODO
-		if (swc.getServerType().hasServerConfiguration())
-			((Server)swc).importConfiguration(runtime, null);
-		
-		return swc;
-	}
-	
-	/**
-	 * Returns an array of all known runtime instances of
-	 * the given runtime type. This convenience method filters the list of known
-	 * runtime ({@link ServerCore#getRuntimes()}) for ones with a matching
-	 * runtime type ({@link IRuntime#getRuntimeType()}). The array will not
-	 * contain any working copies.
-	 * <p>
-	 * A new array is returned on each call, so clients may store or modify the result.
-	 * </p>
-	 * 
-	 * @param runtimeType the runtime type
-	 * @return a possibly-empty list of runtime instances {@link IRuntime}
-	 * of the given runtime type
-	 */
-	protected static IRuntime[] getRuntimes(IRuntimeType runtimeType) {
-		List list = new ArrayList();
-		IRuntime[] runtimes = ServerCore.getRuntimes();
-		if (runtimes != null) {
-			int size = runtimes.length;
-			for (int i = 0; i < size; i++) {
-				if (runtimes[i].getRuntimeType() != null && runtimes[i].getRuntimeType().equals(runtimeType))
-					list.add(runtimes[i]);
-			}
-		}
-		
-		IRuntime[] r = new IRuntime[list.size()];
-		list.toArray(r);
-		return r;
-	}
-
-	public IServerWorkingCopy createServer(String id, IFile file, IProgressMonitor monitor) throws CoreException {
-		if (id == null || id.length() == 0)
-			id = ServerPlugin.generateId();
-		
-		IRuntime runtime = null;
-		if (hasRuntime()) {
-			// look for existing runtime
-			IRuntimeType runtimeType = getRuntimeType();
-			IRuntime[] runtimes = getRuntimes(runtimeType);
-			if (runtimes != null && runtimes.length > 0)
-				runtime = runtimes[0];
-			else {
-				// create runtime
-				try {
-					IRuntimeWorkingCopy runtimeWC = runtimeType.createRuntime(id + "-runtime", monitor);
-					ServerUtil.setRuntimeDefaultName(runtimeWC);
-					runtime = runtimeWC;
-				} catch (Exception e) {
-					Trace.trace(Trace.SEVERE, "Couldn't create runtime", e);
-				}
-			}
-		}
-
-		ServerWorkingCopy swc = new ServerWorkingCopy(id, file, runtime, this);
-		ServerUtil.setServerDefaultName(swc);
-		if (runtime != null)
-			swc.setRuntime(runtime);
-		
-		if (swc.getServerType().hasServerConfiguration())
-			((Server)swc).importConfiguration(runtime, null);
-		
-		swc.setDefaults(monitor);
-		
-		return swc;
-	}
-	
-	public static IProject getServerProject() throws CoreException {
-		IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
-		if (projects != null) {
-			int size = projects.length;
-			for (int i = 0; i < size; i++) {
-				if (((ProjectProperties)ServerCore.getProjectProperties(projects[i])).isServerProject())
-					return projects[i];
-			}
-		}
-		
-		String s = findUnusedServerProjectName();
-		IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(s);
-		project.create(null);
-		project.open(null);
-		((ProjectProperties)ServerCore.getProjectProperties(project)).setServerProject(true, null);
-		return project;
-	}
-
-	/**
-	 * Finds an unused project name to use as a server project.
-	 * 
-	 * @return java.lang.String
-	 */
-	protected static String findUnusedServerProjectName() {
-		IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
-		String name = NLS.bind(Messages.defaultServerProjectName, "");
-		int count = 1;
-		while (root.getProject(name).exists()) {
-			name = NLS.bind(Messages.defaultServerProjectName, ++count + "");
-		}
-		return name;
-	}
-
-	/**
-	 * Return the timeout (in ms) that should be used to wait for the server to start.
-	 * Returns -1 if there is no timeout.
-	 * 
-	 * @return the server startup timeout
-	 */
-	public int getStartTimeout() {
-		try {
-			int i = Integer.parseInt(element.getAttribute("startTimeout"));
-			int s = ServerPreferences.getInstance().getMachineSpeed();
-			i = i * (10 - s) / 5;
-			return i;
-		} catch (NumberFormatException e) {
-			return -1;
-		}
-	}
-
-	/**
-	 * Return the timeout (in ms) to wait before assuming that the server
-	 * has failed to stop. Returns -1 if there is no timeout.
-	 * 
-	 * @return the server shutdown timeout
-	 */
-	public int getStopTimeout() {
-		try {
-			return Integer.parseInt(element.getAttribute("stopTimeout"));
-		} catch (NumberFormatException e) {
-			return -1;
-		}
-	}
-
-	/**
-	 * Return a string representation of this object.
-	 * 
-	 * @return java.lang.String
-	 */
-	public String toString() {
-		return "ServerType[" + getId() + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerWorkingCopy.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerWorkingCopy.java
deleted file mode 100644
index 2b612c1..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerWorkingCopy.java
+++ /dev/null
@@ -1,404 +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.internal;
-
-import java.beans.PropertyChangeListener;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.*;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.server.core.*;
-import org.eclipse.wst.server.core.model.InternalInitializer;
-import org.eclipse.wst.server.core.model.ServerDelegate;
-/**
- * 
- */
-public class ServerWorkingCopy extends Server implements IServerWorkingCopy {
-	protected Server server;
-	protected WorkingCopyHelper wch;
-	
-	protected ServerDelegate workingCopyDelegate;
-	
-	// working copy
-	public ServerWorkingCopy(Server server) {
-		super(server.getFile());
-		this.server = server;
-		
-		map = new HashMap(server.map);
-		wch = new WorkingCopyHelper(this);
-		
-		resolve();
-	}
-	
-	// creation
-	public ServerWorkingCopy(String id, IFile file, IRuntime runtime, IServerType serverType) {
-		super(id, file, runtime, serverType);
-		//server = this;
-		wch = new WorkingCopyHelper(this);
-		wch.setDirty(true);
-		serverState = ((ServerType)serverType).getInitialState();
-	}
-
-	public boolean isWorkingCopy() {
-		return true;
-	}
-	
-	public IServer getOriginal() {
-		return server;
-	}
-	
-	public IServerWorkingCopy createWorkingCopy() {
-		return this;
-	}
-
-	public int getServerState() {
-		if (server != null)
-			return server.getServerState();
-		return serverState;
-	}
-
-	public void setServerState(int state) {
-		if (server != null)
-			server.setServerState(state);
-		else
-			super.setServerState(state);
-	}
-	
-	public int getServerPublishState() {
-		if (server != null)
-			return server.getServerPublishState();
-		return serverState;
-	}
-
-	public void setServerPublishState(int state) {
-		if (server != null)
-			server.setServerPublishState(state);
-		else
-			super.setServerPublishState(state);
-	}
-	
-	public String getMode() {
-		if (server != null)
-			return server.getMode();
-		return mode;
-	}
-
-	public void setMode(String mode) {
-		if (server != null)
-			server.setMode(mode);
-		else
-			super.setMode(mode);
-	}
-
-	public void setAttribute(String attributeName, int value) {
-		wch.setAttribute(attributeName, value);
-	}
-
-	public void setAttribute(String attributeName, boolean value) {
-		wch.setAttribute(attributeName, value);
-	}
-
-	public void setAttribute(String attributeName, String value) {
-		wch.setAttribute(attributeName, value);
-	}
-
-	public void setAttribute(String attributeName, List value) {
-		wch.setAttribute(attributeName, value);
-	}
-
-	public void setAttribute(String attributeName, Map value) {
-		wch.setAttribute(attributeName, value);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.IServerWorkingCopy#setName(java.lang.String)
-	 */
-	public void setName(String name) {
-		setAttribute(PROP_NAME, name);
-	}
-
-	public void setReadOnly(boolean b) {
-		setAttribute(PROP_LOCKED, b);
-	}
-
-	/**
-	 * Sets whether this element is private.
-	 * Generally speaking, elements marked private are internal ones
-	 * that should not be shown to users (because they won't know
-	 * anything about them).
-	 * 
-	 * @param b <code>true</code> if this element is private,
-	 * and <code>false</code> otherwise
-	 * @see #isPrivate()
-	 */
-	public void setPrivate(boolean b) {
-		setAttribute(PROP_PRIVATE, b);
-	}
-
-	public void setHost(String host) {
-		setAttribute(PROP_HOSTNAME, host);
-	}
-
-	public void setAutoPublishTime(int p) {
-		setAttribute(PROP_AUTO_PUBLISH_TIME, p);
-	}
-	
-	public void setAutoPublishDefault(boolean p) {
-		setAttribute(PROP_AUTO_PUBLISH_DEFAULT, p);
-	}
-
-	public void setServerConfiguration(IFolder config) {
-		this.configuration = config;
-		if (configuration == null)
-			setAttribute(CONFIGURATION_ID, (String)null);
-		else
-			setAttribute(CONFIGURATION_ID, configuration.getFullPath().toString());
-	}
-
-	/**
-	 * Sets the file where this server instance is serialized.
-	 * 
-	 * @param file the file in the workspace where the server instance
-	 *    is serialized, or <code>null</code> if the information is
-	 *    instead to be persisted with the workspace but not with any
-	 *    particular workspace resource
-	 */
-	public void setFile(IFile file) {
-		this.file = file;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.IServerWorkingCopy#isDirty()
-	 */
-	public boolean isDirty() {
-		return wch.isDirty();
-	}
-	
-	public ServerDelegate getWorkingCopyDelegate(IProgressMonitor monitor) {
-		// make sure that the regular delegate is loaded 
-		//getDelegate();
-		
-		if (workingCopyDelegate != null)
-			return workingCopyDelegate;
-		
-		if (serverType != null) {
-			synchronized (this) {
-				if (workingCopyDelegate == null) {
-					try {
-						long time = System.currentTimeMillis();
-						IConfigurationElement element = ((ServerType) serverType).getElement();
-						workingCopyDelegate = (ServerDelegate) element.createExecutableExtension("class");
-						InternalInitializer.initializeServerDelegate(workingCopyDelegate, this);
-						Trace.trace(Trace.PERFORMANCE, "ServerWorkingCopy.getWorkingCopyDelegate(): <" + (System.currentTimeMillis() - time) + "> " + getServerType().getId());
-					} catch (Exception e) {
-						Trace.trace(Trace.SEVERE, "Could not create delegate " + toString(), e);
-					}
-				}
-			}
-		}
-		return workingCopyDelegate;
-	}
-	
-	public void dispose() {
-		super.dispose();
-		if (workingCopyDelegate != null)
-			workingCopyDelegate.dispose();
-	}
-	
-	public IServer save(boolean force, IProgressMonitor monitor) throws CoreException {
-		monitor = ProgressUtil.getMonitorFor(monitor);
-		monitor.subTask(NLS.bind(Messages.savingTask, getName()));
-
-		if (!force && getOriginal() != null)
-			wch.validateTimestamp(((Server)getOriginal()).getTimestamp());
-
-		if (server == null) {
-			server = new Server(file);
-			server.setServerState(serverState);
-			server.publishListeners = publishListeners;
-			server.notificationManager = notificationManager;
-		}
-		
-		if (getServerType().hasServerConfiguration()) {
-			IFolder folder = getServerConfiguration();
-			if (folder == null) {
-				folder = ServerType.getServerProject().getFolder(getName() + "-config");
-				if (!folder.exists())
-					folder.create(true, true, null);
-				setServerConfiguration(folder);
-			}
-		}
-		
-		server.setInternal(this);
-		server.doSave(monitor);
-		if (getServerType().hasServerConfiguration()) {
-			IFolder folder = getServerConfiguration();
-			if (folder != null) {
-				IProject project = folder.getProject();
-				if (project != null && !project.exists()) {
-					project.create(null);
-					project.open(null);
-					((ProjectProperties)ServerCore.getProjectProperties(project)).setServerProject(true, monitor);
-				}
-				if (!folder.exists())
-					folder.create(IResource.FORCE, true, null);
-			}
-		}
-		getDelegate(monitor).saveConfiguration(monitor);
-		wch.setDirty(false);
-		
-		return server;
-	}
-
-	public IServer saveAll(boolean force, IProgressMonitor monitor) throws CoreException {
-		if (runtime != null && runtime.isWorkingCopy()) {
-			IRuntimeWorkingCopy wc = (IRuntimeWorkingCopy) runtime;
-			wc.save(force, monitor);
-		}
-		
-		return save(force, monitor);
-	}
-
-	/**
-	 * Add a property change listener to this server.
-	 *
-	 * @param listener java.beans.PropertyChangeListener
-	 */
-	public void addPropertyChangeListener(PropertyChangeListener listener) {
-		wch.addPropertyChangeListener(listener);
-	}
-	
-	/**
-	 * Remove a property change listener from this server.
-	 *
-	 * @param listener java.beans.PropertyChangeListener
-	 */
-	public void removePropertyChangeListener(PropertyChangeListener listener) {
-		wch.removePropertyChangeListener(listener);
-	}
-	
-	/**
-	 * Fire a property change event.
-	 * 
-	 * @param propertyName a property name
-	 * @param oldValue the old value
-	 * @param newValue the new value
-	 */
-	public void firePropertyChangeEvent(String propertyName, Object oldValue, Object newValue) {
-		wch.firePropertyChangeEvent(propertyName, oldValue, newValue);
-	}
-	
-	public void addServerListener(IServerListener listener) {
-		if (server != null)
-			server.addServerListener(listener);
-		else
-			super.addServerListener(listener);
-	}
-	
-	public void removeServerListener(IServerListener listener) {
-		if (server != null)
-			server.removeServerListener(listener);
-		else
-			super.removeServerListener(listener);
-	}
-	
-	public void addPublishListener(IPublishListener listener) {
-		if (server != null)
-			server.addPublishListener(listener);
-		else
-			super.addPublishListener(listener);
-	}
-	
-	public void removePublishListener(IPublishListener listener) {
-		if (server != null)
-			server.removePublishListener(listener);
-		else
-			super.removePublishListener(listener);
-	}
-
-	public void setRuntime(IRuntime runtime) {
-		this.runtime = runtime;
-		if (runtime != null)
-			setAttribute(RUNTIME_ID, runtime.getId());
-		else
-			setAttribute(RUNTIME_ID, (String)null);
-	}
-	
-	public void setRuntimeId(String runtimeId) {
-		setAttribute(RUNTIME_ID, runtimeId);
-		resolve();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.IServer#modifyModule(org.eclipse.wst.server.core.model.IModule)
-	 */
-	public void modifyModules(IModule[] add, IModule[] remove, IProgressMonitor monitor) throws CoreException {
-		try {
-			monitor = ProgressUtil.getMonitorFor(monitor);
-			monitor.subTask(Messages.taskModifyModules);
-			getWorkingCopyDelegate(monitor).modifyModules(add, remove, monitor);
-			wch.setDirty(true);
-			
-			// trigger load of modules list
-			getModules();
-			
-			if (add != null) {
-				int size = add.length;
-				for (int i = 0; i < size; i++) {
-					if (!modules.contains(add[i]))
-						modules.add(add[i]);
-				}
-			}
-			
-			if (remove != null) {
-				int size = remove.length;
-				for (int i = 0; i < size; i++) {
-					if (modules.contains(remove[i]))
-						modules.remove(remove[i]);
-				}
-			}
-			
-			// convert to attribute
-			List list = new ArrayList();
-			Iterator iterator = modules.iterator();
-			while (iterator.hasNext()) {
-				IModule module = (IModule) iterator.next();
-				list.add(module.getId());
-			}
-			setAttribute(MODULE_LIST, list);
-		} catch (CoreException ce) {
-			throw ce;
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate modifyModule() " + toString(), e);
-			throw new CoreException(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, "" + e.getLocalizedMessage(), e));
-		}
-	}
-
-	public void setDefaults(IProgressMonitor monitor) {
-		try {
-			getWorkingCopyDelegate(monitor).setDefaults();
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error calling delegate setDefaults() " + toString(), e);
-		}
-	}
-	
-	public String toString() {
-		return "ServerWorkingCopy " + getId();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/StartServerJob.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/StartServerJob.java
deleted file mode 100644
index b54f6ee..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/StartServerJob.java
+++ /dev/null
@@ -1,49 +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.internal;
-
-import org.eclipse.core.runtime.*;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.internal.ServerSchedulingRule;
-/**
- * 
- */
-public class StartServerJob extends Job {
-	protected IServer server;
-	protected String launchMode;
-	
-	public static void startServer(IServer server, String launchMode) {
-		StartServerJob job = new StartServerJob(server, launchMode);
-		//job.setUser(true);
-		job.schedule();
-	}
-
-	public StartServerJob(IServer server, String launchMode) {
-		super("Starting server");
-		this.server = server;
-		this.launchMode = launchMode;
-		setRule(new ServerSchedulingRule(server));
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.internal.jobs.InternalJob#run(org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	protected IStatus run(IProgressMonitor monitor) {
-		IStatus status = new Status(IStatus.OK, ServerPlugin.PLUGIN_ID, 0, "", null);
-		try {
-			server.synchronousStart(launchMode, monitor);
-		} catch (CoreException ce) {
-			return ce.getStatus();
-		}
-		return status;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Trace.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Trace.java
deleted file mode 100644
index 04bb5fe..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Trace.java
+++ /dev/null
@@ -1,100 +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.internal;
-
-import java.text.SimpleDateFormat;
-import java.util.Date;
-/**
- * Helper class to route trace output.
- */
-public class Trace {
-	public static int CONFIG = 0;
-	public static int INFO = 1;
-	public static int WARNING = 2;
-	public static int SEVERE = 3;
-	public static int FINER = 4;
-	public static int FINEST = 5;
-	
-	public static int RESOURCES = 6;
-	public static int EXTENSION_POINT = 7;
-	public static int LISTENERS = 8;
-	public static int RUNTIME_TARGET = 9;
-	public static int PERFORMANCE = 10;
-
-	private static final String[] levelNames = new String[] {
-		"CONFIG   ", "INFO     ", "WARNING  ", "SEVERE   ", "FINER    ", "FINEST   ",
-		"RESOURCES", "EXTENSION", "LISTENERS", "TARGET   ", "PERF     "};
-	private static final String spacer = "                                   ";
-
-	private static final SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yy HH:mm.ss.SSS");
-
-	protected static int pluginLength = -1;
-
-	/**
-	 * Trace constructor comment.
-	 */
-	private Trace() {
-		super();
-	}
-
-	/**
-	 * Trace the given text.
-	 *
-	 * @param level a trace level
-	 * @param s a message
-	 */
-	public static void trace(int level, String s) {
-		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(int level, String s, Throwable t) {
-		trace(ServerPlugin.PLUGIN_ID, level, s, t);
-	}
-
-	/**
-	 * Trace the given message and exception.
-	 *
-	 * @param level a trace level
-	 * @param s a message
-	 * @param t a throwable
-	 */
-	private static void trace(String pluginId, int level, String s, Throwable t) {
-		if (pluginId == null || s == null)
-			return;
-
-		if (!ServerPlugin.getInstance().isDebugging())
-			return;
-		
-		StringBuffer sb = new StringBuffer(pluginId);
-		if (pluginId.length() > pluginLength)
-			pluginLength = pluginId.length();
-		else if (pluginId.length() < pluginLength)
-			sb.append(spacer.substring(0, pluginLength - pluginId.length()));
-		sb.append(" ");
-		sb.append(levelNames[level]);
-		sb.append(" ");
-		sb.append(sdf.format(new Date()));
-		sb.append(" ");
-		sb.append(s);
-		//Platform.getDebugOption(ServerCore.PLUGIN_ID + "/" + "resources");
-
-		System.out.println(sb.toString());
-		if (t != null)
-			t.printStackTrace();
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/WorkingCopyHelper.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/WorkingCopyHelper.java
deleted file mode 100644
index fd78205..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/WorkingCopyHelper.java
+++ /dev/null
@@ -1,170 +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.internal;
-
-import java.beans.PropertyChangeEvent;
-import java.beans.PropertyChangeListener;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.wst.server.core.IServerWorkingCopy;
-/**
- * 
- */
-public class WorkingCopyHelper {
-	protected Base base;
-	protected boolean isDirty;
-	
-	// property change listeners
-	private transient List propertyListeners;
-
-	public WorkingCopyHelper(Base base) {
-		this.base = base;
-	}
-
-	public void setAttribute(String attributeName, int value) {
-		int current = base.getAttribute(attributeName, 0);
-		if (current != 0 && current == value)
-			return;
-
-		isDirty = true;
-		base.map.put(attributeName, Integer.toString(value));
-		firePropertyChangeEvent(attributeName, new Integer(current), new Integer(value));
-	}
-
-	public void setAttribute(String attributeName, boolean value) {
-		boolean current = base.getAttribute(attributeName, false);
-
-		isDirty = true;
-		base.map.put(attributeName, Boolean.toString(value));
-		firePropertyChangeEvent(attributeName, new Boolean(current), new Boolean(value));
-	}
-	
-	public void setAttribute(String attributeName, String value) {
-		String current = base.getAttribute(attributeName, (String)null);
-		if (current != null && current.equals(value))
-			return;
-
-		isDirty = true;
-		if (value == null)
-			base.map.remove(attributeName);
-		else
-			base.map.put(attributeName, value);
-		firePropertyChangeEvent(attributeName, current, value);
-	}
-	
-	public void setAttribute(String attributeName, List value) {
-		List current = base.getAttribute(attributeName, (List)null);
-		if (current != null && current.equals(value))
-			return;
-
-		isDirty = true;
-		if (value == null)
-			base.map.remove(attributeName);
-		else
-			base.map.put(attributeName, value);
-		firePropertyChangeEvent(attributeName, current, value);
-	}
-
-	public void setAttribute(String attributeName, Map value) {
-		Map current = base.getAttribute(attributeName, (Map)null);
-		if (current != null && current.equals(value))
-			return;
-
-		isDirty = true;
-		if (value == null)
-			base.map.remove(attributeName);
-		else
-			base.map.put(attributeName, value);
-		firePropertyChangeEvent(attributeName, current, value);
-	}
-	
-	public void setName(String name) {
-		setAttribute(Base.PROP_NAME, name);
-	}
-	
-	public void setLocked(boolean b) {
-		setAttribute(Base.PROP_LOCKED, b);
-	}
-
-	public void setPrivate(boolean b) {
-		setAttribute(Base.PROP_PRIVATE, b);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.wst.server.core.IServerWorkingCopy#isDirty()
-	 */
-	public boolean isDirty() {
-		return isDirty;
-	}
-
-	protected void validateTimestamp(int timestamp) throws CoreException {
-		if (base.getTimestamp() != timestamp)
-			throw new CoreException(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, IServerWorkingCopy.SAVE_CONFLICT, Messages.errorWorkingCopyTimestamp, null));
-	}
-
-	/**
-	 * Add a property change listener to this server.
-	 *
-	 * @param listener java.beans.PropertyChangeListener
-	 */
-	public void addPropertyChangeListener(PropertyChangeListener listener) {
-		if (propertyListeners == null)
-			propertyListeners = new ArrayList(2);
-		propertyListeners.add(listener);
-	}
-	
-	/**
-	 * Remove a property change listener from this server.
-	 *
-	 * @param listener java.beans.PropertyChangeListener
-	 */
-	public void removePropertyChangeListener(PropertyChangeListener listener) {
-		if (propertyListeners != null)
-			propertyListeners.remove(listener);
-	}
-	
-	/**
-	 * Fire a property change event.
-	 * 
-	 * @param propertyName a property name
-	 * @param oldValue the old value
-	 * @param newValue the new value
-	 */
-	public void firePropertyChangeEvent(String propertyName, Object oldValue, Object newValue) {
-		if (propertyListeners == null)
-			return;
-	
-		PropertyChangeEvent event = new PropertyChangeEvent(this, propertyName, oldValue, newValue);
-		try {
-			Iterator iterator = propertyListeners.iterator();
-			while (iterator.hasNext()) {
-				try {
-					PropertyChangeListener listener = (PropertyChangeListener) iterator.next();
-					listener.propertyChange(event);
-				} catch (Exception e) {
-					Trace.trace(Trace.SEVERE, "Error firing property change event", e);
-				}
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error in property event", e);
-		}
-	}
-	
-	protected void setDirty(boolean dirty) {
-		isDirty = dirty;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/XMLMemento.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/XMLMemento.java
deleted file mode 100644
index 3d0960c..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/XMLMemento.java
+++ /dev/null
@@ -1,412 +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.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
-	 */
-	public IMemento createChild(String type) {
-		Element child = factory.createElement(type);
-		element.appendChild(child);
-		return new XMLMemento(factory, child);
-	}
-
-	/*
-	 * @see IMemento
-	 */
-	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 in java.io.InputStream
-	 * @return org.eclipse.ui.IMemento
-	 */
-	public static IMemento loadMemento(InputStream in) {
-		return createReadRoot(in);
-	}
-
-	/**
-	 * 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 {
-		FileInputStream fin = null;
-		try {
-			fin = new FileInputStream(filename);
-			return XMLMemento.createReadRoot(fin);
-		} finally {
-			try {
-				if (fin != null)
-					fin.close();
-			} catch (Exception e) {
-				// ignore
-			}
-		}
-	}
-
-	/*
-	 * @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.
-	 */
-	protected 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
-				}
-			}
-		}
-	}
-	
-	public String saveToString() throws IOException {
-		ByteArrayOutputStream out = new ByteArrayOutputStream();
-		save(out);
-		return out.toString("UTF-8");
-	}
-	
-	/*
-	 * @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.wst.server.core/servercore/org/eclipse/wst/server/core/internal/provisional/ServerLocatorDelegate.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/provisional/ServerLocatorDelegate.java
deleted file mode 100644
index 1470e4a..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/provisional/ServerLocatorDelegate.java
+++ /dev/null
@@ -1,49 +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.internal.provisional;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.server.core.IServerWorkingCopy;
-/**
- * A server locator provides the ability to locate or search for additional
- * server of a particular type, on a particular host.
- * <p>
- * This abstract class is intended to be extended only by clients
- * to extend the <code>serverLocators</code> extension point.
- * </p>
- * 
- * @since 1.0
- */
-public abstract class ServerLocatorDelegate {
-	/**
-	 * A callback listener used to report progress.
-	 */
-	public interface IServerSearchListener {
-		/**
-		 * Called when a new server is found by the locator.
-		 * The server must never be null.
-		 * 
-		 * @param server the runtime that was found.
-		 */
-		public void serverFound(IServerWorkingCopy server);
-	}
-
-	/**
-	 * Searches for servers. 
-	 * It uses the callback listener to report servers that are found.
-	 * 
-	 * @param host a host string conforming to RFC 2732
-	 * @param listener a listener to report status to
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 */
-	public abstract void searchForServers(String host, IServerSearchListener listener, IProgressMonitor monitor);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ClientDelegate.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ClientDelegate.java
deleted file mode 100644
index c4031de..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ClientDelegate.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.wst.server.core.model;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.wst.server.core.IServer;
-/**
- * A launchable client is a client side application or test harness that can
- * be launched (run) against a resource running on a server.
- * <p>
- * This abstract class is intended to be extended only by clients
- * to extend the <code>clients</code> extension point.
- * </p>
- * 
- * @since 1.0
- */
-public abstract class ClientDelegate {
-	/**
-	 * Returns true if this launchable can be run by this client.
-	 * 
-	 * @param server the server that the client is being run against
-	 * @param launchable the object to run on the server
-	 * @param launchMode the launch mode
-	 * @return <code>true</code> if the client supports this combination, and <code>false</code>
-	 *    otherwise
-	 */
-	public boolean supports(IServer server, Object launchable, String launchMode) {
-		return true;
-	}
-
-	/**
-	 * Opens or executes on the launchable.
-	 * 
-	 * @param server the server that the client is being run against
-	 * @param launchable the object to run on the server
-	 * @param launchMode the launch mode
-	 * @param launch the launch of the server, if available
-	 * @return status indicating what (if anything) went wrong
-	 */
-	public abstract IStatus launch(IServer server, Object launchable, String launchMode, ILaunch launch);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/IModuleFile.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/IModuleFile.java
deleted file mode 100644
index 6b8f0ea..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/IModuleFile.java
+++ /dev/null
@@ -1,25 +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.model;
-/**
- * A file within a module.
- * 
- * @since 1.0
- */
-public interface IModuleFile extends IModuleResource {
-	/**
-	 * Returns a modification stamp. Whenever the modification
-	 * stamp changes, there may have been a change to the file.
-	 * 
-	 * @return the modification stamp
-	 */
-	public long getModificationStamp();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/IModuleFolder.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/IModuleFolder.java
deleted file mode 100644
index b8c0820..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/IModuleFolder.java
+++ /dev/null
@@ -1,24 +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.model;
-/**
- * A folder within a module.
- * 
- * @since 1.0
- */
-public interface IModuleFolder extends IModuleResource {
-	/**
-	 * Returns the members (contents) of this folder.
-	 * 
-	 * @return an array containing the module resources contained in this folder
-	 */
-	public IModuleResource[] members();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/IModuleResource.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/IModuleResource.java
deleted file mode 100644
index 949c7d4..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/IModuleResource.java
+++ /dev/null
@@ -1,33 +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.model;
-
-import org.eclipse.core.runtime.IPath;
-/**
- * A resource (file or folder) within a module.
- * 
- * @since 1.0
- */
-public interface IModuleResource {
-	/**
-	 * Returns the module relative path to this resource.
-	 * 
-	 * @return the module relative path to this resource
-	 */
-	public IPath getModuleRelativePath();
-	
-	/**
-	 * Returns the name of this resource.
-	 * 
-	 * @return the name of this resource
-	 */
-	public String getName();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/IModuleResourceDelta.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/IModuleResourceDelta.java
deleted file mode 100644
index 9174fed..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/IModuleResourceDelta.java
+++ /dev/null
@@ -1,160 +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.model;
-
-import org.eclipse.core.runtime.IPath;
-/**
- * 
- * @since 1.0
- */
-public interface IModuleResourceDelta {
-	/**
-	 * Kind constant (value 0) for no change.
-	 * 
-	 * @see #getKind()
-	 */
-	public static final int NO_CHANGE = 0;
-
-	/**
-	 * Kind constant (value 1) for added resources.
-	 * 
-	 * @see #getKind()
-	 */
-	public static final int ADDED = 1;
-
-	/**
-	 * Kind constant (value 2) for changed resources.
-	 * 
-	 * @see #getKind()
-	 */
-	public static final int CHANGED = 2;
-
-	/**
-	 * Kind constant (value 3) for removed resources.
-	 * 
-	 * @see #getKind()
-	 */
-	public static final int REMOVED = 3;
-
-	/**
-	 * Returns the module resource represented by this delta.
-	 * 
-	 * @return the corresponding module resource
-	 */
-	public IModuleResource getModuleResource();
-
-	/**
-	 * Returns the kind of this resource delta.
-	 * Normally, one of <code>ADDED</code>, 
-	 * <code>REMOVED</code>, <code>CHANGED</code>.
-	 * 
-	 * @return the kind of this resource delta
-	 * 
-	 * @see IModuleResourceDelta#ADDED
-	 * @see IModuleResourceDelta#REMOVED
-	 * @see IModuleResourceDelta#CHANGED
-	 */
-	public int getKind();
-
-	/**
-	 * Returns module resource deltas for all children of this resource 
-	 * which were added, removed, or changed. Returns an empty
-	 * array if there are no affected children.
-	 * <p>
-	 * This is a convenience method, fully equivalent to:
-	 * <pre>
-	 *   getAffectedChildren(ADDED | REMOVED | CHANGED, IResource.NONE);
-	 * </pre>
-	 * </p>
-	 *
-	 * @return the resource deltas for all affected children
-	 * @see IModuleResourceDelta#ADDED
-	 * @see IModuleResourceDelta#REMOVED
-	 * @see IModuleResourceDelta#CHANGED
-	 */
-	public IModuleResourceDelta[] getAffectedChildren();
-	
-	/**
-	 * Returns the module-relative path of this resource delta.
-	 * Returns the empty path for resources in the module root.
-	 * <p>
-	 * A resource's module-relative path indicates the route from the module
-	 * to the resource. Within a module, there is exactly one such path
-	 * for any given resource. The returned path never has a trailing separator.
-	 * </p>
-	 * @return the module-relative path of this resource delta
-	 * @see IModuleResource#getModuleRelativePath()
-	 */
-	public IPath getModuleRelativePath();
-	
-	/**
-	 * Finds and returns the descendent delta identified by the given path in
-	 * this delta, or <code>null</code> if no such descendent exists.
-	 * The supplied path may be absolute or relative; in either case, it is
-	 * interpreted as relative to this delta.   Trailing separators are ignored.
-	 * If the path is empty this delta is returned.
-	 * <p>
-	 * This is a convenience method to avoid manual traversal of the delta
-	 * tree in cases where the listener is only interested in changes to
-	 * particular resources.  Calling this method will generally be
-	 * faster than manually traversing the delta to a particular descendent.
-	 * </p>
-	 * @param path the path of the desired descendent delta
-	 * @return the descendent delta, or <code>null</code> if no such
-	 * 		descendent exists in the delta
-	 * @since 2.0
-	 */
-	//public IModuleResourceDelta findMember(IPath path);
-	
-	/**
-	 * Returns resource deltas for all children of this resource 
-	 * whose kind is included in the given mask. Kind masks are formed
-	 * by the bitwise or of <code>IResourceDelta</code> kind constants.
-	 * Returns an empty array if there are no affected children.
-	 * <p>
-	 * This is a convenience method, fully equivalent to:
-	 * <pre>
-	 *   getAffectedChildren(kindMask, IResource.NONE);
-	 * </pre>
-	 * Team-private member resources are <b>not</b> included in the result.
-	 * </p>
-	 *
-	 * @param kindMask a mask formed by the bitwise or of <code>IResourceDelta </code> 
-	 *    delta kind constants
-	 * @return the resource deltas for all affected children
-	 * @see IResourceDelta#ADDED
-	 * @see IResourceDelta#REMOVED
-	 * @see IResourceDelta#CHANGED
-	 * @see #getAffectedChildren(int)
-	 */
-	//public IModuleResourceDelta[] getAffectedChildren(int kindMask);
-	
-	/**
-	 * Accepts the given visitor.
-	 * The only kinds of resource deltas visited 
-	 * are <code>ADDED</code>, <code>REMOVED</code>, 
-	 * and <code>CHANGED</code>.
-	 * The visitor's <code>visit</code> method is called with this
-	 * resource delta if applicable. If the visitor returns <code>true</code>,
-	 * the resource delta's children are also visited.
-	 * <p>
-	 * This is a convenience method, fully equivalent to 
-	 * <code>accept(visitor, IResource.NONE)</code>.
-	 * Although the visitor will be invoked for this resource delta, it will not be
-	 * invoked for any team-private member resources.
-	 * </p>
-	 *
-	 * @param visitor the visitor
-	 * @exception CoreException if the visitor failed with this exception.
-	 * @see IResourceDeltaVisitor#visit(IResourceDelta)
-	 */
-	//public void accept(IModuleResourceDeltaVisitor visitor) throws CoreException;
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/IURLProvider.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/IURLProvider.java
deleted file mode 100644
index c0d9d5e..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/IURLProvider.java
+++ /dev/null
@@ -1,44 +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.model;
-
-import java.net.URL;
-
-import org.eclipse.wst.server.core.IModule;
-/**
- * 
- * @since 1.0
- */
-public interface IURLProvider {
-	/**
-	 * Return the base URL of this module on the server. (e.g. 
-	 * "http://localhost:8080/myProject") 
-	 * <p>
-	 * This method may return null if this server does not have a valid configuration
-	 * or if the server is not running. The returned URL must not end in a trailing
-	 * slash.
-	 * </p>
-	 * <p>
-	 * If the module is null, the returned URL will just be to the root of
-	 * the server (e.g. "http://localhost:8080")
-	 * </p>
-	 * <p>
-	 * If the module is not already added to the server, the method will return
-	 * as close an approximation as possible. (for instance, for a J2EE web project
-	 * it may use the project's context root, which may not be the same when deployed
-	 * to a server)
-	 * </p>
-	 *
-	 * @param module com.ibm.etools.server.core.IModule
-	 * @return java.net.URL
-	 */
-	public URL getModuleRootURL(IModule module);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/InternalInitializer.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/InternalInitializer.java
deleted file mode 100644
index 7429055..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/InternalInitializer.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.wst.server.core.model;
-
-import org.eclipse.wst.server.core.internal.ModuleFactory;
-import org.eclipse.wst.server.core.internal.Runtime;
-import org.eclipse.wst.server.core.internal.Server;
-/**
- * This is an internal utility class that is used by the server framework.
- * It is not API and should never be used by clients.
- */
-public class InternalInitializer {
-	public static void initializeServerDelegate(ServerDelegate delegate, Server newServer) {
-		delegate.initialize(newServer);
-	}
-	
-	public static void initializeServerBehaviourDelegate(ServerBehaviourDelegate delegate, Server newServer) {
-		delegate.initialize(newServer);
-	}
-	
-	public static void initializeRuntimeDelegate(RuntimeDelegate delegate, Runtime newRuntime) {
-		delegate.initialize(newRuntime);
-	}
-
-	public static void initializeModuleFactoryDelegate(ModuleFactoryDelegate delegate, ModuleFactory newModuleFactory) {
-		delegate.initialize(newModuleFactory);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/LaunchableAdapterDelegate.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/LaunchableAdapterDelegate.java
deleted file mode 100644
index 47fd4e8..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/LaunchableAdapterDelegate.java
+++ /dev/null
@@ -1,39 +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.model;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.wst.server.core.IModuleArtifact;
-import org.eclipse.wst.server.core.IServer;
-/**
- * This interface, typically implemented by the server code, converts from
- * an IModuleArtifact to an object launchable on the server.
- * 
- * <p>This is the implementation of a launchableAdapter extension point.</p>
- * <p>
- * This abstract class is intended to be extended only by clients
- * to extend the <code>launchableAdapters</code> extension point.
- * </p>
- * 
- * @since 1.0
- */
-public abstract class LaunchableAdapterDelegate {
-	/**
-	 * Returns a launchable object from this module artifact.
-	 * 
-	 * @param server the server
-	 * @param moduleArtifact a module artifact
-	 * [issue: if the launchable object cannot be found, should it throw a CoreExcpetion or return null?]
-	 * @return the launchable object
-	 * @throws CoreException if there was an error doing the conversion
-	 */
-	public abstract Object getLaunchable(IServer server, IModuleArtifact moduleArtifact) throws CoreException;
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ModuleArtifactAdapterDelegate.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ModuleArtifactAdapterDelegate.java
deleted file mode 100644
index c3528b7..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ModuleArtifactAdapterDelegate.java
+++ /dev/null
@@ -1,37 +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.model;
-
-import org.eclipse.wst.server.core.IModuleArtifact;
-/**
- * A module artifact adapter converts from some view's model
- * object into a module artifact that is recognized by one or
- * more server types.
- * 
- * <p>This is the implementation of a moduleArtifactAdapter
- * extension point.</p>
- * <p>
- * This abstract class is intended to be extended only by clients
- * to extend the <code>moduleArtifactAdapters</code> extension point.
- * </p>
- * 
- * @since 1.0
- */
-public abstract class ModuleArtifactAdapterDelegate {
-	/**
-	 * Converts from an arbitrary object to an module artifact.
-	 *
-	 * @param obj an arbitrary object from a view or editor
-	 * @return an module artifact, or <code>null</code> if this
-	 *    adapter does not recognize or cannot adapt the object
-	 */
-	public abstract IModuleArtifact getModuleArtifact(Object obj);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ModuleDelegate.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ModuleDelegate.java
deleted file mode 100644
index a9e66aa..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ModuleDelegate.java
+++ /dev/null
@@ -1,112 +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.model;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.wst.server.core.IModule;
-/**
- * A module delegate provides a mechanism for discovering information
- * about individual modules. Modules are returned from module factory
- * delegates; their delegates are created when
- * ModuleFactoryDelegate.createModule() is called.
- * <p>
- * When the module needs to be given a delegate, the delegate class
- * specified for the module is instantiated with a 0-argument
- * constructor.
- * </p>
- * <p>
- * Module delegates may keep state in instance fields, but that state is
- * transient and will not be persisted across workbench sessions.
- * </p>
- * <p>
- * This abstract class is intended to be extended only by clients
- * to extend the <code>moduleFactories</code> extension point.
- * </p>
- * 
- * @see org.eclipse.wst.server.core.IModule
- * @see ModuleFactoryDelegate
- * @since 1.0
- */
-public abstract class ModuleDelegate {
-	private IModule module;
-
-	/**
-	 * Delegates must have a public 0-arg constructor.
-	 */
-	public ModuleDelegate() {
-		// do nothing
-	}
-
-	/**
-	 * Initializes this module delegate with its life-long module instance.
-	 * <p>
-	 * This method is called by the server core framework.
-	 * Clients should never call this method.
-	 * </p>
-	 * 
-	 * @param newModule the module instance
-	 */
-	public final void initialize(IModule newModule) {
-		this.module = newModule;
-		initialize();
-	}
-
-	/**
-	 * Initializes this module delegate. This method gives delegates a chance
-	 * to do their own initialization.
-	 * <p>
-	 * This method is called by the server core framework.
-	 * Clients should never call this method.
-	 * </p>
-	 */
-	public void initialize() {
-		// do nothing
-	}
-
-	/**
-	 * Returns the module that this module delegate corresponds to.
-	 * 
-	 * @return the module
-	 */
-	public IModule getModule() {
-		return module;
-	}
-
-	/**
-	 * Validates this module instance. Subclasses should
-	 * override and call super.validate() for basic validation. 
-	 * <p>
-	 * This method is called by the web server core framework.
-	 * Clients should never call this method.
-	 * </p>
-	 *
-	 * @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 abstract IStatus validate();
-
-	/**
-	 * Returns the child modules of this module.
-	 *
-	 * @return a possibly empty array of child modules
-	 */
-	public abstract IModule[] getChildModules();
-	
-	/**
-	 * Returns the current array of module artifacts.
-	 * 
-	 * @return a possibly empty array containing the module resources
-	 * @throws CoreException thrown if there is a problem getting the members
-	 */
-	public abstract IModuleResource[] members() throws CoreException;
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ModuleFactoryDelegate.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ModuleFactoryDelegate.java
deleted file mode 100644
index e855d26..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ModuleFactoryDelegate.java
+++ /dev/null
@@ -1,112 +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.model;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.internal.Module;
-import org.eclipse.wst.server.core.internal.ModuleFactory;
-/**
- * A module factory delegate provides a mechanism for discovering
- * modules. A module factory delegate is specified by the
- * <code>class</code> attribute of a <code>moduleFactories</code> extension.
- * <p>
- * When the module factory needs to be given a delegate, the delegate class
- * specified for the module factory is instantiated with a 0-argument
- * constructor.
- * </p>
- * <p>
- * Module factory delegates may keep state in instance fields, but that state is
- * transient and will not be persisted across workbench sessions.
- * </p>
- * <p>
- * This abstract class is intended to be extended only by clients
- * to extend the <code>moduleFactories</code> extension point.
- * </p>
- * 
- * @see org.eclipse.wst.server.core.IModule
- * @see ModuleDelegate
- * @since 1.0
- */
-public abstract class ModuleFactoryDelegate {
-	private ModuleFactory factory;
-	
-	/**
-	 * Delegates must have a public 0-arg constructor.
-	 */
-	public ModuleFactoryDelegate() {
-		// do nothing
-	}
-
-	/**
-	 * Initializes this module factory delegate with its life-long module
-	 * factory instance.
-	 * <p>
-	 * This method is called by the server core framework.
-	 * Clients should never call this method.
-	 * </p>
-	 * 
-	 * @param newFactory the module factory instance
-	 */
-	final void initialize(ModuleFactory newFactory) {
-		factory = newFactory;
-	}
-
-	/**
-	 * Returns the id of this factory.
-	 * Each factory 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 factory id
-	 */
-	protected final String getId() {
-		return factory.getId();
-	}
-
-	/**
-	 * Creates a module instance with the given static information. This method is used
-	 * by module factory delegates to create module instances.
-	 *  
-	 * @param id the module id
-	 * @param name the module name
-	 * @param type the module type id
-	 * @param version the module version id
-	 * @param project the project that the module is contained in
-	 * @return a module instance
-	 */
-	protected final IModule createModule(String id, String name, String type, String version, IProject project) {
-		return new Module(factory, id, name, type, version, project);
-	}
-
-	/**
-	 * Creates the module delegate for a module with the given information.
-	 * This method is called when a client needs to access the module delegate
-	 * associated with the given module.
-	 * 
-	 * @param module a module
-	 * @return the module delegate
-	 */
-	public abstract ModuleDelegate getModuleDelegate(IModule module);
-
-	/**
-	 * Return all modules created by this factory. 
-	 * <p>
-	 * This method is normally called by the web server core framework.
-	 * Clients (other than the delegate) should never call this method.
-	 * </p>
-	 * <p>
-	 * A new array is returned on each call, so clients may store or modify the result.
-	 * </p>
-	 * 
-	 * @return a possibly-empty array of modules {@link IModule}
-	 */
-	public abstract IModule[] getModules();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/PublishOperation.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/PublishOperation.java
deleted file mode 100644
index a38374b..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/PublishOperation.java
+++ /dev/null
@@ -1,164 +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.model;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.server.core.TaskModel;
-/**
- * An publish operation that will be executed during publishing. 
- * 
- * [issue: EY It is not clear to me that when this task will be run. Will the place where the
- * task is being run depend on the server, e.g. the TDC tasks for the v6 server should be run
- * after the server is started the modules are added to the server; however, the EJB deploy task
- * makes more sense to be run before adding the project to the server.]
- * 
- * @since 1.0
- */
-public abstract class PublishOperation {
-	private TaskModel model;
-	private String label;
-	private String description;
-
-   /**
-	 * Operation kind constant (value 0) indicating that the operation
-	 * does not need be executed.
-	 * 
-	 * @see #getKind()
-	 */
-	public static final int OPTIONAL = 0;
-
-	/**
-	 * Operation kind constant (value 1) indicating that the operation
-	 * should be executed.
-	 * 
-	 * @see #getKind()
-	 */
-	public static final int PREFERRED = 1;
-
-	/**
-	 * Operation kind constant (value 2) indicating that the operation
-	 * must be executed.
-	 * 
-	 * @see #getKind()
-	 */
-	public static final int REQUIRED = 2;
-
-	/**
-	 * Create a new operation. The label and description must be supplied
-	 * by overriding the getLabel() and getDescription() methods.
-	 */
-	public PublishOperation() {
-		// do nothing
-	}
-
-	/**
-	 * Create a new operation with the given label and description.
-	 * 
-	 * @param label a translated label for the operation
-	 * @param description the operation description
-	 */
-	public PublishOperation(String label, String description) {
-		this.label = label;
-		this.description = description;
-	}
-
-	/**
-	 * Returns the kind of this operation. Operations can either be OPTIONAL
-	 * (do not have to be executed), PREFERRED (should be executed), or
-	 * REQUIRED (must be executed).
-	 * 
-	 * @return one of the kind constants (e.g. <code>REQUIRED</code>)
-	 *    declared on {@link PublishOperation}
-	 */
-	public int getKind() {
-		return OPTIONAL;
-	}
-
-	/**
-	 * Returns the order (index/priority) of the task that will be run. The task with
-	 * a smaller order value will be run before the task with a bigger order value.
-	 * For tasks that have the same order value, the order of running those task are 
-	 * not guaranteed.  
-	 * 
-	 * @return the order (index/priority) of the task that will be run.
-	 */
-	public abstract int getOrder();
-
-	/**
-	 * Returns the displayable label for this operation.
-	 * <p>
-	 * Note that this label is appropriate for the current locale.
-	 * </p>
-	 *
-	 * @return a displayable label for this operation
-	 */
-	public String getLabel() {
-		return label;
-	}
-
-	/**
-	 * Returns the displayable description for this operation.
-	 * <p>
-	 * Note that this description is appropriate for the current locale.
-	 * </p>
-	 *
-	 * @return a displayable description for this operation
-	 */
-	public String getDescription() {
-		return description;
-	}
-
-	/**
-	 * Return the task model.
-	 * <p>
-	 * A task model contains information about the overall task flow and allows
-	 * tasks to store and retreive data. Its usage allows mutliple tasks to be
-	 * chained together and share data from the output of one task to the input
-	 * of another.
-	 * </p>
-	 * 
-	 * @return the task model
-	 */
-	public TaskModel getTaskModel() {
-		return model;
-	}
-
-	/**
-	 * Set the task model.
-	 * <p>
-	 * A task model contains information about the overall task flow and allows
-	 * tasks to store and retreive data. Its usage allows mutliple tasks to be
-	 * chained together and share data from the output of one task to the input
-	 * of another.
-	 * </p>
-	 * 
-	 * @param taskModel the task model
-	 */
-	public void setTaskModel(TaskModel taskModel) {
-		this.model = taskModel;
-	}
-
-	/**
-	 * Execute (perform) the operation.
-	 * 
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @param info the IAdaptable (or <code>null</code>) provided by the
-	 *    caller in order to supply UI information for prompting the
-	 *    user if necessary. When this parameter is not
-	 *    <code>null</code>, it should minimally contain an adapter
-	 *    for the org.eclipse.swt.widgets.Shell.class.
-	 * @throws CoreException if there was an error while executing the task
-	 */
-	public abstract void execute(IProgressMonitor monitor, IAdaptable info) throws CoreException;
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/PublishTaskDelegate.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/PublishTaskDelegate.java
deleted file mode 100644
index c38e206..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/PublishTaskDelegate.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.model;
-
-import java.util.List;
-
-import org.eclipse.wst.server.core.IServer;
-/**
- * A publish task delegate.
- * 
- * <p>This is the implementation of a publishTask extension point.</p>
- * <p>
- * This abstract class is intended to be extended only by clients
- * to extend the <code>publishTask</code> extension point.
- * </p>
- * 
- * @since 1.0
- */
-public abstract class PublishTaskDelegate {
-	/**
-	 * Returns the tasks that should be performed during publishing.
-	 * 
-	 * @param server the server
-	 * @param modules a list containing IModule arrays
-	 * @return the tasks that should be performed on the server.
-	 */
-	public abstract PublishOperation[] getTasks(IServer server, List modules);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/RuntimeDelegate.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/RuntimeDelegate.java
deleted file mode 100644
index c3398c4..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/RuntimeDelegate.java
+++ /dev/null
@@ -1,305 +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.model;
-
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.wst.server.core.IRuntime;
-import org.eclipse.wst.server.core.IRuntimeWorkingCopy;
-import org.eclipse.wst.server.core.ServerCore;
-import org.eclipse.wst.server.core.internal.Messages;
-import org.eclipse.wst.server.core.internal.Runtime;
-import org.eclipse.wst.server.core.internal.RuntimeWorkingCopy;
-import org.eclipse.wst.server.core.internal.ServerPlugin;
-/**
- * A runtime delegate provides the implementation for various 
- * generic and server-type-specific operations for a specific type of runtime.
- * A runtime delegate is specified by the
- * <code>class</code> attribute of a <code>runtimeTypes</code> extension.
- * <p>
- * When the runtime instance needs to be given a delegate, the delegate class
- * specified for the runtime type is instantiated with a 0-argument constructor
- * and primed with <code>delegate.initialize(runtime)</code>, 
- * which it is expected to hang on to. Later, when
- * <code>delegate.dispose()</code> is called as the runtime instance is
- * being discarded, the delegate is expected to let go of the runtime instance.
- * </p>
- * <p>
- * RuntimeDelegate supports an open-ended set of attribute-value pairs. All
- * state stored in this manner will be saved when the runtime working copy is
- * saved, and persisted across workbench sessions.
- * Runtime delegates may keep state in instance fields, but that state is
- * transient and will not be persisted across workbench sessions. To save state
- * across workbench sessions, it must be persisted using the attributes.
- * </p>
- * <p>
- * This abstract class is intended to be extended only by clients
- * to extend the <code>runtimeTypes</code> extension point.
- * </p>
- * 
- * @see IRuntime
- * @see IRuntimeWorkingCopy
- * @since 1.0
- */
-public abstract class RuntimeDelegate {
-	private Runtime runtime;
-	private RuntimeWorkingCopy runtimeWC;
-	
-	/**
-	 * Delegates must have a public 0-arg constructor.
-	 */
-	public RuntimeDelegate() {
-		// do nothing
-	}
-
-	/**
-	 * Initializes this runtime delegate with its life-long runtime instance.
-	 * <p>
-	 * This method is called by the server core framework.
-	 * Clients should never call this method.
-	 * </p>
-	 * 
-	 * @param newRuntime the runtime instance
-	 */
-	final void initialize(Runtime newRuntime) {
-		runtime = newRuntime;
-		if (runtime instanceof RuntimeWorkingCopy)
-			runtimeWC = (RuntimeWorkingCopy) runtime;
-		initialize();
-	}
-
-	/**
-	 * Initializes this runtime delegate. This method gives delegates a chance
-	 * to do their own initialization.
-	 * <p>
-	 * This method is called by the server core framework.
-	 * Clients should never call this method.
-	 * </p>
-	 */
-	protected void initialize() {
-		// do nothing
-	}
-
-	/**
-	 * Returns the runtime that this runtime delegate corresponds to.
-	 * 
-	 * @return the runtime
-	 */
-	public final IRuntime getRuntime() {
-		return runtime;
-	}
-
-	/**
-	 * Returns the runtime working copy that this runtime delegate corresponds to.
-	 * 
-	 * @return the runtime
-	 */
-	public final IRuntimeWorkingCopy getRuntimeWorkingCopy() {
-		return runtimeWC;
-	}
-
-	/**
-	 * Validates this runtime instance. Subclasses should
-	 * override and call super.validate() for basic validation. 
-	 * <p>
-	 * This method is called by the web server core framework,
-	 * in response to a call to <code>IRuntime.validate(IProgressMonitor)</code>.
-	 * Clients should never call this method.
-	 * </p>
-	 *
-	 * @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() {
-		if (runtime.getName() == null || runtime.getName().length() == 0)
-			return new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, Messages.errorRuntimeName, null);
-
-		if (isNameInUse())
-			return new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, Messages.errorDuplicateRuntimeName, null);
-	
-		IPath path = runtime.getLocation();
-		if (path == null || path.isEmpty())
-			return new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, "", null);
-		
-		return new Status(IStatus.OK, ServerPlugin.PLUGIN_ID, 0, "", null);
-	}
-
-	/**
-	 * Returns <code>true</code> if the current name is already in use.
-	 * 
-	 * @return <code>true</code> if the name is in use, and <code>false</code>
-	 *    otherwise
-	 */
-	private boolean isNameInUse() {
-		IRuntime orig = runtime;
-		if (runtimeWC != null)
-			orig = runtimeWC.getOriginal();
-		
-		IRuntime[] runtimes = ServerCore.getRuntimes();
-		if (runtimes != null) {
-			int size = runtimes.length;
-			for (int i = 0; i < size; i++) {
-				if (orig != runtimes[i] && runtime.getName().equals(runtimes[i].getName()))
-					return true;
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * Returns the value of the specified int-valued attribute.
-	 * 
-	 * @param id the attribute id
-	 * @param defaultValue the default value of the specified attribute
-	 * @return the attribute value
-	 * @see #setAttribute(String, int)
-	 */
-	protected final int getAttribute(String id, int defaultValue) {
-		return runtime.getAttribute(id, defaultValue);
-	}
-
-	/**
-	 * Returns the value of the specified boolean-valued attribute.
-	 * 
-	 * @param id the attribute id
-	 * @param defaultValue the default value of the specified attribute
-	 * @return the attribute value
-	 * @see #setAttribute(String, boolean)
-	 */
-	protected final boolean getAttribute(String id, boolean defaultValue) {
-		return runtime.getAttribute(id, defaultValue);
-	}
-
-	/**
-	 * Returns the value of the specified String-valued attribute.
-	 * 
-	 * @param id the attribute id
-	 * @param defaultValue the default value of the specified attribute
-	 * @return the attribute value
-	 * @see #setAttribute(String, String)
-	 */
-	protected final String getAttribute(String id, String defaultValue) {
-		return runtime.getAttribute(id, defaultValue);
-	}
-
-	/**
-	 * Returns the value of the specified List-valued attribute.
-	 * 
-	 * @param id the attribute id
-	 * @param defaultValue the default value of the specified attribute
-	 * @return the attribute value
-	 * @see #setAttribute(String, List)
-	 */
-	protected final List getAttribute(String id, List defaultValue) {
-		return runtime.getAttribute(id, defaultValue);
-	}
-
-	/**
-	 * Returns the value of the specified Map-valued attribute.
-	 * 
-	 * @param id the attribute id
-	 * @param defaultValue the default value of the specified attribute
-	 * @return the attribute value
-	 * @see #setAttribute(String, Map)
-	 */
-	protected final Map getAttribute(String id, Map defaultValue) {
-		return runtime.getAttribute(id, defaultValue);
-	}
-	
-	/**
-	 * Disposes of this runtime delegate.
-	 * <p>
-	 * This method is called by the web server core framework.
-	 * Clients should never call this method.
-	 * </p>
-	 * <p>
-	 * Implementations are expected to let go of the delegate's reference
-	 * to the runtime, deregister listeners, etc.
-	 * </p>
-	 */
-	public void dispose() {
-		// do nothing
-	}
-
-	/**
-	 * Initializes this runtime with default values. This method is called when
-	 * a new runtime is created so that the runtime can be initialized with
-	 * meaningful values.
-	 */
-	public void setDefaults() {
-		// do nothing
-	}
-
-	/**
-	 * Sets the value of the specified integer-valued attribute of this
-	 * element.
-	 * 
-	 * @param id the attribute id
-	 * @param value the value of the specified attribute
-	 * @see #getAttribute(String, int)
-	 */
-	protected final void setAttribute(String id, int value) {
-		runtimeWC.setAttribute(id, value);
-	}
-
-	/**
-	 * Sets the value of the specified boolean-valued attribute of this
-	 * element.
-	 * 
-	 * @param id the attribute id
-	 * @param value the value of the specified attribute
-	 * @see #getAttribute(String, boolean)
-	 */
-	protected final void setAttribute(String id, boolean value) {
-		runtimeWC.setAttribute(id, value);
-	}
-
-	/**
-	 * Sets the value of the specified string-valued attribute of this
-	 * element.
-	 * 
-	 * @param id the attribute id
-	 * @param value the value of the specified attribute
-	 * @see #getAttribute(String, String)
-	 */
-	protected final void setAttribute(String id, String value) {
-		runtimeWC.setAttribute(id, value);
-	}
-
-	/**
-	 * Sets the value of the specified list-valued attribute of this
-	 * element. The list may only contain String values.
-	 * 
-	 * @param id the attribute id
-	 * @param value the value of the specified attribute
-	 * @see #getAttribute(String, List)
-	 */
-	protected final void setAttribute(String id, List value) {
-		runtimeWC.setAttribute(id, value);
-	}
-
-	/**
-	 * Sets the value of the specified map-valued attribute of this
-	 * element. The map may only contain String values.
-	 * 
-	 * @param id the attribute id
-	 * @param value the value of the specified attribute
-	 * @see #getAttribute(String, Map)
-	 */
-	protected final void setAttribute(String id, Map value) {
-		runtimeWC.setAttribute(id, value);
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/RuntimeLocatorDelegate.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/RuntimeLocatorDelegate.java
deleted file mode 100644
index 2a1a709..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/RuntimeLocatorDelegate.java
+++ /dev/null
@@ -1,52 +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.model;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.server.core.IRuntimeWorkingCopy;
-/**
- * A runtime locator provides the ability to locate or search for additional
- * runtimes of a particular type.
- * <p>
- * This abstract class is intended to be extended only by clients
- * to extend the <code>runtimeLocators</code> extension point.
- * </p>
- * 
- * @since 1.0
- */
-public abstract class RuntimeLocatorDelegate {
-	/**
-	 * A callback listener used to report progress.
-	 */
-	public interface IRuntimeSearchListener {
-		/**
-		 * Called when a new runtime is found by the locator.
-		 * The runtime must never be null.
-		 * 
-		 * @param runtime the runtime that was found.
-		 */
-		public void runtimeFound(IRuntimeWorkingCopy runtime);
-	}
-
-	/**
-	 * Searches for local runtimes. 
-	 * It uses the callback listener to report runtimes that are found.
-	 * The path contains the absolute path of the folder to search in,
-	 * or <code>null</code> to search the entire machine.
-	 * 
-	 * @param path the path to search for runtimes in
-	 * @param listener a listener to report status to
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 */
-	public abstract void searchForRuntimes(IPath path, IRuntimeSearchListener listener, IProgressMonitor monitor);
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/RuntimeTargetHandlerDelegate.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/RuntimeTargetHandlerDelegate.java
deleted file mode 100644
index b4cb1e8..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/RuntimeTargetHandlerDelegate.java
+++ /dev/null
@@ -1,77 +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.model;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.wst.server.core.IRuntime;
-import org.eclipse.wst.server.core.IRuntimeTargetHandler;
-/**
- * A runtime target handler is used when associating a runtime with
- * a particular project. It has the ability to make any changes it requires
- * on the projects - adding or removing files, setting up the classpath, etc.
- * <p>
- * This abstract class is intended to be extended only by clients
- * to extend the <code>runtimeTargetHandlers</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>
- * 
- * @since 1.0
- */
-public abstract class RuntimeTargetHandlerDelegate {
-	private IRuntimeTargetHandler handler;
-
-	/**
-	 * Initializes the runtime target handler.
-	 * 
-	 * @param newHandler the new handler
-	 */
-	public final void initialize(IRuntimeTargetHandler newHandler) {
-		handler = newHandler;
-	}
-
-	/**
-	 * Returns the runtime target handler that this delegate is associated with.
-	 * 
-	 * @return the runtime target handler
-	 */
-	public IRuntimeTargetHandler getRuntimeTargetHandler() {
-		return handler;
-	}
-
-	/**
-	 * Set the runtime target on the given project.
-	 * 
-	 * @param project the project to set the runtime on
-	 * @param runtime the target runtime
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @throws CoreException thrown if there is a problem setting the runtime
-	 */
-	public abstract void setRuntimeTarget(IProject project, IRuntime runtime, IProgressMonitor monitor) throws CoreException;
-
-	/**
-	 * Remove the runtime target from the given project.
-	 * 
-	 * @param project the project to remove the runtime from
-	 * @param runtime the target runtime
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @throws CoreException thrown if there is a problem removing the runtime
-	 */
-	public abstract void removeRuntimeTarget(IProject project, IRuntime runtime, 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/model/ServerBehaviourDelegate.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ServerBehaviourDelegate.java
deleted file mode 100644
index 9bb6c5e..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ServerBehaviourDelegate.java
+++ /dev/null
@@ -1,741 +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.model;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.core.runtime.*;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.internal.Messages;
-import org.eclipse.wst.server.core.internal.ProgressUtil;
-import org.eclipse.wst.server.core.internal.Server;
-import org.eclipse.wst.server.core.internal.ServerPlugin;
-import org.eclipse.wst.server.core.internal.Trace;
-/**
- * A server delegate provides the implementation for various 
- * generic and server-type-specific operations for a specific type of server.
- * A server delegate is specified by the
- * <code>class</code> attribute of a <code>serverTypes</code> extension.
- * <p>
- * When the server instance needs to be given a delegate, the delegate class
- * specified for the server type is instantiated with a 0-argument constructor
- * and primed with <code>delegate.initialize(((IServerState)server)</code>, 
- * which it is expected to hang on to. Later, when
- * <code>delegate.dispose()</code> is called as the server instance is
- * being discarded, the delegate is expected to let go of the server instance.
- * </p>
- * <p>
- * Server delegates may keep state in instance fields, but that state is
- * transient and will not be persisted across workbench sessions.
- * </p>
- * <p>
- * This abstract class is intended to be extended only by clients
- * to extend the <code>serverTypes</code> extension point.
- * </p>
- * 
- * @see org.eclipse.wst.server.core.IServer
- * @see org.eclipse.wst.server.core.IServerWorkingCopy
- * @since 1.0
- */
-public abstract class ServerBehaviourDelegate {
-	private Server server;
-
-	/**
-	 * Publish kind constant (value 0) for no change.
-	 * 
-	 * @see #publishModule(int, int, IModule[], IProgressMonitor)
-	 */
-	public static final int NO_CHANGE = 0;
-
-	/**
-	 * Publish kind constant (value 1) for added resources.
-	 * 
-	 * @see #publishModule(int, int, IModule[], IProgressMonitor)
-	 */
-	public static final int ADDED = 1;
-
-	/**
-	 * Publish kind constant (value 2) for changed resources.
-	 * 
-	 * @see #publishModule(int, int, IModule[], IProgressMonitor)
-	 */
-	public static final int CHANGED = 2;
-
-	/**
-	 * Publish kind constant (value 3) for removed resources.
-	 * 
-	 * @see #publishModule(int, int, IModule[], IProgressMonitor)
-	 */
-	public static final int REMOVED = 3;
-
-	/**
-	 * Delegates must have a public 0-arg constructor.
-	 */
-	public ServerBehaviourDelegate() {
-		// do nothing
-	}
-
-	/**
-	 * Initializes this server delegate with its life-long server instance.
-	 * <p>
-	 * This method is called by the server core framework.
-	 * Clients should never call this method.
-	 * </p>
-	 * 
-	 * @param newServer the server instance
-	 */
-	final void initialize(Server newServer) {
-		server = newServer;
-		initialize();
-	}
-
-	/**
-	 * Initializes this server delegate. This method gives delegates a chance
-	 * to do their own initialization.
-	 * <p>
-	 * If the server state is initially unknown, this method should attempt
-	 * to connect to the server and update the state. On servers where the
-	 * state may change, this is also an excellent place to create a background
-	 * thread that will constantly ping the server (or have a listener) to
-	 * update the server state as changes occur.
-	 * </p>
-	 * <p>
-	 * This method is called by the server core framework.
-	 * Clients should never call this method.
-	 * </p>
-	 * [issue: add progress monitor?]
-	 */
-	protected void initialize() {
-		// do nothing
-	}
-
-	/**
-	 * Returns the server that this server delegate corresponds to.
-	 * 
-	 * @return the server
-	 */
-	public final IServer getServer() {
-		return server;
-	}
-
-	/**
-	 * Sets the current state of this server.
-	 *
-	 * @param state the current state of the server, one of the state
-	 *    constants defined by {@link IServer}
-	 * @see IServer#getServerState()
-	 */
-	protected final void setServerState(int state) {
-		server.setServerState(state);
-	}
-
-	/**
-	 * Sets the ILaunchManager mode that the server is running in. The server
-	 * implementation will automatically return <code>null</code> to clients
-	 * when the server is stopped, so you only need to update the mode when
-	 * it changes.
-	 * 
-	 * @param mode the mode in which a server is running, one of the mode constants
-	 *    defined by {@link org.eclipse.debug.core.ILaunchManager}
-	 */
-	protected final void setMode(String mode) {
-		server.setMode(mode);
-	}
-
-	/**
-	 * Sets the server restart state.
-	 *
-	 * @param state <code>true</code> if the server needs to be restarted,
-	 *    and <code>false</code> otherwise
-	 */
-	protected final void setServerRestartState(boolean state) {
-		server.setServerRestartState(state);
-	}
-
-	/**
-	 * Sets the server publish state.
-	 *
-	 * @param state the current publish state of the server, one of the
-	 *    publish constants defined by {@link IServer}
-	 */
-	protected final void setServerPublishState(int state) {
-		server.setServerPublishState(state);
-	}
-
-	/**
-	 * Hook to fire an event when a module state changes.
-	 * 
-	 * @param module the module
-	 * @param state the current state of the module, one of the state
-	 *    constants defined by {@link IServer}
-	 */
-	protected final void setModuleState(IModule[] module, int state) {
-		server.setModuleState(module, state);
-	}
-
-	/**
-	 * Sets the module publish state.
-	 *
-	 * @param module the module
-	 * @param state the current publish state of the module, one of the
-	 *    publish constants defined by {@link IServer}
-	 */
-	protected final void setModulePublishState(IModule[] module, int state) {
-		server.setModulePublishState(module, state);
-	}
-
-	/**
-	 * Sets the module restart state.
-	 *
-	 * @param module the module
-	 * @param state <code>true</code> if the module needs to be restarted,
-	 *    and <code>false</code> otherwise
-	 */
-	protected final void setModuleRestartState(IModule[] module, boolean state) {
-		server.setModuleRestartState(module, state);
-	}
-
-	/**
-	 * Disposes of this server delegate.
-	 * <p>
-	 * This method is called by the web server core framework.
-	 * Clients should never call this method.
-	 * </p>
-	 * <p>
-	 * Implementations are expected to let go of the delegate's reference
-	 * to the server, deregister listeners, etc.
-	 * </p>
-	 */
-	public void dispose() {
-		// do nothing
-	}
-
-	/**
-	 * Methods called to notify that publishing is about to begin.
-	 * This allows the server to open a connection to the server
-	 * or get any global information ready.
-	 * <p>
-	 * This method is called by the server core framework,
-	 * in response to a call to <code>IServer.publish()</code>.
-	 * Clients should never call this method.
-	 * </p>
-	 *
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @throws CoreException if there is a problem starting the publish
-	 */
-	protected void publishStart(IProgressMonitor monitor) throws CoreException {
-		// do nothing
-	}
-
-	/**
-	 * Publish the server.
-	 * <p>
-	 * This method is called by the server core framework,
-	 * in response to a call to <code>IServer.publish()</code>.
-	 * Clients should never call this method.
-	 * </p>
-	 * 
-	 * @param kind one of the IServer.PUBLISH_XX constants. 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>PUBLSIH_AUTO</code>- indicates an automatic incremental publish.</li>
-	 *    <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
-	 * @throws CoreException if there is a problem publishing the server
-	 */
-	protected void publishServer(int kind, IProgressMonitor monitor) throws CoreException {
-		// do nothing
-	}
-
-	/**
-	 * Publish a single module to the server.
-	 * <p>
-	 * This method is called by the server core framework,
-	 * in response to a call to <code>IServer.publish()</code>.
-	 * Clients should never call this method directly.
-	 * </p>
-	 * <p>
-	 * If the deltaKind is IServer.REMOVED, the module may have been completely
-	 * deleted and does not exist anymore. In this case, a dummy module (with the
-	 * correct id) will be passed to this method.
-	 * </p>
-	 * 
-	 * @param kind one of the IServer.PUBLISH_XX constants. 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>PUBLSIH_AUTO</code>- indicates an automatic incremental publish.</li>
-	 *    <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 module the module to publish
-	 * @param deltaKind one of the IServer publish change constants. Valid values are:
-	 *    <ul>
-	 *    <li><code>ADDED</code>- indicates the module has just been added to the server
-	 *      and this is the first publish.
-	 *    <li><code>NO_CHANGE</code>- indicates that nothing has changed in the module
-	 *      since the last publish.</li>
-	 *    <li><code>CHANGED</code>- indicates that the module has been changed since
-	 *      the last publish. Call <code>getPublishedResourceDelta()</code> for
-	 *      details of the change.
-	 *    <li><code>REMOVED</code>- indicates the module has been removed and should be
-	 *      removed/cleaned up from the server.
-	 *    </ul>
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @throws CoreException if there is a problem publishing the module
-	 */
-	protected void publishModule(int kind, int deltaKind, IModule[] module, IProgressMonitor monitor) throws CoreException {
-		// do nothing
-	}
-
-	/**
-	 * Methods called to notify that publishing has finished.
-	 * The server can close any open connections to the server
-	 * and do any cleanup operations.
-	 * <p>
-	 * This method is called by the server core framework,
-	 * in response to a call to <code>IServer.publish()</code>.
-	 * Clients should never call this method.
-	 * </p>
-	 *
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @throws CoreException if there is a problem stopping the publish
-	 */
-	protected void publishFinish(IProgressMonitor monitor) throws CoreException {
-		// do nothing
-	}
-
-	/**
-	 * Configure the given launch configuration to start this server. This method is called whenever
-	 * the server is started to ensure that the launch configuration is accurate and up to date.
-	 * This method should not blindly update the launch configuration in cases where the user has
-	 * access to change the launch configuration by hand.
-	 * 
-	 * @param workingCopy a launch configuration working copy
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @throws CoreException if there is an error setting up the configuration
-	 */
-	public void setupLaunchConfiguration(ILaunchConfigurationWorkingCopy workingCopy, IProgressMonitor monitor) throws CoreException {
-		// do nothing
-	}
-
-	/**
-	 * Restart this server. The server should use the server
-	 * listener to notify progress. It must use the same debug
-	 * flags as was originally passed into the start() method.
-	 * 
-	 * This method is used if there is a quick/better way to restart
-	 * the server. If it throws a CoreException, the normal stop/start
-	 * actions will be used.
-	 * 
-	 * @param launchMode the mode to restart in, one of the mode constants
-	 *    defined by {@link org.eclipse.debug.core.ILaunchManager}
-	 * @throws CoreException if there was a problem restarting
-	 */
-	public void restart(String launchMode) throws CoreException {
-		 throw new CoreException(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, "Could not restart", null));
-	}
-
-	/**
-	 * Returns whether the given module can be restarted.
-	 * <p>
-	 * [issue: It's unclear whether this operations is guaranteed to be fast
-	 * or whether it could involve communication with any actual
-	 * server. If it is not fast, the method should take a progress
-	 * monitor.]
-	 * </p>
-	 * 
-	 * @param module the module
-	 * @return <code>true</code> if the given module can be
-	 * restarted, and <code>false</code> otherwise 
-	 */
-	public boolean canControlModule(IModule[] module) {
-		return false;
-	}
-	
-	/**
-	 * Starts the given module on the server. See the specification of 
-	 * {@link IServer#startModule(IModule[], IServer.IOperationListener)}
-	 * for further details. 
-	 * <p>
-	 * The implementation should update the module sync state and fire
-	 * an event for the module.
-	 * </p>
-	 * <p>
-	 * This method will throw an exception if the module does not exist on
-	 * the server.
-	 * </p>
-	 * <p>
-	 * [issue: Since this method is ascynchronous, is there
-	 * any need for the progress monitor?]
-	 * </p>
-	 * 
-	 * @param module the module to be started
-	 * @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 restart the module
-	 */
-	public void startModule(IModule[] module, IProgressMonitor monitor) throws CoreException {
-		// do nothing
-	}
-
-	/**
-	 * Stops the given module on the server. See the specification of 
-	 * {@link IServer#stopModule(IModule[], IServer.IOperationListener)}
-	 * for further details. 
-	 * <p>
-	 * The implementation should update the module sync state and fire
-	 * an event for the module.
-	 * </p>
-	 * <p>
-	 * This method will throw an exception if the module does not exist on
-	 * the server.
-	 * </p>
-	 * <p>
-	 * [issue: Since this method is ascynchronous, is there
-	 * any need for the progress monitor?]
-	 * </p>
-	 * 
-	 * @param module the module to be stopped
-	 * @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 restart the module
-	 */
-	public void stopModule(IModule[] module, IProgressMonitor monitor) throws CoreException {
-		// do nothing
-	}
-
-	/**
-	 * Shuts down and stops this server. The server should return from this method
-	 * quickly and use the server listener to notify shutdown progress.
-	 * <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>
-	 * [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 force <code>true</code> to kill the server, or <code>false</code>
-	 *    to stop normally
-	 */
-	public abstract void stop(boolean force);
-
-	/**
-	 * Returns the module resources that have been published to the server.
-	 * 
-	 * <p>
-	 * If the module has just been added to the server, an empty list will
-	 * be returned. If the module has never existed on the server, a CoreException
-	 * will be thrown.
-	 * </p>
-	 * 
-	 * @param module the module
-	 * @return an array containing the published module resource
-	 */
-	protected IModuleResource[] getPublishedResources(IModule[] module) {
-		return server.getPublishedResources(module);
-	}
-
-	/**
-	 * Returns the delta of the current module resources that have been
-	 * published compared to the current state of the module.
-	 *
-	 * @param module the module
-	 * @return an array containing the publish resource delta
-	 */
-	protected IModuleResourceDelta[] getPublishedResourceDelta(IModule[] module) {
-		return server.getPublishedResourceDelta(module);
-	}
-
-	/**
-	 * Returns a temporary directory that the requestor can use
-	 * throughout it's lifecycle. This is primary to be used by
-	 * servers for working directories, server specific
-	 * files, etc.
-	 * <p>
-	 * This method directory will return the same directory on
-	 * each use of the workbench. If the directory is not requested
-	 * over a period of time, the directory may be deleted and a
-	 * new one will be assigned on the next request. For this
-	 * reason, a server may want to request the temp directory on
-	 * startup if it wants to store files there. In any case, the
-	 * server should have a backup plan to refill the directory
-	 * in case it has been deleted since last use.</p>
-	 *
-	 * @return a temporary directory
-	 */
-	protected IPath getTempDirectory() {
-		return server.getTempDirectory();
-	}
-
-	/**
-	 * Set a global status on the server.
-	 *  
-	 * @param status the status
-	 */
-	protected final void setServerStatus(IStatus status) {
-		server.setServerStatus(status);
-	}
-
-	/**
-	 * Set a status on a specific module.
-	 * 
-	 * @param module the module
-	 * @param status the status
-	 */
-	protected final void setModuleStatus(IModule[] module, IStatus status) {
-		server.setModuleStatus(module, status);
-	}
-	
-	public IStatus publish(int kind, IProgressMonitor monitor) {
-		Trace.trace(Trace.FINEST, "-->-- Publishing to server: " + toString() + " -->--");
-
-		final List moduleList = getAllModules();
-		final List kindList = new ArrayList();
-		
-		Iterator iterator = moduleList.iterator();
-		while (iterator.hasNext()) {
-			IModule[] module = (IModule[]) iterator.next();
-			if (hasBeenPublished(module)) {
-				if (getPublishedResourceDelta(module).length == 0)
-					kindList.add(new Integer(ServerBehaviourDelegate.NO_CHANGE));
-				else
-					kindList.add(new Integer(ServerBehaviourDelegate.CHANGED));
-			} else
-				kindList.add(new Integer(ServerBehaviourDelegate.ADDED));
-		}
-		
-		PublishOperation[] tasks = getTasks();
-		
-		addRemovedModules(moduleList, kindList);
-		
-		while (moduleList.size() > kindList.size()) {
-			kindList.add(new Integer(ServerBehaviourDelegate.REMOVED));
-		}
-
-		int size = 2000 + 3500 * moduleList.size() + 500 * tasks.length;
-		
-		monitor = ProgressUtil.getMonitorFor(monitor);
-		monitor.beginTask(NLS.bind(Messages.publishing, toString()), size);
-
-		// TODO - group up status until the end and use better message based on success or failure
-		MultiStatus multi = new MultiStatus(ServerPlugin.PLUGIN_ID, 0, Messages.publishingStatus, null);
-
-		if (monitor.isCanceled())
-			return new Status(IStatus.INFO, ServerPlugin.PLUGIN_ID, 0, Messages.publishingCancelled, null);
-		
-		// start publishing
-		Trace.trace(Trace.FINEST, "Calling publishStart()");
-		try {
-			publishStart(ProgressUtil.getSubMonitorFor(monitor, 1000));
-		} catch (CoreException ce) {
-			Trace.trace(Trace.INFO, "CoreException publishing to " + toString(), ce);
-			return ce.getStatus();
-		}
-		
-		// perform tasks
-		IStatus taskStatus = performTasks(tasks, monitor);
-		if (taskStatus != null)
-			multi.add(taskStatus);
-		
-		// publish the server
-		try {
-			if (!monitor.isCanceled() && getServer().getServerType().hasServerConfiguration()) {
-				publishServer(kind, ProgressUtil.getSubMonitorFor(monitor, 1000));
-			}
-		} catch (CoreException ce) {
-			Trace.trace(Trace.INFO, "CoreException publishing to " + toString(), ce);
-			multi.add(ce.getStatus());
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error publishing configuration to " + toString(), e);
-			multi.add(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, Messages.errorPublishing, e));
-		}
-		
-		// publish modules
-		if (!monitor.isCanceled()) {
-			try {
-				publishModules(kind, moduleList, kindList, multi, monitor);
-			} catch (Exception e) {
-				Trace.trace(Trace.WARNING, "Error while publishing modules", e);
-				multi.add(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, Messages.errorPublishing, e));
-			}
-		}
-		
-		// end the publishing
-		Trace.trace(Trace.FINEST, "Calling publishFinish()");
-		try {
-			publishFinish(ProgressUtil.getSubMonitorFor(monitor, 500));
-		} catch (CoreException ce) {
-			Trace.trace(Trace.INFO, "CoreException publishing to " + toString(), ce);
-			multi.add(ce.getStatus());
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error stopping publish to " + toString(), e);
-			multi.add(new Status(IStatus.ERROR, ServerPlugin.PLUGIN_ID, 0, Messages.errorPublishing, e));
-		}
-		
-		if (monitor.isCanceled()) {
-			IStatus status = new Status(IStatus.INFO, ServerPlugin.PLUGIN_ID, 0, Messages.publishingCancelled, null);
-			multi.add(status);
-		}
-
-		MultiStatus ps = new MultiStatus(ServerPlugin.PLUGIN_ID, 0, Messages.publishingStop, null);
-		ps.add(multi);
-
-		monitor.done();
-
-		Trace.trace(Trace.FINEST, "--<-- Done publishing --<--");
-		
-		if (multi.getChildren().length == 1)
-			return multi.getChildren()[0];
-		
-		return multi;
-	}
-
-	/**
-	 * Publish a single module.
-	 */
-	protected IStatus publishModule(int kind, IModule[] module, int deltaKind, IProgressMonitor monitor) {
-		Trace.trace(Trace.FINEST, "Publishing module: " + module);
-		
-		int size = module.length;
-		IModule m = module[size - 1];
-		monitor.beginTask(NLS.bind(Messages.publishingModule, m.getName()), 1000);
-		
-		IStatus status = new Status(IStatus.OK, ServerPlugin.PLUGIN_ID, 0, NLS.bind(Messages.publishedModule, m.getName()), null);
-		try {
-			publishModule(kind, deltaKind, module, monitor);
-		} catch (CoreException ce) {
-			status = ce.getStatus();
-		}
-		
-		/*Trace.trace(Trace.FINEST, "Delta:");
-		IModuleResourceDelta[] delta = getServerPublishInfo().getDelta(parents, module);
-		int size = delta.length;
-		for (int i = 0; i < size; i++) {
-			((ModuleResourceDelta)delta[i]).trace(">  ");
-		}*/
-		updatePublishInfo(deltaKind, module);
-		
-		monitor.done();
-		
-		Trace.trace(Trace.FINEST, "Done publishing: " + module);
-		return status;
-	}
-	
-	protected boolean hasBeenPublished(IModule[] module) {
-		return server.getServerPublishInfo().hasModulePublishInfo(module);
-	}
-	
-	protected void addRemovedModules(List moduleList, List kindList) {
-		server.getServerPublishInfo().addRemovedModules(moduleList, kindList);
-	}
-	
-	protected void updatePublishInfo(int deltaKind, IModule[] module) {
-		if (deltaKind == ServerBehaviourDelegate.REMOVED)
-			server.getServerPublishInfo().removeModulePublishInfo(module);
-		else
-			server.getServerPublishInfo().fill(module);
-	}
-
-	/**
-	 * Publishes the given modules. Returns true if the publishing
-	 * should continue, or false if publishing has failed or is cancelled.
-	 * 
-	 * Uses 500 ticks plus 3500 ticks per module
-	 */
-	protected void publishModules(int kind, List modules2, List deltaKind, MultiStatus multi, IProgressMonitor monitor) {
-		if (modules2 == null)
-			return;
-
-		int size = modules2.size();
-		if (size == 0)
-			return;
-		
-		if (monitor.isCanceled())
-			return;
-
-		// publish modules
-		for (int i = 0; i < size; i++) {
-			IStatus status = publishModule(kind, (IModule[]) modules2.get(i), ((Integer)deltaKind.get(i)).intValue(), ProgressUtil.getSubMonitorFor(monitor, 3000));
-			multi.add(status);
-		}
-	}
-
-	/**
-	 * Returns the publish tasks that have been targetted to this server.
-	 * These tasks should be run during publishing.
-	 * 
-	 * @return a possibly empty array of IOptionalTasks
-	 */
-	protected final PublishOperation[] getTasks() {
-		return server.getTasks();
-	}
-
-	/**
-	 * Returns all the modules that are on the server, including root
-	 * modules and all their children.
-	 * 
-	 * @return a list of IModule[]s
-	 */
-	protected final List getAllModules() {
-		return server.getAllModules();
-	}
-
-	/**
-	 * Perform (execute) all the given tasks.
-	 * 
-	 * @param tasks an array of tasks
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @return the status
-	 */
-	protected IStatus performTasks(PublishOperation[] tasks, IProgressMonitor monitor) {
-		int size = tasks.length;
-		Trace.trace(Trace.FINEST, "Performing tasks: " + size);
-		
-		if (size == 0)
-			return null;
-		
-		Status multi = new MultiStatus(ServerPlugin.PLUGIN_ID, 0, Messages.taskPerforming, null);
-
-		for (int i = 0; i < size; i++) {
-			PublishOperation task = tasks[i];
-			monitor.subTask(NLS.bind(Messages.taskPerforming, task.toString()));
-			try {
-				task.execute(ProgressUtil.getSubMonitorFor(monitor, 500), null);
-			} catch (CoreException ce) {
-				Trace.trace(Trace.SEVERE, "Task failed", ce);
-			}
-			if (monitor.isCanceled())
-				return multi;
-		}
-		
-		return multi;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ServerDelegate.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ServerDelegate.java
deleted file mode 100644
index 5d6e3d6..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/ServerDelegate.java
+++ /dev/null
@@ -1,387 +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.model;
-
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.wst.server.core.*;
-import org.eclipse.wst.server.core.internal.Server;
-import org.eclipse.wst.server.core.internal.ServerWorkingCopy;
-/**
- * A server delegate provides the implementation for various 
- * generic and server-type-specific operations for a specific type of server.
- * A server delegate is specified by the
- * <code>class</code> attribute of a <code>serverTypes</code> extension.
- * <p>
- * When the server instance needs to be given a delegate, the delegate class
- * specified for the server type is instantiated with a 0-argument constructor
- * and primed with <code>delegate.initialize(((IServerState)server)</code>, 
- * which it is expected to hang on to. Later, when
- * <code>delegate.dispose()</code> is called as the server instance is
- * being discarded, the delegate is expected to let go of the server instance.
- * </p>
- * <p>
- * ServerDelegate supports an open-ended set of attribute-value pairs. All
- * state stored in this manner will be saved when the server working copy is
- * saved, and persisted across workbench sessions.
- * Server delegates may keep state in instance fields, but that state is
- * transient and will not be persisted across workbench sessions. To save
- * state across workbench sessions, it must be persisted using the
- * attributes.
- * </p>
- * <p>
- * This abstract class is intended to be extended only by clients
- * to extend the <code>serverTypes</code> extension point.
- * </p>
- * 
- * @see IServer
- * @see IServerWorkingCopy
- * @since 1.0
- */
-public abstract class ServerDelegate {
-	private Server server;
-	private ServerWorkingCopy serverWC;
-
-	/**
-	 * Delegates must have a public 0-arg constructor.
-	 */
-	public ServerDelegate() {
-		// do nothing
-	}
-
-	/**
-	 * Initializes this server delegate with its life-long server instance.
-	 * <p>
-	 * This method is called by the server core framework.
-	 * Clients should never call this method.
-	 * </p>
-	 * 
-	 * @param newServer the server instance
-	 */
-	final void initialize(Server newServer) {
-		server = newServer;
-		if (newServer instanceof ServerWorkingCopy)
-			serverWC = (ServerWorkingCopy) newServer;
-		initialize();
-	}
-
-	/**
-	 * Initializes this server delegate. This method gives delegates a chance
-	 * to do their own initialization.
-	 * <p>
-	 * This method is called by the server core framework.
-	 * Clients should never call this method.
-	 * </p>
-	 */
-	protected void initialize() {
-		// do nothing
-	}
-
-	/**
-	 * Returns the server that this server delegate corresponds to.
-	 * 
-	 * @return the server
-	 */
-	public final IServer getServer() {
-		return server;
-	}
-
-	/**
-	 * Returns the server working copy that this server delegate corresponds to.
-	 * 
-	 * @return the server
-	 */
-	public final IServerWorkingCopy getServerWorkingCopy() {
-		return serverWC;
-	}
-
-	/**
-	 * Returns the value of the specified int-valued attribute.
-	 * 
-	 * @param id the attribute id
-	 * @param defaultValue the default value of the specified attribute
-	 * @return the attribute value
-	 * @see #setAttribute(String, int)
-	 */
-	protected final int getAttribute(String id, int defaultValue) {
-		return server.getAttribute(id, defaultValue);
-	}
-
-	/**
-	 * Returns the value of the specified boolean-valued attribute.
-	 * 
-	 * @param id the attribute id
-	 * @param defaultValue the default value of the specified attribute
-	 * @return the attribute value
-	 * @see #setAttribute(String, boolean)
-	 */
-	protected final boolean getAttribute(String id, boolean defaultValue) {
-		return server.getAttribute(id, defaultValue);
-	}
-
-	/**
-	 * Returns the value of the specified String-valued attribute.
-	 * 
-	 * @param id the attribute id
-	 * @param defaultValue the default value of the specified attribute
-	 * @return the attribute value
-	 * @see #setAttribute(String, String)
-	 */
-	protected final String getAttribute(String id, String defaultValue) {
-		return server.getAttribute(id, defaultValue);
-	}
-
-	/**
-	 * Returns the value of the specified List-valued attribute.
-	 * 
-	 * @param id the attribute id
-	 * @param defaultValue the default value of the specified attribute
-	 * @return the attribute value
-	 * @see #setAttribute(String, List)
-	 */
-	protected final List getAttribute(String id, List defaultValue) {
-		return server.getAttribute(id, defaultValue);
-	}
-
-	/**
-	 * Returns the value of the specified Map-valued attribute.
-	 * 
-	 * @param id the attribute id
-	 * @param defaultValue the default value of the specified attribute
-	 * @return the attribute value
-	 * @see #setAttribute(String, Map)
-	 */
-	protected final Map getAttribute(String id, Map defaultValue) {
-		return server.getAttribute(id, defaultValue);
-	}
-
-	/**
-	 * Disposes of this server delegate.
-	 * <p>
-	 * This method is called by the web server core framework.
-	 * Clients should never call this method.
-	 * </p>
-	 * <p>
-	 * Implementations are expected to let go of the delegate's reference
-	 * to the server, deregister listeners, etc.
-	 * </p>
-	 */
-	public void dispose() {
-		// do nothing
-	}
-
-	/**
-	 * Returns whether the specified module modifications could be made to this
-	 * server at this time. See the specification of
-	 * {@link IServerAttributes#canModifyModules(IModule[], IModule[], IProgressMonitor)}
-	 * for further details. 
-	 * <p>
-	 * This method is called by the web server core framework,
-	 * in response to a call to <code>IServer.canModifyModules</code>.
-	 * Clients should never call this method.
-	 * </p>
-	 * <p>
-	 * [issue: See IServerAttributes.canModifyModules(IModule[], IModule[], IProgressMonitor).]
-	 * </p>
-	 * [issue: doc that it should be quick]
-	 *
-	 * @param add a possibly-empty list of modules to add
-	 * @param remove a possibly-empty list of modules to remove
-	 * @return a status object with code <code>IStatus.OK</code> if the modules
-	 *   can be modified, otherwise a status object indicating why they can't
-	 */
-	public abstract IStatus canModifyModules(IModule[] add, IModule[] remove);
-
-	/**
-	 * 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
-	 * @return the child modules
-	 * @see IServerAttributes#getChildModules(IModule[], IProgressMonitor)
-	 */
-	public abstract IModule[] getChildModules(IModule[] module);
-
-	/**
-	 * 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>
-	 * 
-	 * [issue: should the parameter be IModule[]?]
-	 *
-	 * @param module a module
-	 * @return an array of possible root modules
-	 * @throws CoreException if anything went wrong
-	 *
-	 * @see org.eclipse.wst.server.core.IServerAttributes#getRootModules(IModule, IProgressMonitor)
-	 */
-	public abstract IModule[] getRootModules(IModule module) throws CoreException;
-
-	/**
-	 * Returns an array of IServerPorts that this server has.
-	 *
-	 * @return the server's ports
-	 */
-	public ServerPort[] getServerPorts() {
-		return null;
-	}
-
-	/**
-	 * Initializes this server with default values. This method is called when
-	 * a new server is created so that the server can be initialized with
-	 * meaningful values.
-	 */
-	public void setDefaults() {
-		// do nothing
-	}
-	
-	/**
-	 * Sets the value of the specified integer-valued attribute of this
-	 * element.
-	 * 
-	 * @param id the attribute id
-	 * @param value the value of the specified attribute
-	 * @see #getAttribute(String, int)
-	 */
-	protected final void setAttribute(String id, int value) {
-		serverWC.setAttribute(id, value);
-	}
-
-	/**
-	 * Sets the value of the specified boolean-valued attribute of this
-	 * element.
-	 * 
-	 * @param id the attribute id
-	 * @param value the value of the specified attribute
-	 * @see #getAttribute(String, boolean)
-	 */
-	protected final void setAttribute(String id, boolean value) {
-		serverWC.setAttribute(id, value);
-	}
-
-	/**
-	 * Sets the value of the specified string-valued attribute of this
-	 * element.
-	 * 
-	 * @param id the attribute id
-	 * @param value the value of the specified attribute
-	 * @see #getAttribute(String, String)
-	 */
-	protected final void setAttribute(String id, String value) {
-		serverWC.setAttribute(id, value);
-	}
-
-	/**
-	 * Sets the value of the specified list-valued attribute of this
-	 * element. The list may only contain String values.
-	 * 
-	 * @param id the attribute id
-	 * @param value the value of the specified attribute
-	 * @see #getAttribute(String, List)
-	 */
-	protected final void setAttribute(String id, List value) {
-		serverWC.setAttribute(id, value);
-	}
-
-	/**
-	 * Sets the value of the specified map-valued attribute of this
-	 * element. The map may only contain String values.
-	 * 
-	 * @param id the attribute id
-	 * @param value the value of the specified attribute
-	 * @see #getAttribute(String, Map)
-	 */
-	protected final void setAttribute(String id, Map value) {
-		serverWC.setAttribute(id, value);
-	}
-
-	/**
-	 * Modifies the list of modules associated with the server.
-	 * See the specification of
-	 * {@link IServerWorkingCopy#modifyModules(IModule[], IModule[], IProgressMonitor)}
-	 * for further details.
-	 * <p>
-	 * This method is called by the web server core framework,
-	 * in response to a call to <code>IServerWorkingCopy.modifyModules</code>.
-	 * Clients should never call this method.
-	 * </p>
-	 * <p>
-	 * This method is called to update the server configuration (if any)
-	 * or update the delegates internal state. Note that the actual list
-	 * of modules is stored on the server and can be accessed at any time
-	 * using server.getModules(). getModules() will not be updated until
-	 * after this method successfully returns.
-	 * </p>
-	 * <p>
-	 * This method will not communicate with the server. After saving,
-	 * publish() can be used to sync up with the server.
-	 * </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 abstract void modifyModules(IModule[] add, IModule[] remove, IProgressMonitor monitor) throws CoreException;
-
-	/**
-	 * This method is called to import the server configuration from the given
-	 * runtime.
-	 * 
-	 * @param runtime a server runtime
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 */
-	public void importConfiguration(IRuntime runtime, IProgressMonitor monitor) {
-		// do nothing
-	}
-
-	/**
-	 * This method is called whenever the server configuration should be saved.
-	 * 
-	 * @param monitor a progress monitor, or <code>null</code> if progress
-	 *    reporting and cancellation are not desired
-	 * @throws CoreException if there was a problem saving
-	 */
-	public void saveConfiguration(IProgressMonitor monitor) throws CoreException {
-		// do nothing
-	}
-
-	/**
-	 * This method is called whenever the server configuration folder has changed.
-	 * It gives the server a chance to throw out any old data and be ready to
-	 * reload the server configuration when it is needed next.
-	 */
-	public void configurationChanged() {
-		// do nothing
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/package.html b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/package.html
deleted file mode 100644
index d0fe412..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/package.html
+++ /dev/null
@@ -1,30 +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>
-<p>SPI support for the server tools framework.</p>
-<table width="500">
-<tr>
-<td>
-<p>The classes in this package would typically be extended or used by
-SPI clients of the server tools framework who are providing a new server
-type, runtime type, or other extension. These delegates are never visible
-to regular API clients unless explicitly exposed by the provider.</p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>The majority of these classes are delegates to implement one of the
-extension points. View the extension point documentation for further
-details.</p>
-</td>
-</tr>
-</table>
-</body>
-</html>
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/package.xml b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/package.xml
deleted file mode 100644
index 4e31203..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/model/package.xml
+++ /dev/null
@@ -1,25 +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>
-
-<abstract>SPI support for the server tools framework.</abstract>
-
-<p>The classes in this package would typically be extended or used by
-SPI clients of the server tools framework who are providing a new server
-type, runtime type, or other extension. These delegates are never visible
-to regular API clients unless explicitly exposed by the provider.</p>
-
-<p>The majority of these classes are delegates to implement one of the
-extension points. View the extension point documentation for further
-details.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/package.html b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/package.html
deleted file mode 100644
index 236cdb5..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/package.html
+++ /dev/null
@@ -1,58 +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>
-<p>The main server tools framework client API.</p>
-<table width="500">
-<tr>
-<td>
-<p>ServerCore is the main entry-point and provides access to most of the
-remaining API. From here, you can get the existing server runtimes and
-servers, get the available server types, and access interfaces for all
-extension points.</p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>ServerUtil provides utility and convenience methods for dealing with
-server tools. It provides easy access to modules, server runtimes, and
-what combinations are supported (e.g. which runtimes can be used to
-target a particular project).</p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>IRuntime and IServer are the two main API objects. IRuntime is used
-to target projects to a particular server installation and compile/build
-against them. When a runtime is targetted to a particular runtime,
-all of the applicable IRuntimeTargetHandler extensions are called to
-set the classpath or modify other project settings for the runtime.</p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>IServer is the main server class that clients can use to start/stop
-and publish to servers.</p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>IModules provide the "content" that can be published to servers.
-See the server tools API overview for more information.</p>
-</td>
-</tr>
-</table>
-</body>
-</html>
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/package.xml b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/package.xml
deleted file mode 100644
index 9a254d3..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/package.xml
+++ /dev/null
@@ -1,38 +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>
-
-<abstract>The main server tools framework client API.</abstract>
-
-<p>ServerCore is the main entry-point and provides access to most of the
-remaining API. From here, you can get the existing server runtimes and
-servers, get the available server types, and access interfaces for all
-extension points.</p>
-
-<p>ServerUtil provides utility and convenience methods for dealing with
-server tools. It provides easy access to modules, server runtimes, and
-what combinations are supported (e.g. which runtimes can be used to
-target a particular project).</p>
-
-<p>IRuntime and IServer are the two main API objects. IRuntime is used
-to target projects to a particular server installation and compile/build
-against them. When a runtime is targetted to a particular runtime,
-all of the applicable IRuntimeTargetHandler extensions are called to
-set the classpath or modify other project settings for the runtime.</p>
-
-<p>IServer is the main server class that clients can use to start/stop
-and publish to servers.</p>
-
-<p>IModules provide the "content" that can be published to servers.
-See the server tools API overview for more information.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/HttpLaunchable.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/HttpLaunchable.java
deleted file mode 100644
index 2011285..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/HttpLaunchable.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.util;
-
-import java.net.URL;
-/**
- *
- * @since 1.0
- */
-public class HttpLaunchable {
-	private URL url;
-
-	/**
-	 * Create a reference to something accessible via HTTP.
-	 * 
-	 * @param url the URL to the object
-	 */
-	public HttpLaunchable(URL url) {
-		this.url = url;
-	}
-
-	/**
-	 * Return the URL to the object.
-	 * 
-	 * @return the URL to the object
-	 */
-	public URL getURL() {
-		return url;
-	}
-
-	/**
-	 * @see Object#toString()
-	 */
-	public String toString() {
-		return "HttpLaunchable[url=" + url.toString() + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/IStaticWeb.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/IStaticWeb.java
deleted file mode 100644
index 97471a4..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/IStaticWeb.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.wst.server.core.util;
-/**
- * A static Web module that could be deployed to Apache or another
- * HTTP server.
- * 
- * @since 1.0
- */
-public interface IStaticWeb {
-	/**
-	 * Returns the context root of the Web.
-	 * 
-	 * @return java.lang.String
-	 */
-	public String getContextRoot();
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/NullModuleArtifact.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/NullModuleArtifact.java
deleted file mode 100644
index d2029a8..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/NullModuleArtifact.java
+++ /dev/null
@@ -1,44 +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.util;
-
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.IModuleArtifact;
-/**
- * 
- * @since 1.0
- */
-public class NullModuleArtifact implements IModuleArtifact {
-	private IModule module;
-
-	/**
-	 * Create a new reference to a module.
-	 * 
-	 * @param module the module
-	 */
-	public NullModuleArtifact(IModule module) {
-		this.module = module;
-	}
-
-	/**
-	 * @see IModuleArtifact#getModule()
-	 */
-	public IModule getModule() {
-		return module;
-	}
-
-	/**
-	 * @see Object#toString()
-	 */
-	public String toString() {
-		return "NullModuleArtifact [module=" + module + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/ProjectModule.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/ProjectModule.java
deleted file mode 100644
index 5a628e5..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/ProjectModule.java
+++ /dev/null
@@ -1,285 +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.util;
-
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.*;
-
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.internal.ModuleFile;
-import org.eclipse.wst.server.core.internal.ModuleFolder;
-import org.eclipse.wst.server.core.model.*;
-/**
- * A simple IModuleProject that maps a folder within a project
- * (or the root of the project itself) to the module.
- * 
- * @since 1.0
- */
-public abstract class ProjectModule extends ModuleDelegate {
-	protected IProject project;
-	protected IPath root;
-
-	/**
-	 * Create a new project module.
-	 */
-	public ProjectModule() {
-		// do nothing
-	}
-
-	/**
-	 * Create a new project module in the given project.
-	 * 
-	 * @param project the project containing the module
-	 */
-	public ProjectModule(IProject project) {
-		this.project = project;
-	}
-
-	/**
-	 * Returns the project that the module is contained in.
-	 * 
-	 * @return the project that the module is contained in
-	 */
-	public IProject getProject() {
-		return project;
-	}
-
-	/**
-	 * Returns the root folder. The root folder is the project relative path
-	 * that points to the root directory of the module. All resources contained
-	 * within this folder belong to the module.
-	 * 
-	 * @return the root project-relative folder that contains the contents
-	 *    of the module
-	 */
-	public IPath getRootFolder() {
-		return root;
-	}
-
-	/*
-	 * @see IModuleProject#getModuleResourceDelta(IResourceDelta)
-	 */
-	/*public IModuleResourceDelta getModuleResourceDelta(IResourceDelta delta) {
-		Trace.trace(Trace.FINEST, "> getModuleResourceDelta");
-		IPath root2 = null;
-		try {
-			root2 = getRootFolder();
-		} catch (Exception e) {
-			Trace.trace(Trace.FINEST, "Error getting root2");
-		}
-		if (root2 == null) {
-			return convertChildren(delta, null);
-		}
-		class Helper {
-			boolean found = false;
-			IModuleResourceDelta delta2;
-		}
-		final Helper helper = new Helper();
-		final IPath root3 = root2;
-		try {
-			delta.accept(new IResourceDeltaVisitor() {
-				public boolean visit(IResourceDelta visitDelta) {
-					if (!helper.found && root3.equals(visitDelta.getProjectRelativePath())) {
-						helper.delta2 = convertChildren(visitDelta, null);
-						helper.found = true;
-						return false;
-					}
-					return true;
-				}
-			});
-			Trace.trace(Trace.FINEST, "< getModuleResourceDelta");
-			return helper.delta2;
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Could not get module resource delta");
-		}
-		Trace.trace(Trace.FINEST, "< getModuleResourceDelta null");
-		return null;
-	}*/
-	
-	/**
-	 * 
-	 */
-	/*protected IModuleResourceDelta convertChildren(IResourceDelta delta, IModuleFolder parent) {
-		int flags = delta.getKind();
-		int kind = IModuleResourceDelta.NO_CHANGE;
-		if (flags == IResourceDelta.ADDED)
-			kind = IModuleResourceDelta.ADDED;
-		else if (flags == IResourceDelta.REMOVED)
-			kind = IModuleResourceDelta.REMOVED;
-		else if (flags == IResourceDelta.CHANGED)
-			kind = IModuleResourceDelta.CHANGED;
-		
-		IResource resource = delta.getResource();
-		
-		IModuleResource pubResource = null;
-		if (resource instanceof IContainer)
-			pubResource = new ProjectModuleFolder(this, parent, (IContainer) resource);	
-		else if (resource instanceof IFile) {
-			if (delta.getFlags() == IResourceDelta.MARKERS)
-				return null;
-			pubResource = new ProjectModuleFile(this, parent, (IFile) resource);
-		}
-		
-		ModuleResourceDelta deployDelta = new ModuleResourceDelta(pubResource, kind);
-		
-		IResourceDelta[] children = delta.getAffectedChildren();
-		if (children != null && pubResource instanceof IModuleFolder) {
-			int size = children.length;
-			for (int i = 0; i < size; i++) {
-				IModuleResourceDelta childDelta = convertChildren(children[i], (IModuleFolder) pubResource);
-				if (childDelta != null)
-					deployDelta.addChild(childDelta);
-			}
-		}
-		return deployDelta;
-	}*/
-
-	/**
-	 * Helper method - returns the module's id.
-	 * 
-	 * @return the module id
-	 */
-	public String getId() {
-		return getProject().getName();
-		//return getModule().getId();
-	}
-
-	/**
-	 * @see ModuleDelegate#validate()
-	 */
-	public IStatus validate() {
-		return null;
-	}
-
-	/**
-	 * @see ModuleDelegate#members()
-	 */
-	public IModuleResource[] members() throws CoreException {
-		IPath root2 = null;
-		try {
-			root2 = getRootFolder();
-		} catch (Exception e) {
-			// ignore
-		}
-		try {
-			if (root2 == null || root2.isRoot() || root2.equals(new Path("")) || root2.equals(new Path("/")))
-				return getModuleResources(Path.EMPTY, getProject());
-			
-			IFolder folder = project.getFolder(root2);
-			return getModuleResources(Path.EMPTY, folder);
-		} catch (CoreException e) {
-			throw e;
-		}
-	}
-
-	protected IModuleResource[] getModuleResources(IPath path, IContainer container) throws CoreException {
-		List list = new ArrayList();
-
- 		IResource[] resources = container.members();
-	 	if (resources != null) {
-	 		int size = resources.length;
-	 		for (int i = 0; i < size; i++) {
-				IResource resource = resources[i];
-				if (resource instanceof IContainer) {
-					IContainer container2 = (IContainer) resource;
-					ModuleFolder mf = new ModuleFolder(container2.getName(), path);
-					mf.setMembers(getModuleResources(path.append(container2.getName()), container2));
-					list.add(mf);
-				} else if (resource instanceof IFile) {
-					IFile file = (IFile) resource;
-					list.add(new ModuleFile(file.getName(), path, file.getModificationStamp()));
-				}
-			}
-	 	}
-	 	
-	 	IModuleResource[] moduleResources = new IModuleResource[list.size()];
-	 	list.toArray(moduleResources);
-	 	return moduleResources;
-	}
-
-	/**
-	 * Helper method - returns the module's name.
-	 * 
-	 * @return the module name
-	 */
-	public String getName() {
-		return getProject().getName();
-		//return getModule().getName();
-	}
-	
-	/**
-	 * Returns true if this module currently exists, and false if it has
-	 * been deleted or moved and is no longer represented by this module.
-	 *
-	 * @return boolean
-	 */
-	public boolean exists() {
-		return (getProject() != null && getProject().exists());
-	}
-	
-	/**
-	 * @see Object#equals(Object)
-	 */
-	public boolean equals(Object obj) {
-		if (obj == null || !(obj instanceof ProjectModule))
-			return false;
-
-		ProjectModule dp = (ProjectModule) obj;
-		//if (getFactoryId() != null && !getFactoryId().equals(dp.getFactoryId()))
-		//	return false;
-			
-		IPath root2 = null;
-		try {
-			root2 = getRootFolder();
-		} catch (Exception e) {
-			// ignore
-		}
-		
-		IPath root3 = null;
-		try {
-			root3 = dp.getRootFolder();
-		} catch (Exception e) {
-			// ignore
-		}
-		
-		if (project != null && project.exists() && !project.equals(dp.getProject()))
-			return false;
-		
-		if (getId() != null && !getId().equals(dp.getId()))
-			return false;
-
-		if (root2 == null && root3 != null)
-			return false;
-		if (root2 != null && !root2.equals(root3))
-			return false;
-
-		return true;
-	}
-	
-	/**
-	 * Called when the listener paths from the module factory change.
-	 * Use this method to re-cache information about the module.
-	 */
-	protected void update() {
-		// do nothing
-	}
-
-	/**
-	 * Returns the child modules of this module.
-	 *
-	 * @return org.eclipse.wst.server.core.model.IModule[]
-	 */
-	public IModule[] getChildModules() {
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/ProjectModuleFactoryDelegate.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/ProjectModuleFactoryDelegate.java
deleted file mode 100644
index 20857ba..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/ProjectModuleFactoryDelegate.java
+++ /dev/null
@@ -1,354 +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.util;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceChangeEvent;
-import org.eclipse.core.resources.IResourceChangeListener;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.IResourceDeltaVisitor;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.internal.Trace;
-import org.eclipse.wst.server.core.model.ModuleFactoryDelegate;
-/**
- * 
- * 
- * @since 1.0
- */
-public abstract class ProjectModuleFactoryDelegate extends ModuleFactoryDelegate {
-	protected static IResourceChangeListener listener;
-	
-	protected static List factories = new ArrayList();
-
-	protected List added;
-	protected List removed;
-
-	// map from IProject to IModule[]
-	protected final Map projects = new HashMap();
-	protected boolean initialized = false;
-
-	/**
-	 * Construct a new ProjectModuleFactoryDelegate.
-	 */
-	public ProjectModuleFactoryDelegate() {
-		super();
-		
-		factories.add(this);
-		
-		addListener();
-	}
-
-
-	/**
-	 * Cache any preexisting module.
-	 * TODO: When/where is this called?
-	 */
-	protected void cacheModules() {
-		cacheModules(true);
-	}
-
-
-	/**
-	 * Cache any preexisting module.
-	 * TODO: When/where is this called?
-	 */
-	protected void cacheModules(boolean forceUpdate) { 
-		try {
-			IProject[] projects2 = getWorkspaceRoot().getProjects();
-			int size = projects2.length;
-			for (int i = 0; i < size; i++) {
-				//Trace.trace("caching: " + this + " " + projects[i] + " " + isValidModule(projects[i]));
-				if(!projects2[i].isAccessible())
-					removeModules(projects2[i]);
-				else if (isValidModule(projects2[i]) && (forceUpdate || needsUpdating(projects2[i])) ) {
-					addModules(projects2[i]);
-				} 
-			}
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error caching modules", e);
-		} finally {
-			initialized = true;
-		}
-	}
-
-	protected boolean needsUpdating(IProject project) {
-		return true;
-	}
-
-
-	/**
-	 * Return the workspace root.
-	 * 
-	 * @return the workspace root
-	 */
-	private static IWorkspaceRoot getWorkspaceRoot() {
-		return ResourcesPlugin.getWorkspace().getRoot();
-	}
-
-	/**
-	 * Returns the modules for the given project, or null
-	 * if this factory does not have a module for the given project.
-	 * 
-	 * @param project a project
-	 * @return an array of modules.
-	 */
-	public IModule[] getModules(IProject project) {
-		try {
-			return (IModule[]) projects.get(project);
-		} catch (Exception e) {
-			// ignore
-		}
-		return null;
-	}
-
-	/**
-	 * Add a resource listener to the workspace.
-	 */
-	protected static void addListener() {
-		if (listener != null)
-			return;
-
-		listener = new IResourceChangeListener() {
-			public void resourceChanged(IResourceChangeEvent event) {
-				Trace.trace(Trace.FINEST, "->- ProjectModuleFactoryDelegate listener responding to resource change: " + event.getType() + " ->-");
-				try {
-					IResourceDelta delta = event.getDelta();
-					
-					//if (delta.getFlags() == IResourceDelta.MARKERS || delta.getFlags() == IResourceDelta.NO_CHANGE)
-					//	return;
-				
-					delta.accept(new IResourceDeltaVisitor() {
-						public boolean visit(IResourceDelta visitorDelta) {
-							IResource resource = visitorDelta.getResource();
-							//Trace.trace(Trace.FINEST, "resource: " + resource);
-	
-							// only respond changes within projects
-							if (resource != null && resource instanceof IProject) {
-								IProject project = (IProject) resource;
-								handleGlobalProjectChange(project, visitorDelta);
-								return true;
-							} else if (resource != null && resource.getProject() != null) {
-								return false;
-							} else
-								return true;
-						}
-					});
-				} catch (Exception e) {
-					//Trace.trace(Trace.SEVERE, "Error responding to resource change", e);
-				}
-				fireGlobalEvents();
-				Trace.trace(Trace.FINEST, "-<- Done ProjectModuleFactoryDelegate responding to resource change -<-");
-			}
-		};
-		
-		ResourcesPlugin.getWorkspace().addResourceChangeListener(listener, IResourceChangeEvent.POST_CHANGE);
-	}
-	
-	/**
-	 * Handle changes to a project.
-	 * 
-	 * @param project a project
-	 * @param delta a resource delta
-	 */
-	protected static void handleGlobalProjectChange(final IProject project, IResourceDelta delta) {
-		// handle project level changes
-		Iterator iterator = factories.iterator();
-		while (iterator.hasNext()) {
-			ProjectModuleFactoryDelegate factory = (ProjectModuleFactoryDelegate) iterator.next();
-			//Trace.trace("Firing to: " + factory);
-			factory.handleProjectChange(project, delta);
-		}
-		
-		// handle internal updates
-		iterator = factories.iterator();
-		while (iterator.hasNext()) {
-			ProjectModuleFactoryDelegate factory = (ProjectModuleFactoryDelegate) iterator.next();
-			//Trace.trace("Firing to: " + factory);
-			factory.handleProjectInternalChange(project, delta);
-		}
-	}
-	
-	/**
-	 * Fire the accumulated module factory events.
-	 */
-	protected static void fireGlobalEvents() {
-		Trace.trace(Trace.FINEST, "Firing global module event");
-		Iterator iterator = factories.iterator();
-		while (iterator.hasNext()) {
-			ProjectModuleFactoryDelegate factory = (ProjectModuleFactoryDelegate) iterator.next();
-			factory.updateProjects();
-		}
-	}
-
-	/**
-	 * Temporary to make sure that all project modules are updated.
-	 */
-	private void updateProjects() {
-		IModule[] modules2 = getModules();
-		if (modules2 != null) {
-			int size = modules2.length;
-			for (int i = 0; i < size; i++) {
-				if (modules2[i] instanceof ProjectModule)
-					((ProjectModule) modules2[i]).update();
-			}
-		}
-	}
-
-	/**
-	 * Handle changes to a project.
-	 * 
-	 * @param project a project
-	 * @param delta a resource delta
-	 */
-	private void handleProjectChange(final IProject project, IResourceDelta delta) {
-		if(!initialized)
-			cacheModules(false);
-		if (projects.containsKey(project)) {
-			// already a module
-			if (((delta.getKind() &  IResourceDelta.REMOVED) != 0) || !isValidModule(project)) {
-				removeModules(project);
-			}
-		} else {
-			// not a module
-			if (isValidModule(project)) {
-				addModules(project);
-			}
-		}
-	}
-	
-	/**
-	 * Handle changes to a project.
-	 * 
-	 * @param project a project
-	 * @param delta a resource delta
-	 */
-	private void handleProjectInternalChange(final IProject project, IResourceDelta delta) {
-		final IPath[] paths = getListenerPaths();
-		if (paths != null) {
-			final IModule[] modules = getModules(project);
-			if (modules != null) {
-				for (int i = 0; i < modules.length; i++) {
-					final IModule module = modules[i];
-					if (module != null && module instanceof ProjectModule) {
-						// check for listener paths
-						final int size = paths.length;
-						class Temp {
-							boolean found = false;
-						}
-						final Temp temp = new Temp();
-						try {
-							delta.accept(new IResourceDeltaVisitor() {
-								public boolean visit(IResourceDelta visitorDelta) {
-									if (temp.found)
-										return false;
-									IPath path = visitorDelta.getProjectRelativePath();
-									
-									boolean prefix = false;
-									for (int j = 0; j < size && !temp.found; j++) {
-										if (paths[j].equals(path))
-											temp.found = true;
-										else if (path.isPrefixOf(paths[j]))
-											prefix = true;
-									}
-									if (temp.found) {
-										((ProjectModule) module).update();
-										return false;
-									} else if (prefix)
-										return true;
-									else
-										return false;
-								}
-							});
-						} catch (Exception e) {
-							Trace.trace(Trace.SEVERE, "Error searching for listening paths", e);
-						}
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * Add a module for the given project.
-	 * 
-	 * @param project a project
-	 */
-	protected void addModules(IProject project) {
-		
-		IModule[] modules = createModules(project);
-		if (modules == null || modules.length == 0)
-			return;
-		projects.put(project, modules);
-		added = new ArrayList(2);
-		added.addAll(Arrays.asList(modules));
-	}
-
-	/**
-	 * Remove the modules that represents the given project.
-	 * 
-	 * @param project a project
-	 */
-	protected void removeModules(IProject project) {
-		
-		try {
-			IModule[] modules = (IModule[]) projects.get(project);
-			
-			projects.remove(project);
-			if (removed == null)
-				removed = new ArrayList(2);
-			if(modules == null)
-				return;
-			removed.addAll(Arrays.asList(modules));
-		} catch (Exception e) {
-			Trace.trace(Trace.SEVERE, "Error removing module project", e);
-		}
-	}
-
-	/**
-	 * Returns true if the project may contain modules of the correct type.
-	 * This method is used only to improve performance.
-	 * 
-	 * @param project a project
-	 * @return <code>true</code> if the project may contain modules, and
-	 *    <code>false</code> if it definitely does not
-	 */
-	protected abstract boolean isValidModule(IProject project);
-
-	/**
-	 * Creates the modules for a given project.
-	 * 
-	 * @param project a project to create modules for
-	 * @return a possibly empty array of modules
-	 */
-	protected abstract IModule[] createModules(IProject project);
-
-	/**
-	 * Returns the list of resources that the module should listen to
-	 * for state changes. The paths should be project relative paths.
-	 * Subclasses can override this method to provide the paths.
-	 *
-	 * @return a possibly empty array of paths
-	 */
-	protected IPath[] getListenerPaths() {
-		return null;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/RuntimeLifecycleAdapter.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/RuntimeLifecycleAdapter.java
deleted file mode 100644
index 9c6cf8a..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/RuntimeLifecycleAdapter.java
+++ /dev/null
@@ -1,43 +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.util;
-
-import org.eclipse.wst.server.core.IRuntime;
-import org.eclipse.wst.server.core.IRuntimeLifecycleListener;
-/**
- * Helper class which implements the IRuntimeLifecycleListener interface
- * with empty methods.
- * 
- * @see org.eclipse.wst.server.core.IRuntimeLifecycleListener
- * @since 1.0
- */
-public class RuntimeLifecycleAdapter implements IRuntimeLifecycleListener {
-	/**
-	 * @see IRuntimeLifecycleListener#runtimeAdded(IRuntime)
-	 */
-	public void runtimeAdded(IRuntime runtime) {
-		// do nothing
-	}
-
-	/**
-	 * @see IRuntimeLifecycleListener#runtimeChanged(IRuntime)
-	 */
-	public void runtimeChanged(IRuntime runtime) {
-		// do nothing
-	}
-
-	/**
-	 * @see IRuntimeLifecycleListener#runtimeRemoved(IRuntime)
-	 */
-	public void runtimeRemoved(IRuntime runtime) {
-		// do nothing
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/ServerLifecycleAdapter.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/ServerLifecycleAdapter.java
deleted file mode 100644
index d55279d..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/ServerLifecycleAdapter.java
+++ /dev/null
@@ -1,43 +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.util;
-
-import org.eclipse.wst.server.core.IServer;
-import org.eclipse.wst.server.core.IServerLifecycleListener;
-/**
- * Helper class which implements the IServerLifecycleListener interface
- * with empty methods.
- * 
- * @see org.eclipse.wst.server.core.IServerLifecycleListener
- * @since 1.0
- */
-public class ServerLifecycleAdapter implements IServerLifecycleListener {
-	/**
-	 * @see IServerLifecycleListener#serverAdded(IServer)
-	 */
-	public void serverAdded(IServer server) {
-		// do nothing
-	}
-
-	/**
-	 * @see IServerLifecycleListener#serverChanged(IServer)
-	 */
-	public void serverChanged(IServer server) {
-		// do nothing
-	}
-
-	/**
-	 * @see IServerLifecycleListener#serverRemoved(IServer)
-	 */
-	public void serverRemoved(IServer server) {
-		// do nothing
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/SocketUtil.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/SocketUtil.java
deleted file mode 100644
index c81ec35..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/SocketUtil.java
+++ /dev/null
@@ -1,173 +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.util;
-
-import java.io.IOException;
-import java.net.InetAddress;
-import java.net.ServerSocket;
-import java.net.SocketException;
-import java.util.Random;
-
-import org.eclipse.wst.server.core.internal.Trace;
-
-import sun.net.spi.nameservice.dns.DNSNameService;
-/**
- * A utility class for socket-related function. It's main purposes are to find
- * unused ports, check whether a port is in use, and check whether a given
- * address is a local(host) address.
- * 
- * @since 1.0
- */
-public class SocketUtil {
-	private static final Random rand = new Random(System.currentTimeMillis());
-
-	private static String dnsHostname;
-
-	/**
-	 * Static utility class - cannot create an instance.
-	 */
-	private SocketUtil() {
-		// cannot create
-	}
-
-	/**
-	 * Finds an unused port between the given from and to values.
-	 * 
-	 * @param low lowest possible port number
-	 * @param high highest possible port number
-	 * @return an usused port number, or <code>-1</code> if no used ports could be found
-	 */
-	public static int findUnusedPort(int low, int high) {
-		if (high < low)
-			return -1;
-		
-		for (int i = 0; i < 10; i++) {
-			int port = getRandomPort(low, high);
-			if (!isPortInUse(port))
-				return port;
-		}
-		return -1;
-	}
-
-	/**
-	 * Return a random port number in the given range.
-	 * 
-	 * @param low lowest possible port number
-	 * @param high highest possible port number
-	 * @return a random port number in the given range
-	 */
-	private static int getRandomPort(int low, int high) {
-		return rand.nextInt(high - low) + low;
-	}
-
-	/**
-	 * Checks to see if the given port number is being used. 
-	 * Returns <code>true</code> if the given port is in use, and <code>false</code>
-	 * otherwise. Retries every 500ms for "count" tries.
-	 *
-	 * @param port the port number to check
-	 * @param count the number of times to retry
-	 * @return boolean <code>true</code> if the port is in use, and
-	 *    <code>false</code> otherwise
-	 */
-	public static boolean isPortInUse(int port, int count) {
-		boolean inUse = isPortInUse(port);
-		while (inUse && count > 0) {
-			try {
-				Thread.sleep(500);
-			} catch (Exception e) {
-				// ignore
-			}
-			inUse = isPortInUse(port);
-			count --;
-		}
-	
-		return inUse;
-	}
-
-	/**
-	 * Checks to see if the given port number is being used.
-	 * Returns <code>true</code> if the given port is in use, and <code>false</code>
-	 * otherwise.
-	 *
-	 * @param port the port number to check
-	 * @return boolean <code>true</code> if the port is in use, and
-	 *    <code>false</code> otherwise
-	 */
-	public static boolean isPortInUse(int port) {
-		ServerSocket s = null;
-		try {
-			s = new ServerSocket(port);
-		} catch (SocketException e) {
-			return true;
-		} catch (IOException e) {
-			return true;
-		} catch (Exception e) {
-			return true;
-		} finally {
-			if (s != null) {
-				try {
-					s.close();
-				} catch (Exception e) {
-					// ignore
-				}
-			}
-		}
-
-		return false;
-	}
-
-	/**
-	 * Checks if the given host (name or IP address) is pointing to the local
-	 * machine.
-	 * Although this method is not foolproof (especially if the network
-	 * configuration of the current machine is incorrect or failing), it will
-	 * correctly identify just about all loopback adapters and the local hostname
-	 * or IP address.
-	 * <p>
-	 * This method will not attempt to make an external network connection, so
-	 * it returns quickly and is safe to use in UI interfaces.
-	 * </p>
-	 * 
-	 * @param host a hostname or IP address
-	 * @return <code>true</code> if the given host is localhost, and
-	 *    <code>false</code> otherwise
-	 */
-	public static boolean isLocalhost(String host) {
-		if (host == null)
-			return false;
-		try {
-			if ("localhost".equals(host) || "127.0.0.1".equals(host))
-				return true;
-			
-			InetAddress localHostaddr = InetAddress.getLocalHost();
-			if (localHostaddr.getHostName().equals(host) || host.equals(localHostaddr.getCanonicalHostName()))
-				return true;
-			
-			if (localHostaddr.getHostAddress().equals(host))
-				return true;
-			
-			if (dnsHostname == null)
-				try {
-					DNSNameService dns = new DNSNameService();
-					dnsHostname = dns.getHostByAddr(localHostaddr.getAddress());
-				} catch (Throwable t) {
-					dnsHostname = "*****************";
-				}
-			
-			if (dnsHostname != null && dnsHostname.equals(host))
-				return true;
-		} catch (Exception e) {
-			Trace.trace(Trace.WARNING, "Error checking for localhost", e);
-		}
-		return false;
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/WebResource.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/WebResource.java
deleted file mode 100644
index e9ea19f..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/WebResource.java
+++ /dev/null
@@ -1,58 +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.util;
-
-import org.eclipse.core.runtime.IPath;
-
-import org.eclipse.wst.server.core.IModule;
-import org.eclipse.wst.server.core.IModuleArtifact;
-/**
- * 
- * @since 1.0
- */
-public class WebResource implements IModuleArtifact {
-	private IModule module;
-	private IPath path;
-
-	/**
-	 * Create a new reference to a Web resource (HTML, GIF, etc. on a server).
-	 * 
-	 * @param module a module
-	 * @param path a relative path within the module
-	 */
-	public WebResource(IModule module, IPath path) {
-		this.module = module;
-		this.path = path;
-	}
-
-	/**
-	 * @see IModuleArtifact#getModule()
-	 */
-	public IModule getModule() {
-		return module;
-	}
-
-	/**
-	 * Return the relative path to the artifact within the module.
-	 * 
-	 * @return the relative path
-	 */
-	public IPath getPath() {
-		return path;
-	}
-
-	/**
-	 * @see Object#toString()
-	 */
-	public String toString() {
-		return "WebResource [module=" + module + ", path=" + path + "]";
-	}
-}
\ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/package.html b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/package.html
deleted file mode 100644
index 41d3ed6..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/package.html
+++ /dev/null
@@ -1,45 +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>
-<p>Utility classes for the server tools framework.</p>
-<table width="500">
-<tr>
-<td>
-<p>PingThread is a utility class for pinging a server to determine if
-it is running and updating the server's state.</p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>SocketUtil contains utility methods for determining if ports are
-free and whether a given hostname is a local hostname.</p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>The four XXXAdapter classes are implementations of server tools
-listener interfaces with the method bodies stubbed in; they can be
-subclassed by clients who only want to implement a single listener
-interface method.</p>
-</td>
-</tr>
-</table>
-<table width="500">
-<tr>
-<td>
-<p>ServerPort, Task, and TaskModel are standard implementations of
-other interface classes.</p>
-</td>
-</tr>
-</table>
-</body>
-</html>
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/package.xml b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/package.xml
deleted file mode 100644
index ffb2444..0000000
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/util/package.xml
+++ /dev/null
@@ -1,30 +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>
-
-<abstract>Utility classes for the server tools framework.</abstract>
-
-<p>PingThread is a utility class for pinging a server to determine if
-it is running and updating the server's state.</p>
-
-<p>SocketUtil contains utility methods for determining if ports are
-free and whether a given hostname is a local hostname.</p>
-
-<p>The four XXXAdapter classes are implementations of server tools
-listener interfaces with the method bodies stubbed in; they can be
-subclassed by clients who only want to implement a single listener
-interface method.</p>
-
-<p>ServerPort, Task, and TaskModel are standard implementations of
-other interface classes.</p>
-
-</body>
-</html>
\ No newline at end of file