1 /*
2 * This file is a part of CAST project.
3 * (c) Copyright 2007, AGH University of Science & Technology
4 * https://caribou.iisg.agh.edu.pl/trac/cast
5 *
6 * Licensed under the Eclipse Public License, Version 1.0 (the "License").
7 * You may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
9 * http://www.eclipse.org/legal/epl-v10.html
10 */
11 /*
12 * File: IModelPluginRegistryProvider.java
13 * Created: 2009-03-26
14 * Author: bmilos
15 * $Id$
16 */
17
18 package pl.edu.agh.cast.model;
19
20 import java.util.List;
21
22 import org.eclipse.core.runtime.CoreException;
23
24 /**
25 *
26 * @author AGH CAST Team
27 */
28 public interface IModelPluginRegistryProvider {
29
30 /**
31 * Returns table of <code>ModelColumn</code> for model with id = <code>modelExtensionId</code>. Each model column is
32 * placed at <code>modelIndex</code> index in result table.
33 *
34 * @param modelExtensionId
35 * Id of model extension.
36 * @return Table of model columns for model with input id.
37 */
38 public ModelColumn[] getModelColumns(String modelExtensionId);
39
40 /**
41 * Returns the list of information about all available domain models.
42 *
43 * @return list of model information
44 * @throws CoreException
45 */
46 public List<ModelInfo> getModelInfos() throws CoreException;
47
48 /**
49 * Retrieves name of domain model with a given extension identifier.
50 *
51 * @param modelId
52 * The id of the model extension (defined in the plugin.xml file)
53 * @return the name of the model
54 * @throws CoreException
55 */
56 public String getModelName(String modelId) throws CoreException;
57
58 }