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 }