EMMA Coverage Report (generated Sun Feb 05 10:43:15 CET 2012)
[all classes][de.uka.ipd.sdq.codegen.simucontroller.runconfig]

COVERAGE SUMMARY FOR SOURCE FILE [SimulatorExtensionHelper.java]

nameclass, %method, %block, %line, %
SimulatorExtensionHelper.java0%   (0/1)0%   (0/6)0%   (0/154)0%   (0/27)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class SimulatorExtensionHelper0%   (0/1)0%   (0/6)0%   (0/154)0%   (0/27)
SimulatorExtensionHelper (): void 0%   (0/1)0%   (0/3)0%   (0/1)
getSimulatorIdForName (String): String 0%   (0/1)0%   (0/29)0%   (0/5)
getSimulatorNameForId (String): String 0%   (0/1)0%   (0/29)0%   (0/5)
getSimulatorNames (): String [] 0%   (0/1)0%   (0/34)0%   (0/6)
loadSimulatorExtensions (): List 0%   (0/1)0%   (0/31)0%   (0/5)
obtainConfigurationElement (String, IExtension): IConfigurationElement 0%   (0/1)0%   (0/28)0%   (0/5)

1package de.uka.ipd.sdq.codegen.simucontroller.runconfig;
2 
3import java.util.ArrayList;
4import java.util.List;
5 
6import org.eclipse.core.runtime.CoreException;
7import org.eclipse.core.runtime.IConfigurationElement;
8import org.eclipse.core.runtime.IExtension;
9import org.eclipse.core.runtime.Platform;
10 
11/**
12 * Helper class for the extension point de.uka.ipd.sdq.codegen.simucontroller.simulator
13 * ("Palladio Simulator").
14 * 
15 * @author Philipp Merkle
16 * 
17 */
18public class SimulatorExtensionHelper {
19 
20    /** the id for the "Palladio Simulator" extension point */
21    public static final String EXTENSION_POINT_ID = "de.uka.ipd.sdq.codegen.simucontroller.simulator";
22 
23    public static String[] getSimulatorNames() throws CoreException {
24        List<String> names = new ArrayList<String>();
25        for (IExtension extension : loadSimulatorExtensions()) {
26            IConfigurationElement e = obtainConfigurationElement("simulator", extension);
27            if (e != null) {
28                names.add(e.getAttribute("name"));
29            }
30        }
31        return names.toArray(new String[names.size()]);
32    }
33 
34    public static String getSimulatorNameForId(String simulatorId) throws CoreException {
35        for (IExtension extension : loadSimulatorExtensions()) {
36            IConfigurationElement e = obtainConfigurationElement("simulator", extension);
37            if (e != null && e.getAttribute("id").equals(simulatorId)) {
38                return e.getAttribute("name");
39            }
40        }
41 
42        // could not find a simulator extension for the specified id
43        return "";
44    }
45 
46    public static String getSimulatorIdForName(String simulatorName) throws CoreException {
47        for (IExtension extension : loadSimulatorExtensions()) {
48            IConfigurationElement e = obtainConfigurationElement("simulator", extension);
49            if (e != null && e.getAttribute("name").equals(simulatorName)) {
50                return e.getAttribute("id");
51            }
52        }
53 
54        // could not find a simulator extension for the specified name
55        return "";
56    }
57 
58    private static IConfigurationElement obtainConfigurationElement(String elementName, IExtension extension)
59            throws CoreException {
60        IConfigurationElement[] elements = extension.getConfigurationElements();
61        for (IConfigurationElement element : elements) {
62            if (element.getName().equals(elementName)) {
63                return element;
64            }
65        }
66        return null;
67    }
68 
69    private static List<IExtension> loadSimulatorExtensions() {
70        IExtension[] exts = Platform.getExtensionRegistry().getExtensionPoint(EXTENSION_POINT_ID).getExtensions();
71        List<IExtension> results = new ArrayList<IExtension>();
72        for (IExtension extension : exts) {
73            results.add(extension);
74        }
75        return results;
76    }
77 
78}

[all classes][de.uka.ipd.sdq.codegen.simucontroller.runconfig]
EMMA 2.0.9414 (unsupported private build) (C) Vladimir Roubtsov