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


 */
import org.eclipse.emf.ecore.*;

import org.eclipse.jem.java.JavaDataType;

/**
 * The interface for the Instantiation handler. The actual implementation
 * is in a separate project so that instantiation code will not be loaded
 * unless it needs to be.
 */

public interface IInstantiationHandler {
	/**
	 * Answers whether the adapter handles the datatype
	 * or whether the standard EFactory does.
	 */
	public boolean handlesDataType(JavaDataType type);
	
	/**
	 * Answers whether the adapter handles the EClass or the
	 * standard EFactory does.
	 */
	public boolean handlesClass(EClass type);
	
	/**
	 * If adapterHandlesInstance returns true, then
	 * this method will be called to create the instance.
	 */
	public EObject create(EClass javaClass);

}


