package org.eclipse.modisco.kdm.core; import java.util.HashSet; import java.util.Set; import javax.persistence.CascadeType; import javax.persistence.Entity; import javax.persistence.ManyToMany; import javax.persistence.OneToMany; import org.eclipse.emf.texo.test.TexoTestObjectConverter; import org.eclipse.emf.texo.test.TexoTestQNameConverter; import org.eclipse.modisco.kdm.kdm.ExtendedValue; import org.eclipse.modisco.kdm.kdm.Stereotype; import org.eclipse.persistence.annotations.Converter; import org.eclipse.persistence.annotations.Converters; /** * A representation of the model object '<em><b>ModelElement</b></em>'. <!-- begin-user-doc --> <!-- end-user-doc --> * <!-- begin-model-doc --> A model element is an element that represents some aspect of the existing system. In the * meta-model, a ModelElement is the base for all meta-elements of KDM. All other meta-elements are either direct or * indirect subclasses of ModelElement. ModelElement is an abstract meta-model element. A ModelElement can be extended * through the lightweight extension mechanism. <!-- end-model-doc --> * * @generated */ @Entity(name = "core_ModelElement") @Converters({ @Converter(converterClass = TexoTestObjectConverter.class, name = "TexoTestObjectConverter"), @Converter(converterClass = TexoTestQNameConverter.class, name = "TexoTestQNameConverter") }) public abstract class ModelElement extends Element { /** * <!-- begin-user-doc --> <!-- end-user-doc --> <!-- begin-model-doc --> The set of stereotype applied to current * element. <!-- end-model-doc --> * * @generated */ @ManyToMany(cascade = { CascadeType.MERGE, CascadeType.PERSIST, CascadeType.REFRESH }) private Set<Stereotype> stereotype = new HashSet<Stereotype>(); /** * <!-- begin-user-doc --> <!-- end-user-doc --> <!-- begin-model-doc --> The set of tagged values determined by the * stereotype. <!-- end-model-doc --> * * @generated */ @OneToMany(cascade = { CascadeType.ALL }) private Set<ExtendedValue> taggedValue = new HashSet<ExtendedValue>(); /** * Returns the value of '<em><b>stereotype</b></em>' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> <!-- begin-model-doc --> The set of stereotype applied to current * element. <!-- end-model-doc --> * * @return the value of '<em><b>stereotype</b></em>' feature * @generated */ public Set<Stereotype> getStereotype() { return stereotype; } /** * Sets the '{@link ModelElement#getStereotype() <em>stereotype</em>}' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> <!-- begin-model-doc --> The set of stereotype applied to current * element. <!-- end-model-doc --> * * @param newStereotype * the new value of the '{@link ModelElement#getStereotype() stereotype}' feature. * @generated */ public void setStereotype(Set<Stereotype> newStereotype) { stereotype = newStereotype; } /** * Returns the value of '<em><b>taggedValue</b></em>' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> <!-- begin-model-doc --> The set of tagged values determined by the * stereotype. <!-- end-model-doc --> * * @return the value of '<em><b>taggedValue</b></em>' feature * @generated */ public Set<ExtendedValue> getTaggedValue() { return taggedValue; } /** * Sets the '{@link ModelElement#getTaggedValue() <em>taggedValue</em>}' feature. * * <!-- begin-user-doc --> <!-- end-user-doc --> <!-- begin-model-doc --> The set of tagged values determined by the * stereotype. <!-- end-model-doc --> * * @param newTaggedValue * the new value of the '{@link ModelElement#getTaggedValue() taggedValue}' feature. * @generated */ public void setTaggedValue(Set<ExtendedValue> newTaggedValue) { taggedValue = newTaggedValue; } /** * A toString method which prints the values of all EAttributes of this instance. <!-- begin-user-doc --> <!-- * end-user-doc --> * * @generated */ @Override public String toString() { return "ModelElement " + "{extends: " + super.toString() + "} "; } }