1 package org.ocltf.model;
2
3 import java.util.Collection;
4
5 /***
6 * Specifies a "facade" for a model element. Provides
7 * information about the model element.
8 *
9 * @author Chad Brandon
10 */
11 public interface ElementFacade {
12
13 /***
14 * Gets the id for the underlying model element
15 *
16 * @return String the ID as a String.
17 */
18 public String getId();
19
20 /***
21 * Gets the type of the underlying model element.
22 *
23 * @return ClassifierFacade
24 */
25 public ClassifierFacade getType();
26
27 /***
28 * Returns the Collection of GeneralizationFacade
29 * instances.
30 *
31 * @return Collection of generalizations
32 */
33 public Collection getGeneralizations();
34
35 /***
36 * Searches for and returns the value of a given tag on
37 * the underlying model element.
38 *
39 * @param tagName the name of the tag to find.
40 * @return String value of tag, <b>null</b> if tag not found
41 */
42 public String findTagValue(String tagName);
43
44 /***
45 * Retrieves the Collection of TaggedValueFacades belonging
46 * to the underlying model element.
47 *
48 * @return Collection of tagged values.
49 */
50 public Collection getTaggedValues();
51
52 /***
53 * Returns the fully qualified name of the given
54 * model element. The fully qualified name includes
55 * complete package qualified name of the underlying model element.
56 *
57 * @return String fully qualified name.
58 */
59 public String getFullyQualifiedName();
60
61 /***
62 * Returns the Collection of ConstraintFacade
63 * instances.
64 *
65 * @return Collection with found constraints (if any)
66 */
67 public Collection getConstraints();
68
69 /***
70 * Returns the name of the package name of
71 * the underlying model element.
72 *
73 *@return fully qualified name of the package
74 */
75 public String getPackageName();
76
77 /***
78 * Retrieves the name of the underlying
79 * model element.
80 *
81 * @return String the name.
82 */
83 public String getName();
84
85 /***
86 * Retrieves all stereo type names belonging
87 * to the underlying model element.
88 * @return
89 */
90 public Collection getStereotypeNames();
91
92 /***
93 * Searches for and returns the value of a constraint
94 * having the specified name on this model element
95 *
96 * @param name - constraint name
97 * @return Constraint
98 */
99 public ConstraintFacade findConstraint(String name);
100
101 }