/*******************************************************************************
 * Copyright (c) 2003, 2006 IBM Corporation and others.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 * IBM Corporation - initial API and implementation
 *******************************************************************************/
package org.eclipse.wst.common.frameworks.internal;

/**
 * Other things to delete:
 * 
 * The wtpuiAction extension point and schema in org.eclipse.wst.common.frameworks.ui
 */


/**
 * This has been slated for removal post WTP 1.5. Do not use this class/interface/method/field
 * 
 * @deprecated
 * 
 */

/**
 * This interface is being used to track code slated for removal. Any class or interface
 * implementing or extending this interface respectively should not be used. All such classes and
 * interfaces have been deprecated and are no longer supported and will be deleted post WTP 1.5.
 * 
 * Any method or field with javadoc referencing this interface should not be used and will be
 * deleted post WTP 1.5
 * 
 * @deprecated
 */
public interface DoNotUseMeThisWillBeDeletedPost15 {
}
