1 // license-header java merge-point
2 //
3 // Attention: generated code (by Metafacade.vsl) - do not modify!
4 //
5 package org.andromda.cartridges.meta.metafacades;
6
7 import org.andromda.metafacades.uml.ClassifierFacade;
8
9 /**
10 * Represents a class in the PSM metamodel which the cartridge writer has in mind. Metafacade
11 * operations in other metafacades will return instances of PSM metaclasses. Code for these
12 * metaclasses is generated by a template which is associated with the PSMmetaclass metafacade.
13 *
14 * Metafacade interface to be used by AndroMDA cartridges.
15 */
16 public interface PSMmetaclass
17 extends ClassifierFacade
18 {
19 /**
20 * Indicates the metafacade type (used for metafacade mappings).
21 *
22 * @return boolean always <code>true</code>
23 */
24 public boolean isPSMmetaclassMetaType();
25
26 /**
27 * TODO: Model Documentation for
28 * org.andromda.cartridges.meta.metafacades.PSMmetaclass.implMustBeAbstract
29 * @return boolean
30 */
31 public boolean isImplMustBeAbstract();
32
33 /**
34 * Indicates whether the class has operations or not. Used to trigger a template for
35 * implementation classes.
36 * @return boolean
37 */
38 public boolean isOperationsPresent();
39 }