View Javadoc
1   // license-header java merge-point
2   //
3   // Attention: generated code (by Metafacade.vsl) - do not modify!
4   //
5   package org.andromda.metafacades.uml;
6   
7   import java.util.Collection;
8   
9   /**
10   * A representation of the model object 'Instance Specification'. Represents an instance in a
11   * modeled system. Has the capability of being a deployment target in a deployment relationship, in
12   * the case that it is an instance of a node. Has the capability of being a deployed artifact, if it
13   * is an instance of an artifact.
14   *
15   * Metafacade interface to be used by AndroMDA cartridges.
16   */
17  public interface InstanceFacade
18      extends ModelElementFacade
19  {
20      /**
21       * Indicates the metafacade type (used for metafacade mappings).
22       *
23       * @return boolean always <code>true</code>
24       */
25      public boolean isInstanceFacadeMetaType();
26  
27      /**
28       * Returns those slots that map onto attributes.
29       * @return Collection<AttributeLinkFacade>
30       */
31      public Collection<AttributeLinkFacade> getAttributeLinks();
32  
33      /**
34       * A Classifier is a classification of instances - it describes a set of instances that have
35       * features
36       * in common. Can specify a generalization hierarchy by referencing its general classifiers. It
37       * may be
38       * a Class, DataType, PrimitiveType, Association, Collaboration, UseCase, etc. Can specify a
39       * generalization hierarchy by referencing its general classifiers. Has the capability to own
40       * collaboration uses. These collaboration uses link a collaboration with the classifier to give
41       * a
42       * description of the workings of the classifier. Classifier is defined to be a kind of
43       * templateable
44       * element so that a classifier can be parameterized. It is also defined to be a kind of
45       * parameterable
46       * element so that a classifier can be a formal template parameter.
47       * @return Collection<ClassifierFacade>
48       */
49      public Collection<ClassifierFacade> getClassifiers();
50  
51      /**
52       * Those slots that map onto association ends.
53       * @return Collection<LinkEndFacade>
54       */
55      public Collection<LinkEndFacade> getLinkEnds();
56  
57      /**
58       * A representation of the model object 'Instance Specification'. Represents an instance in a
59       * modeled
60       * system. Has the capability of being a deployment target in a deployment relationship, in the
61       * case
62       * that it is an instance of a node. Has the capability of being a deployed artifact, if it is
63       * an
64       * instance of an artifact.
65       * @return Collection<InstanceFacade>
66       */
67      public Collection<InstanceFacade> getOwnedInstances();
68  
69      /**
70       * A representation of the model object 'Instance Specification'. Represents an instance in a
71       * modeled
72       * system. Has the capability of being a deployment target in a deployment relationship, in the
73       * case
74       * that it is an instance of a node. Has the capability of being a deployed artifact, if it is
75       * an
76       * instance of an artifact.
77       * @return Collection<LinkFacade>
78       */
79      public Collection<LinkFacade> getOwnedLinks();
80  
81      /**
82       * All slots for this instance, this includes the ones that map onto attributes and the ones
83       * that map onto association ends. In fact, this feature holds the collection of both
84       * InstanceFacade.attributeLinks and InstanceFacade.linkEnds.
85       * @return Collection<AttributeLinkFacade>
86       */
87      public Collection<AttributeLinkFacade> getSlots();
88  }