1 package org.andromda.cartridges.interfaces;
2
3 import java.net.URL;
4 import java.util.List;
5 import java.util.Map;
6
7 /***
8 * Describes the capabilities of an AndroMDA cartridge.
9 *
10 * @author <a href="http://www.mbohlen.de">Matthias Bohlen</a>
11 *
12 */
13 public interface ICartridgeDescriptor {
14
15 /***
16 * Returns the name of this cartridge.
17 * @return String the name
18 */
19 public String getCartridgeName();
20
21 /***
22 * Returns the stereotypes which are supported by this cartridge.
23 * @return List the stereotypes
24 */
25 public List getSupportedStereotypes();
26
27 /***
28 * Returns the property values which are set for this cartridge. Example:
29 * @andromda.persistence="ejb".
30 *
31 * @return List the properties
32 */
33 public Map getProperties();
34
35
36
37
38
39
40
41
42 public List getOutlets();
43
44 /***
45 * Returns the list of templates configured in this cartridge.
46 *
47 * @return List the template lists
48 */
49 public List getTemplateConfigurations();
50
51 /***
52 * Gets the URL where this descriptor data came from.
53 *
54 * @return URL
55 */
56 public URL getDefinitionURL();
57
58 /***
59 * Sets the URL where this descriptor data came from.
60 *
61 * @param url
62 */
63 public void setDefinitionURL(URL url);
64
65 /***
66 * Returns the cartridge class name. This is used by cartridges that have an
67 * own main class (other than DefaultAndroMDACartridge).
68 *
69 * @return String
70 */
71 public String getCartridgeClassName();
72 }