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 }