1 package org.ocltf.model;
2
3 import java.util.Collection;
4
5 /***
6 * Specifies a "facade" for an underlying classifier.
7 *
8 * @author Chad Brandon
9 */
10 public interface ClassifierFacade extends ElementFacade {
11
12 /***
13 * Gets the operations of the underlying classifier.
14 *
15 * @return Collection of OperationFacade objects
16 */
17 public Collection getOperations();
18
19 /***
20 * Returns a Collection of AttributeFacade
21 * instances for the attributes of the underlying classifier.
22 *
23 *@return Collection of attributes
24 */
25 public Collection getAttributes();
26
27 /***
28 * Returns the AttributeFacade for the FIRST attribute
29 * found on the the underyling classifier that has
30 * the specified name.
31 *
32 *@param name the name of the attribute to find.
33 * @return AttributeFacade the found attribute or null if
34 * non could be found.
35 */
36 public AttributeFacade findAttribute(String name);
37
38 /***
39 * Gets the association end objects that are attached the
40 * underlying classifier object.
41 *
42 *@return Collection of AssociationEnd objects
43 */
44 public Collection getAssociationEnds();
45
46 /***
47 * Gets all connecting association end objects that are attached the
48 * underlying classifier object.
49 *
50 *@return Collection of AssociationEnd objects
51 */
52 public Collection getConnectingAssociationEnds();
53
54 /***
55 * Finds the associationEnd that has a connectingEnd
56 * with the specified <code>name</code>, returns null if one can not be found.
57 *
58 *@param name the name of the connectingEnd.
59 *@return AssociationEndFacade the found association end or null if
60 * none could be found.
61 */
62 public AssociationEndFacade findConnectingAssociationEnd(String name);
63
64 }