/** * <copyright> * Copyright (c) 2010-2014 Henshin developers. All rights reserved. * This program and the accompanying materials are made available * under the terms of the Eclipse Public License v1.0 which * accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * </copyright> */ package org.eclipse.emf.henshin; import java.util.List; import org.eclipse.core.runtime.IStatus; import org.eclipse.emf.common.util.URI; import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.henshin.model.Module; /** * Interface for Henshin model importers. * @author Christian Krause */ public interface HenshinModelImporter { /** * Perform an import operation. * @param module The target module. * @param uri URI where the transformation system should be imported from. * @param packages List of packages to be used for the import. */ IStatus doImport(Module module, URI uri, List<EPackage> packages); /** * Get the name of this importer. * @return The name. */ String getImporterName(); /** * Get the list of file extensions supported by this importer. * @return List of file extensions. */ String[] getImportFileExtensions(); }