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


/**
 * Used to describe the existing member that is to be removed and perhaps act as the source for
 * merging.
 */
public abstract class JavaElementHistoryDescriptor {
	private String fName = null;

	/**
	 * JavaElementHistoryDescriptor default constructor.
	 */
	public JavaElementHistoryDescriptor() {
		super();
	}

	/**
	 * Each Java element to be generated has a name property.
	 * 
	 * @return The name of the element
	 */
	public String getName() {
		return fName;
	}

	/**
	 * Each Java element to be generated has a name property.
	 * 
	 * @param newName
	 *            The name of the element
	 */
	public void setName(String newName) {
		fName = newName;
	}
}