/******************************************************************************* * Copyright (c) 2009, 2010 SAP AG 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: * SAP AG - initial API and implementation ******************************************************************************/ package org.eclipse.ocl.examples.impactanalyzer.benchmark.preparation.tasks; import java.util.Collection; import java.util.Map; import java.util.concurrent.Callable; import org.eclipse.emf.ecore.EObject; /** * A BenchmarkTask is a class which implements the callable interface, and * therefore contains the call of the logic or the algorithm, which shall be * measured by a benchmark. Thus, for different types of benchmarks different * BenchmarkTasks are necessary. * * @author Manuel Holzleitner (D049667) */ public interface BenchmarkTask extends Callable<Collection<EObject>> { public boolean activate(); public void beforeCall(); public void afterCall(); public boolean deactivate(); public void callEvaluation(); public Map<String, String> getAdditionalMeasurementInformation(); public Map<String, String> getAdditionalInformation(); public Object getResult(); }