/******************************************************************************* * Copyright (c) 2006 Mountainminds GmbH & Co. KG * This software is provided under the terms of the Eclipse Public License v1.0 * See http://www.eclipse.org/legal/epl-v10.html. * * $Id: ISessionImporter.java 432 2008-03-02 20:53:48Z mtnminds $ ******************************************************************************/ package com.mountainminds.eclemma.core; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IProgressMonitor; /** * API for importing sessions. This interface is not intended to be implemented * by clients. Use {@link CoverageTools#getImporter()} to get an instance. * * @author Marc R. Hoffmann * @version $Revision: 432 $ */ public interface ISessionImporter { /** * Sets the description for the imported session. * * @param description * textual description of the session */ public void setDescription(String description); /** * Sets the path to the coverage file to import. * * @param file * coverage file to import */ public void setCoverageFile(String file); /** * Sets the list of class files that should be considered for coverage * analysis. * * @param classfiles * class files for analysis */ public void setClassFiles(IClassFiles[] classfiles); /** * Specifies whether the original file should be copied while importing. * Otherwise the coverage file a referenced only. * * @param copy * flag, whether the coverage file should be copied */ public void setCopy(boolean copy); /** * Imported session files might come with their own meta data. Here we can set * whether this data should be used. Otherwise Meta data is extracted from the * local class files. * * @param flag * true, if external Meta data should be used */ public void setUseImportedMetaData(boolean flag); /** * A call to this method triggers the actual import process. * * @param monitor * progress monitor * @throws CoreException * if something goes wrong during export */ public void importSession(IProgressMonitor monitor) throws CoreException; }