/** * <copyright> * </copyright> * * $Id$ */ package BusinessDomainDsl; /** * <!-- begin-user-doc --> * A representation of the model object '<em><b>Association</b></em>'. * <!-- end-user-doc --> * * <p> * The following features are supported: * <ul> * <li>{@link BusinessDomainDsl.Association#getSource <em>Source</em>}</li> * <li>{@link BusinessDomainDsl.Association#getTarget <em>Target</em>}</li> * <li>{@link BusinessDomainDsl.Association#getSourceRoleName <em>Source Role Name</em>}</li> * <li>{@link BusinessDomainDsl.Association#getSourceMultiplicity <em>Source Multiplicity</em>}</li> * <li>{@link BusinessDomainDsl.Association#getTargetRoleName <em>Target Role Name</em>}</li> * <li>{@link BusinessDomainDsl.Association#getTargetMultiplicity <em>Target Multiplicity</em>}</li> * <li>{@link BusinessDomainDsl.Association#isComposite <em>Composite</em>}</li> * <li>{@link BusinessDomainDsl.Association#isBidirectional <em>Bidirectional</em>}</li> * <li>{@link BusinessDomainDsl.Association#isOrdered <em>Ordered</em>}</li> * <li>{@link BusinessDomainDsl.Association#getModel <em>Model</em>}</li> * </ul> * </p> * * @see BusinessDomainDsl.BusinessDomainDslPackage#getAssociation() * @model * @generated */ public interface Association extends ModelElement { /** * Returns the value of the '<em><b>Source</b></em>' reference. * It is bidirectional and its opposite is '{@link BusinessDomainDsl.BusinessClass#getAssociationsTo <em>Associations To</em>}'. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Source</em>' reference isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Source</em>' reference. * @see #setSource(BusinessClass) * @see BusinessDomainDsl.BusinessDomainDslPackage#getAssociation_Source() * @see BusinessDomainDsl.BusinessClass#getAssociationsTo * @model opposite="associationsTo" required="true" * @generated */ BusinessClass getSource(); /** * Sets the value of the '{@link BusinessDomainDsl.Association#getSource <em>Source</em>}' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Source</em>' reference. * @see #getSource() * @generated */ void setSource(BusinessClass value); /** * Returns the value of the '<em><b>Target</b></em>' reference. * It is bidirectional and its opposite is '{@link BusinessDomainDsl.AbstractBusinessClass#getAssociationsFrom <em>Associations From</em>}'. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Target</em>' reference isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Target</em>' reference. * @see #setTarget(AbstractBusinessClass) * @see BusinessDomainDsl.BusinessDomainDslPackage#getAssociation_Target() * @see BusinessDomainDsl.AbstractBusinessClass#getAssociationsFrom * @model opposite="associationsFrom" required="true" * @generated */ AbstractBusinessClass getTarget(); /** * Sets the value of the '{@link BusinessDomainDsl.Association#getTarget <em>Target</em>}' reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Target</em>' reference. * @see #getTarget() * @generated */ void setTarget(AbstractBusinessClass value); /** * Returns the value of the '<em><b>Source Role Name</b></em>' attribute. * The default value is <code>"sourceRoleName"</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Source Role Name</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Source Role Name</em>' attribute. * @see #setSourceRoleName(String) * @see BusinessDomainDsl.BusinessDomainDslPackage#getAssociation_SourceRoleName() * @model default="sourceRoleName" * @generated */ String getSourceRoleName(); /** * Sets the value of the '{@link BusinessDomainDsl.Association#getSourceRoleName <em>Source Role Name</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Source Role Name</em>' attribute. * @see #getSourceRoleName() * @generated */ void setSourceRoleName(String value); /** * Returns the value of the '<em><b>Source Multiplicity</b></em>' attribute. * The default value is <code>"One"</code>. * The literals are from the enumeration {@link BusinessDomainDsl.Multiplicity}. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Source Multiplicity</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Source Multiplicity</em>' attribute. * @see BusinessDomainDsl.Multiplicity * @see #setSourceMultiplicity(Multiplicity) * @see BusinessDomainDsl.BusinessDomainDslPackage#getAssociation_SourceMultiplicity() * @model default="One" * @generated */ Multiplicity getSourceMultiplicity(); /** * Sets the value of the '{@link BusinessDomainDsl.Association#getSourceMultiplicity <em>Source Multiplicity</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Source Multiplicity</em>' attribute. * @see BusinessDomainDsl.Multiplicity * @see #getSourceMultiplicity() * @generated */ void setSourceMultiplicity(Multiplicity value); /** * Returns the value of the '<em><b>Target Role Name</b></em>' attribute. * The default value is <code>"targetRoleName"</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Target Role Name</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Target Role Name</em>' attribute. * @see #setTargetRoleName(String) * @see BusinessDomainDsl.BusinessDomainDslPackage#getAssociation_TargetRoleName() * @model default="targetRoleName" * @generated */ String getTargetRoleName(); /** * Sets the value of the '{@link BusinessDomainDsl.Association#getTargetRoleName <em>Target Role Name</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Target Role Name</em>' attribute. * @see #getTargetRoleName() * @generated */ void setTargetRoleName(String value); /** * Returns the value of the '<em><b>Target Multiplicity</b></em>' attribute. * The default value is <code>"1"</code>. * The literals are from the enumeration {@link BusinessDomainDsl.Multiplicity}. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Target Multiplicity</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Target Multiplicity</em>' attribute. * @see BusinessDomainDsl.Multiplicity * @see #setTargetMultiplicity(Multiplicity) * @see BusinessDomainDsl.BusinessDomainDslPackage#getAssociation_TargetMultiplicity() * @model default="1" * @generated */ Multiplicity getTargetMultiplicity(); /** * Sets the value of the '{@link BusinessDomainDsl.Association#getTargetMultiplicity <em>Target Multiplicity</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Target Multiplicity</em>' attribute. * @see BusinessDomainDsl.Multiplicity * @see #getTargetMultiplicity() * @generated */ void setTargetMultiplicity(Multiplicity value); /** * Returns the value of the '<em><b>Composite</b></em>' attribute. * The default value is <code>"false"</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Composite</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Composite</em>' attribute. * @see #setComposite(boolean) * @see BusinessDomainDsl.BusinessDomainDslPackage#getAssociation_Composite() * @model default="false" * @generated */ boolean isComposite(); /** * Sets the value of the '{@link BusinessDomainDsl.Association#isComposite <em>Composite</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Composite</em>' attribute. * @see #isComposite() * @generated */ void setComposite(boolean value); /** * Returns the value of the '<em><b>Bidirectional</b></em>' attribute. * The default value is <code>"false"</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Bidirectional</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Bidirectional</em>' attribute. * @see #setBidirectional(boolean) * @see BusinessDomainDsl.BusinessDomainDslPackage#getAssociation_Bidirectional() * @model default="false" required="true" * @generated */ boolean isBidirectional(); /** * Sets the value of the '{@link BusinessDomainDsl.Association#isBidirectional <em>Bidirectional</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Bidirectional</em>' attribute. * @see #isBidirectional() * @generated */ void setBidirectional(boolean value); /** * Returns the value of the '<em><b>Ordered</b></em>' attribute. * The default value is <code>"false"</code>. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Ordered</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Ordered</em>' attribute. * @see #setOrdered(boolean) * @see BusinessDomainDsl.BusinessDomainDslPackage#getAssociation_Ordered() * @model default="false" required="true" * @generated */ boolean isOrdered(); /** * Sets the value of the '{@link BusinessDomainDsl.Association#isOrdered <em>Ordered</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Ordered</em>' attribute. * @see #isOrdered() * @generated */ void setOrdered(boolean value); /** * Returns the value of the '<em><b>Model</b></em>' container reference. * It is bidirectional and its opposite is '{@link BusinessDomainDsl.BusinessDomainModel#getAssociations <em>Associations</em>}'. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Model</em>' container reference isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Model</em>' container reference. * @see #setModel(BusinessDomainModel) * @see BusinessDomainDsl.BusinessDomainDslPackage#getAssociation_Model() * @see BusinessDomainDsl.BusinessDomainModel#getAssociations * @model opposite="associations" transient="false" * @generated */ BusinessDomainModel getModel(); /** * Sets the value of the '{@link BusinessDomainDsl.Association#getModel <em>Model</em>}' container reference. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Model</em>' container reference. * @see #getModel() * @generated */ void setModel(BusinessDomainModel value); } // Association